Interface multiple keys with one wire and save pins of MCU

Posted on Feb 7, 2014

Usually keyboard is connected by using matrix type of connection a‚ rows and columns. For instance for 12 button keyboard wee need 3 4 digital inputs of microcontroller. There is a way to build keyboard and connect to microcontroller using only one wire. For this we will need only signal wire, power and ground and of course microcontroller must

Interface multiple keys with one wire and save pins of MCU
Click here to download the full size of the above Circuit.

have analog ADC input. One wire keypad circuit: Circuit is nothing more than simples digital to analog converter. Microcontroller reads voltage from signal line and calculates which key is pressed. Lets see how it works. If no any of keys have been pressed, then line has voltage equal to power source. If any key is pressed, voltage divider divides the voltage according to resistor connected to this button. Capacitor works as filter of mechanical noise during button contact. This way microcontroller can check the voltage of signal line and calculate which button is pressed. How to choose resistors For this first we have to select pull up resistor first. In this example is 10kOm. Some ADC may require lower input resistance to maintain desired conversion speed. But if you want to make really low power application, you can increase pull-up resistance and decrease conversion speed. Further we have to divide voltage in even intervals with keyboard resistors. If B size of interval, K a‚ number of keys, N a‚ number of ADC bits, then: B=2N/K. If ADC resolution is 10 bit and wee have 8 keys, so wee will have B=1024/8=128 voltage steps for one interval. As key value is in the middle of interval then its value will be: XK=KB B/2. Resistor values needed for each key: RK=(XKR1)(2N-XK). This is why first resistor has value of 667Ohm, second 23080Ohm and so on. Closes values are displayed in schematic. In this case for 8 keys minimal...

Leave Comment

characters left:

New Circuits



Popular Circuits

200 watt Audio amplifier with STK4050
Solar Charger circuits
Dc lamp dimmer
two-tone generator
Water-Level Control
electronic liquid detector circuit
Diodes for crystal receivers
LMV1090 Dual Input Far Field Noise Suppression Microphone Amplifier
LM 3875
Quartz Crystals
ISO103 gain adjustment circuit diagram