节能的双线、4×4按键键盘接口
可以用带有 ADC 的微控制器设计一个双线加接地组成的键盘接口。例如,可以用一个电阻分压器判定一个按下的键(参考文献 1)。微控制器的整合 ADC, 其输入电阻一般在数百千欧量级,为了有足够的精度,键盘分压器应该具有相对较低电阻值,一般为数十千欧量级。但是,在电池供电系统中,电阻分压器会消耗数百毫安电流,这迫使设计者选择经典的数字矩阵开关和多条 I/O 线作替代。此外,便携设备设计通常也限制了元件的数量。

为满足这两个要求,图 1 中的电路采用了一个矩阵键盘和一个分为两行、两列的电阻网络。对于 4 X 4 按键的键盘,7 只电阻器就足以为所有按键编码,电路只在一个键保持闭合时消耗能量。而当没有按下任何按键时,待机电流近似为零。只用到两种阻值的电阻器,使 RA=RB=RC=R1和RD=RE=RF=RG=R2。为按键的x和y地址设定从0 ~ 3的值,通过解算下式,可以计算出任何键闭合时电阻器RG上的电压:
![]()
![]()
不妙的是,标准值元件的标称容限 T 不能为此式提供理想的解决方案。于是,可以计算出最差情况下的分隔比率差:d=r(3,2)-r(3,3)。d 的最小值出现在RG与RD最小值和RA、RB、RC、RE与RF最大值时。你可以计算所有电阻器阻值,并为R1和R2的标称值定义一个通用比率p:
![]()
相同的T值适用于所有电阻器。如果n=8及p=4,前式可算出结果为 T<0.018,表示±1%公差的电阻器可以正确完成16个键的编码。另外,如果你现在使用固定公差T,可以从式中算出R1和R2值之间对p比率 所要求的极限。如果T=0.01,则该公式计算出的结果变为p<4.074。



注意有10位ADC的微控制器(如Freescale的MC68HC908QB或Texas Instruments MSP430F11)可以用在10个电阻器编码的5 X 6键盘矩阵。重复上述分析可得到,行列p比率为5 ~ 5.51,所需电阻器公差低于4.3%,即可正确完成按键编码。R1和R2都可以从±1%公差的E48 系列中选取,R1选10 kΩ,R2则选51.1 kΩ或53.6 kΩ。
参考文献
1. Amorim, Vitor, and J Simoes, "ADC circuit optimizes key encoding," EDN, Feb 4, 1999, pg 101, www.edn.com/article/CA56657.
本文来源:电子设计技术 作者:Stefano Salvatori
关于 微控制器 的相关解决方案
- 2008-07-23英飞凌PMA7110 FSK RF发送方案
- 2008-07-16MPC555微控制器与汽车电子
- 2008-06-13基于微控制器MSC1210的CSR电源控制系统设计
- 2008-06-05利用基于闪存的MCU实现用户数据存储
- 2008-05-30基于FAT16文件系统的嵌入式温度记录器
微控制器 相关产品动态
- 2008-07-24英飞凌推出搭载集成8位微控制器的单片多频带UHF发射器系列
- 2008-07-11HOLTEK推出内建UART的A/D型微控制器HT46RU26
- 2008-07-10HOLTEK半导体推出八位电话通信产品微控制器HT95R23/33
- 2008-07-09HOLTEK推出新款八位10-Pin微控制器HT48R01A/HT46R01A
- 2008-07-04爱特梅尔获ARM Cortex-M3授权并推出AT91SAM3闪存微控制器系列

