Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

Telephone Keypad Scanner

  • Last Updated : 13 Feb, 2020

A telephone keypad is designed using a PLD(Programmable Logic Device).
The keypad is wired in a matrix form with a switch at the intersection of each row and column. The purpose of this keypad scanner is to determine which has been pressed and output a binary number N=N3 N2 N1 N0 which corresponds to the key number. For example: Pressing the key ‘5’ will give the output 0101, Pressing ‘*’ key will give 1010 as the output.

Whenever a valid key is detected, the scanner should output a signal V for on clock time T. Assuming one key is pressed at a time, resistors and ground are connected to each row of the keyboard so that R1=R2=R3=R4=0 when no key is pressed.

  1. Apply logic 1 to columnsC0, C1, C2 and wait.
  2. If any key is pressed, logic 1 will appear on corresponding resistor-R0, R1, R2 or R3.
  3. Apply a logic 1 to column C0 only. If any of Resistors is 1, a valid key is detected. Set V=1 and the output is the corresponding N.
  4. If no key is detected in the first column, apply a 1 to C1 and repeat. Repeat for C2 if no key is detected in the second column.
  5. When a valid key is detected, apply 1s to C0, C1, C2 and wait until no key is pressed.
    In the process of scanning a keyboard to determine which key is pressed, the scanner must take “Contact Bounce” into account. When the mechanical switch is opened or closed, the switch contact will bounce, causing noise to switch output.
  6. Thus the output signal indicates that the key press must be synchronized with the clock.
    Thus for a debouncing circuit, Clock Period > Bounce time.

The logic equations for the decoder are:

N3 = R2(C0)' + R3(C1)'
N2 = R1 + R2CO
N1 = R0(C0)' + (R2)'C2 + (R1)'(R0)'(C0)
N0 = R1C1 + (R1)'C2 + (R3)'(R1)'(C1)'

Learn CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.


My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!