The goal of project is to build M16C powered access control system that could be used as a stand alone locking solution for remote installations or locations where cost of installation was a major constraint. The security system solution consists of an industry standard proximity card reader interfaced to an M16C62P microcontroller. The locking mechanism was a magnetic door lock. The system is programmed using an RS-232 interface, either through a custom Java UI or a standard terminal window.
The M16C Access Control System works by controlling access to a door based on proximity cards. Each card has an 8 bit facility ID, 16 bits of card ID data, and 2 bits for parity. A table in the memory of the control unit links these card IDs with group IDs. A group contains access data including the time of day and days of the week that members of that group have access to the door. A card can be entered multiple times with different groups to better customize access. In addition to normal groups, a holiday group can be specified. A holiday associates a group with a date and gives them special access privileges on that date. This allows the door to be locked during ‘normal’ access hours but still allow certain people access. A card ID of zero is an over ride and can force the door to be unlocked during the hours specified by the group associated with that card.