Digital Code lock using AT89C2051

Here is a project called ‘Digital Code Lock using AT89C2051’. LCD is used for display and a keyboard is used to input  the keys. This project source code is written in C. Both the C files and hex files are given for download.

A Brief Description:

This a simple project with efficient hacking prevention from Brute Force etc. The basic user lock is of 5 Digits and Master Lock is of 10 digits so its not easy for an intruder to break the lock unless you keep the code simple.

The input is taken from a 4×3 Keypad (please see the schematic for more information) and Display the user input on a 2×16 LCD. A pin is assigned as output for activating and deactivating the lock. For demonstration i have connected an LED to that pin.

From user side:
The user has two options either he/she can use its own 5 digit code or use the default 5 digit code. If user has to do setup his own code, then he has to enter “12345” and press ‘#’. After this.. controller will ask for 10 Digit master password which is preprogrammed in the controller. Entering master lock, user can enter the new 5 digit code for the lock and press ‘#’ to save it.

Using the Keypad:
Keypad has 12 keys (4×3) starting from 1,2,3,4,5,6,7,8,9,*,0,# (please see the schematic for layout). Numeric keys are used for entering numbers. ‘*’ is used as the Cancel key and ‘#’ is used as the Enter key.

Circuit Diagram:

Circuit diagram of Digital Code lock using AT89C2051
Circuit diagram of Digital Code lock using AT89C2051

Download File Information:

  1. LCD.C – 4-Bit LCD Drivers
  2. LCD.H – LCD function prototypes and other declerations
  3. Lock.C – code for lock functioning
  4. LOCK.H – lock function declarations
  5. KEYPAD.C – Keypad drivers
  6. KEYPAD.H – Function declarations
  7. DELAY.C – Delay Functions
  8. DELAY.H – Function Prototypes only
  9. MAIN.C – Main function!
  10. Digital Code Lock Schematic – PDF file of orcad schematic

Download the source codes by clicking here

By Ajay Bhargav

41 Responses to “Digital Code lock using AT89C2051”

Leave a Reply