让找料更便捷
电子元器件
采购信息平台
生意随身带
随时随地找货
一站式电子元器件
采购平台
半导体行业观察第一站
标签:
摘要: 传统的教科书,无一例外都是采用delay的方法检测按键,但是这种方法有很多缺陷,今天发一贴说说,各位大侠不要见笑,初级菜鸟可以借鉴。传统的处理方法:在第一次检测到有键按下时,执行一段延时 10ms 的子程序以后再确认该按键电平是否能保持闭合状态的电平,如果保持闭合状态电平,则确认为真正有键按下,从而消除抖动的影响.缺点:1. 传统的处理方法执行 10ms 的延时子程序,会降低程序的实时性。2. 传
传统的教科书,无一例外都是采用delay的方法检测按键,但是这种方法有很多缺陷,今天发一贴说说,各位大侠不要见笑,初级菜鸟可以借鉴。
传统的处理方法:在第一次检测到有键按下时,执行一段延时 10ms 的子程序以后再确认该按键电平是否能保持闭合状态的电平,如果保持闭合状态电平,则确认为真正有键按下,从而消除抖动的影响.
缺点:
1. 传统的处理方法执行 10ms 的延时子程序,会降低程序的实时性。
2. 传统的处理方法一次按键动作的确认,只检测两次,在高抗干扰环境下的会有按键的误动作。
建议:
1. 建议弹跳时间为 100ms 才可有效通过 EFT 杂讯认证。
2. 建议主程序中连续检查 100ms 的稳定低电平才可认定按键按下成立。
3. 相同道理连续检查 100ms 高电平才可认定按键弹起。
4. 为了保证 MCU 的执行效率,按键的检测尽量不要使用 Delay 的方式,可以考虑采用轮询检测和计时器配合的方式进行。
方法如下:
在发现低电平后,我们每一个循环(时基)去读取一次电平,并与上次进行比较,若是相同则计数器加 1,直至达到足够的次数就进行处理,否则计数器清零,重新开始。
型号 | 厂商 | 价格 |
---|---|---|
EPCOS | 爱普科斯 | / |
STM32F103RCT6 | ST | ¥461.23 |
STM32F103C8T6 | ST | ¥84 |
STM32F103VET6 | ST | ¥426.57 |
STM32F103RET6 | ST | ¥780.82 |
STM8S003F3P6 | ST | ¥10.62 |
STM32F103VCT6 | ST | ¥275.84 |
STM32F103CBT6 | ST | ¥130.66 |
STM32F030C8T6 | ST | ¥18.11 |
N76E003AT20 | NUVOTON | ¥9.67 |