打印
[MCU]

中断标志的清除中断标志的清除

[复制链接]
336|10
手机看帖
扫描二维码
随时随地手机跟帖
沙发
jiahy| | 2019-9-22 12:55 | 只看该作者
在中断服务程序中一般都要手工清除中断标志位,一般的做法是先作中断服务处理,然后再清除中断标志。

使用特权

评论回复
板凳
jiahy| | 2019-9-22 12:57 | 只看该作者


但是中断处理一般要消耗时间,如果在这段时间里有新的中断时间到来,新来的事件就有可能丢失。

使用特权

评论回复
地板
jlyuan| | 2019-9-22 13:03 | 只看该作者
推荐的方法是?

使用特权

评论回复
5
dengdc|  楼主 | 2019-9-22 13:07 | 只看该作者
是啊

使用特权

评论回复
6
liliang9554| | 2019-9-22 13:12 | 只看该作者

应尽可能早的清除中断标志,然后做中断处理,处理完后可再查询中断标志,直到无中断标志置位时退出。

使用特权

评论回复
7
liliang9554| | 2019-9-22 13:16 | 只看该作者
这样可以更加实时性的响应中断请求,并最大可能避免中断丢失。

使用特权

评论回复
8
spark周| | 2019-9-22 13:19 | 只看该作者
如果,频繁发生,中断处理过程中有新中断来,说明需要升级平台了。

使用特权

评论回复
9
午夜粪车| | 2019-9-22 13:23 | 只看该作者
偶尔发生,则需要构建中断处理的任务队列,还要解决好代码的可重入性。否则还是比较容易出现两次进入同一个服务程序,然后数据混了,这就麻烦了。

使用特权

评论回复
10
zhaoxqi| | 2019-9-22 13:32 | 只看该作者

貌似不可以吧,中断只能在内核(也就是驱动中注册呀)

使用特权

评论回复
11
dengdc|  楼主 | 2019-9-22 13:39 | 只看该作者
嗯,预料中的结果,先结贴吧,多谢大家啦

使用特权

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

本版积分规则

892

主题

13885

帖子

7

粉丝