用一个按键通过INT0中断计数,如何防抖?

2019-03-24 20:43发布

用INT0中断,用一个按键计数(即按一下键,中断一次,数字加1),然后根据计数器的值去完成不同的任务。但发现有时会连跳几个数,显然是按键抖动造成的,请教在INT0中,如何防抖?

interrupt [EXT_INT0] void ext_int0_isr(void)
{

   ID++;   
}

if (ID==1)
   {任务1}
else if(ID==2)
   {任务2}
else if(ID==3)
   {任务3}
。。。。
知道的请指教,非常感谢。 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
IC爬虫
1楼-- · 2019-03-24 23:53
进入中断就先把这个中断先关了,执行完程序再开启。
neotecs
2楼-- · 2019-03-25 00:35
这个还得请教大虾。进鼎光电液晶拼接屏只是做拼接屏的喔
仙猫
3楼-- · 2019-03-25 01:06
 精彩回答 2  元偷偷看……
youimisss
4楼-- · 2019-03-25 05:52
硬件上可以在按键上并一个104电容,软件上可以一旦进入中断就关闭,执行完后再开启

一周热门 更多>