打印

再一次进入中断

[复制链接]
2193|19
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wangzsa|  楼主 | 2021-7-3 10:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
中断服务程序执行完后,按键还没有拉开,导致再一次进入中断

使用特权

评论回复
沙发
xxrs| | 2021-7-3 10:53 | 只看该作者
在中断退出时才清中断。

使用特权

评论回复
板凳
huangchui| | 2021-7-3 10:55 | 只看该作者
使用边沿中断而不是电平中断

使用特权

评论回复
地板
jlyuan| | 2021-7-3 10:57 | 只看该作者
在中断里面关中断,独立的延时防抖程序中再次打开中断。

使用特权

评论回复
5
stly| | 2021-7-3 10:59 | 只看该作者
不要用外部中断做按键输入

使用特权

评论回复
6
chuxh| | 2021-7-3 11:01 | 只看该作者
加延时不就好了。

使用特权

评论回复
7
supernan| | 2021-7-3 11:03 | 只看该作者
你按下时,程序进入中断处理后关掉中断,然后在主函数里面加一句判断:松手时再开外部中断

使用特权

评论回复
8
jiajs| | 2021-7-3 11:06 | 只看该作者
外部中断弄成下降沿有效不就行了?

使用特权

评论回复
9
jlyuan| | 2021-7-3 11:11 | 只看该作者
最好不要这样做,这样做按键消抖是个麻烦事情

使用特权

评论回复
10
langgq| | 2021-7-3 11:13 | 只看该作者
不行,下降沿还是会被执行多次

使用特权

评论回复
11
stly| | 2021-7-3 11:15 | 只看该作者
还是在中断里加个延时函数好点

使用特权

评论回复
12
renyaq| | 2021-7-3 11:18 | 只看该作者

在中断里延时最傻的做法,不仅解决不了你的问题,还把中断的优点了用成了缺点。
如果我一直按着这个键不放那你不就一直是死在那里了。

使用特权

评论回复
13
jiajs| | 2021-7-3 11:21 | 只看该作者
外部中断比较快啊。而且这个看MCU的资源的,难道非要用定时器吗?定时器是好东西,干吗不留着慢慢用。

使用特权

评论回复
14
yszong| | 2021-7-3 11:23 | 只看该作者
呵呵,我也遇到过类似的问题。可以让程序多次进中断没有关系。不过中断函数里要赋值一个全局变量,中断进入后设置全局变量。

使用特权

评论回复
15
morrisk| | 2021-7-3 11:27 | 只看该作者
在中断外面的循环里读中断管教的状态,如果没有低电平(按键松开),则把全局变量再清0,这样相当是把延时放在外面

使用特权

评论回复
16
renyaq| | 2021-7-3 11:29 | 只看该作者
按键中断用在有低功耗需求的场合,其他情况下没必要用

使用特权

评论回复
17
jiajs| | 2021-7-3 11:32 | 只看该作者
加个软件去抖就应该是可以的。。。。

使用特权

评论回复
18
yszong| | 2021-7-3 11:34 | 只看该作者
加个延时吧,这个可以试试看。

使用特权

评论回复
19
pengf| | 2021-7-3 11:36 | 只看该作者
给外部中断加上一个延时吧。。

使用特权

评论回复
20
wangzsa|  楼主 | 2021-7-3 11:38 | 只看该作者
我再好好缕一缕吧,有了好消息及时通知大家

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

914

主题

9040

帖子

5

粉丝