现在做一个触摸按键,总有问题存在,大家有好的方法吗~ 原理是用AD采集按键,一路AD采集一个,按键按下的时候AD口的电压会发生0.2V的变化,每个按键对应的电压的变化不一定相同,没有键按下的时候电压也不是完全相同。 我现在的方法是每次都采集AD值,碰到大值的时候就更新没有键盘按下的AD缓冲,用这个来作为标准,作为没有键按下的标志。如果采集到的值与最大值相差一定的数,就说明有键按下,按键有效。 但是如果遇到干扰,比如这次采集的AD值非常大,比如来了一个5V的干扰,更新了最大值寄存器,这样以后每次采集的时候都比这个最大值差太多,就一直认为有键按下,这样键盘就死掉了,实际应用中的确有这种情况,只有重起才行了,很头疼,大家有没有好点的处理方法,能够避免这种情况呢,请指点 |