Enter the correct code into the keypad and the servo will unlock the door. Enter the incorrect code and Sorry you stay out.
There was a couple of stipulations i wanted in my Keyless Entry system:
- Helper Light. A light that would come on whenever a key was pressed. Then off after the preset time limit.
- An override switch so the servo could be operated without the keypad.
- Some indication that the pass code entered was correct or not.
- Powered by a wall charger.
- Be able to operate manually during a power outage
The Keypad works on a matrix system. Pressing any key will involve 2 wires.
Example if you press number 8 it will effect the wire ROW3 and CLO2. By this the micro controller can determine what key was pressed with only 7 wires from the keypad.
While this keypad schematic is not correct to this build the theory is still the same.
This build does not use the external resistors. It takes advantage of the internal pullup resistors in the Atmega328.
Keypad in Arduino Playground.
Step 1: What we are going to need
- Atmega328P-UP Bootloaded
- 28 Pin socket
- 16Mhz Crystal
- 22pF caps ( 2 )
- LM317 voltage regulator
- LM7805 Voltage regulator
- 10uF Caps ( 2 )
- #104 Caps ( 2 )
- 220R Resistor
- 1K Resistor
- 470R Resistor
- 10K Resistor
- LED of your choice
- Tact Switch
- 5mm Power Connector
- 2 pin female header
- 16 Pin Female header
- Perf Board 70mm x 90mm
- Flat wire strips 2 wire 4 wire 7 wire 1' long
I would call this a intermittent build as there is several sub build components.
Step 2: The Circuit
Its probably better to use a pullup resistor on the switch instead of a pull down, but either way will work.