本文主要是介绍浅析五向按键的硬件设计思想,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
五向按键简介
五向键是一种多功能按键,除了具备普通按键的PUSH功能外,他还具备四个朝向的指向。因为他具备了五种按键动作,故名五向键!
它有6个引脚,其中一只引脚是公共端,一般是第5脚,而和第5脚对称的是第2脚,第2脚就代表了PUSH功能。按键正上面有一个三角缺口,代表着按键的一种朝向关系。对于封装设计者要对此内容特别注意。
不过好在立创商城已经绘制好了封装,可以很方便的知道各个引脚的走向。根据摆放关系,稍加旋转就能找出上下左右和引脚的对应关系。
五向按键原理图分析
下面这张图纸采用了CC2541开发板的一种五向键原理,这个也是我今天重点想分析的电路。
输出电压电路分析
为了方便分析,首先对此原理图做一下变型,因为LTspice中没加入LM258D,所以用AD8032暂时替代。这个电路主要应用了运放的虚接虚短原理和基尔霍夫电流定律,就能一步步的推导出不同按键按下时候VO的输出值。
具体分析过程:
第一步: 求参考点电位1。
根据分压原理,很容易计算出1点电位1.03V,那么根据运放虚短,所以正相输入引脚电位1.03V。
第二步:求运放2点的电位。
现在是UP按下,所以Up与VCC接通,R6两端的压差为3.3-1.03=2.27V,那么流过R6的电流预计22.7uA。其他之路电流关系如下,R6支路已经求出,那么R7,R8,R9之路很容易计算出总电流
I支=3.54+2.125+1.398=7.063uA;根据流入电流等于流出电流,那么R12和R13合并的电流应该为
(22.7uA-7.063uA)=15.637uA,进一步可以推导出压降为0.7818,所以2点电位=1.03-0.7818=0.248V
第二步:求运放3点的电位。
(0.248/47)*67=0.353V,与设计仿真结果相差30mV。因为这个实际仿真中用到的器件模型并不是理想模型,他计算出来的1点电位是1.06V,R12两端的压降是0.7882V,所以2点电位是0.2718V(1.06V-0.7882V),根据这个值推导出3点电位是0.38V.
举一反三,DN,LT,RT 三个方向按下时候,也能求出一个固定的数值。 这样运放加电阻网络的电路实现了不同按键不同的输出电压效果。
中断电路分析
上图是一个或门电路,实现的效果就是见1则1,这些电位都是100K电阻拉低,当有按键按下后,电位与3.3V接通,所以是逻辑1,这样P2.0有一个从0到1的跳变过程,MCU发生中断,之后调用ADC读取此时的ADC电压,这样就可以实现了中断加ADC的多个按键判断。好处是ADC可以不用实时轮询,节省CPU开支,同时也能节省设备的功耗。 缺点是器件多,成本高。
但是这种电路还有另外一个变型,是馒头科技设计的一个电路。
这个电路Vref的电位是0.33V,其他按键按下的电压通过LMV358的一路运放用作电压跟随器与ADC相连,另一路运放作为比较器使用,也能实现JOY_CHK的0到1的跳变。挺巧秒的。
这篇关于浅析五向按键的硬件设计思想的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!