求教下下降沿触发中断的原理

[复制链接]
7762|8
 楼主| lastnight1034 发表于 2012-6-12 19:48 | 显示全部楼层 |阅读模式
最近使用外部中断时发现,当我把按键接到外部中断口并设置成下降沿触发,按一次按键会多次进中断。以下是我的理解,下降沿触发是不是一定时间内电压降一定量就判断为下降沿触发。假设为0.5V,那么我系统用3.3V供电,那么就有可能最多出现6次中断,而一次按键时间对于频率高的系统来说实在太长了。有没有办法避免还有我的理解对否?
wangyy608 发表于 2012-6-12 19:53 | 显示全部楼层
这个是由于按键在闭合的过程中有个“不稳定的过程”(抖动),而不是中断的原因
 楼主| lastnight1034 发表于 2012-6-12 20:04 | 显示全部楼层
这样啊,那明天拿个单片机试下电平从1变0的效果,并个电容验证下
ayb_ice 发表于 2012-6-13 09:55 | 显示全部楼层
干这行的,人人都知道是怎么回事
原野之狼 发表于 2012-6-13 10:12 | 显示全部楼层
还是采用键盘扫描的方法来做吧
wukunshan 发表于 2012-6-13 14:28 | 显示全部楼层
你的理解不对。下降沿触发是指从高电平跃变为低电平的那个瞬间才会触发,其他情况下,如一直保持高电平或低电平,或者是由低电平跃变为高电平(上升沿),都不会触发。按键按一次会出现多次触发,那是因为你没有对按键的抖动进行处理导致的。不管你的系统频率有多高,普通按键需要作20-30毫秒的延时消抖,是必须的,不能缩短,否则按键不稳定。:)
zhao19900821 发表于 2012-6-13 14:30 | 显示全部楼层
:):):(:)
 楼主| lastnight1034 发表于 2012-6-13 15:42 | 显示全部楼层
你的理解不对。下降沿触发是指从高电平跃变为低电平的那个瞬间才会触发,其他情况下,如一直保持高电平或低电平,或者是由低电平跃变为高电平(上升沿),都不会触发。按键按一次会出现多次触发,那是因为你没有对按 ...
wukunshan 发表于 2012-6-13 14:28

谢谢回复,按键消抖这个道理了解。但是这个是中断,并不会因为你延迟了多少毫秒而不在延迟时间段不触发。可不可以这样理解,机械按键不适合用在外部中断,还是扫描可靠。
kamfun 发表于 2014-3-19 15:30 | 显示全部楼层
还是扫描吧,用状态机来限制。中断的话,在仿真的时候还可以玩玩
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

89

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部