3. Components required
4. Programming for AT89C51 microcontroller
6.Results and future implementations.
Keyboard is one of the best input device now a days. From very
ancient time keyboard was used to get proper input in the
Interfacing microcontroller with keyboard makes it faultless and
make input rate faster. Whether the input is any numeric or any
alphabet microcontroller breaks those input into hex code and
with the help of lookup table and proper programming language
it helps to give a prompt input from the users.
1.Christopher Latham Sholes invented the modern QWERTY keyboard in
2.Herman Hollerith developed the first keypunch devices
3.In the 1930's electric typewriters were invented.
4.In 1936, August Dvorak patented a new layout to Dvorak keyboard.
5.Personal Computers keyboard in 1970's
6.XPeRT is a keyboard Built in 2003 for Speed ..... AND ...... easy
transition from Qwerty.
About Our Work
1.Matrix keypads are well known for their simple architecture.
2.Interfacing a hex keypad to 8051 microcontroller. To build this project
we use Hex keypad, a 8051 microcontroller, display it in 7 segment
3.Here we are using AT89C51.we can also use any number of seven
segment display or LCD module where encoder and multiplexer is
designing of the basic keyboard.
1.Hex keypad,16 key-from 0 to 9 and A to F
2.Matrix form is required to reduce the pin count in
Construction of Hexkeypad
To Detect A Key
Two Approaches 1.column scanning
We are using column scanning.
Making each row 1 and others 0 and then scan the each column
If any switch pressed corresponding column's sense value is 0
The pressed switch make the corresponding column and row shorted.
Tow scanning is just the opposite of the column scanning technique.
4 KB of on-chip program memory
128 bytes of on-chip data RAM
Four ports of eight bits each
Two 16-bit timers
Full duplex serial port
On-chip clock oscillator
The 7-segment Display:-
diodes require positive voltage
diodes require negative voltage
Both works in forward bias
Programming should be done
according to the diode we use in
1.17 piece tact switch
2.eight 330 ohm registers
3.one 8.2 KΩ register
4.11.0592 crystal oscillator.
5.33 pf capacitor.
6.10 mf capacitor.
7.5 volt power supply.
1. 16 tact switch and 1 for reset
2. Control the current in seven
3. Use to create the time constant
4. Use to create the clock
5. Use in clock generation
6. For time constant purpose
7. To give life to the arrangement
MOV DPTR,#LUT //
moves starting address
of LUT to DPTR
MOV A,#11111111B //
loads A with all 1's
initializes P0 as output
loads P1 with all 1's
CLR P1.0 // makes
row 1 low
JB P1.4,NEXT1 //
column 1 is low and
jumps to NEXT1 if not
MOV A,#0D // loads a with 0D if column is low (that means key 1 is pressed)
ACALL DISPLAY // calls DISPLAY subroutine
NEXT1:JB P1.5,NEXT2 // checks whether column 2 is low and so on...
DISPLAY:MOVC A,@A+DPTR // gets digit drive
pattern for the current key from LUT
MOV P0,A // puts corresponding digit
drive pattern into P0
LUT: DB 01100000B // Look up table starts
Switch contacts do not come to rest
immediately after pressing.
Processor sense multible key press due to
multiple pulse generation.
A human can not press and release a key in
less than 20 ms.
Debouncing problem solution:
Other Problems We Faced
The voltage directly goes to the seven segment display.
The voltage in the two legs of crystal oscillator is totally
different from the college kit.
Soldering is not up to the mark according to mriganka sir.
We burn the seven segment display twice giving 5v directly
Burned the program in different pin in the microcontroller.
We tried lots of coding or program for the hexkeypad.
Result & Future Work
Here we can use LCD module
instead of seven segment
Here we can perform and
display various operations like
multiplication and division.
Multiple Display Device:
Here we can use multiple seven segment display.
It can be used to display 2-digit numbers.
That brings us to the similar but
significantly older idea of projection
keyboards, which do exactly that: project a
virtual keyboard onto a surface and track
your finger movements as you type.
Depending on configuration, projection
keyboards typically use a combination of
lasers, sensors, and infrared beams to
replicate a traditional QWERTY keyboard
on a flat surface.
The idea is to optimize portability by
providing a full-size keyboard for mobile
devices, while at the same time
eliminating the pesky tradition of, you
know, physical matter. (You can get
projection pianos too, by the way.) It's all
well and good, and the technology is
improving every year. But surely we can all
agree that the concept reached its zenith
with the frankly awesome
R2-D2 Virtual Keyboard.