关于2410外部中断响应程序的问题

发布于 2022-09-23 12:59:12 字数 112 浏览 23 评论 0

用2410外部中断碰到了一个棘手的问题,想对一个外部中断引脚在上升沿和下降沿是执行不同的程序,如果设为双边沿触发,那么在中断处理程序内该怎么判断当前的中断是上升沿还是下降沿呢?如何才能对上升沿和下降沿进行不同的响应呢?谢谢。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(8

ゃ懵逼小萝莉 2022-09-30 12:59:12

这个应该是硬件是否提供这样的功能的问题,对于软件来说,中断的触发并不关心它是在上升还是下降沿触发的。你要弄明白的话,应该仔细读一下硬件手册。

蒗幽 2022-09-30 12:59:12

如果硬件手册上面有的话我就不到这里发帖子了,谢谢。希望有经验的朋友来说一说。

倦话 2022-09-30 12:59:12

看看set_external_irq你就明白了

过气美图社 2022-09-30 12:59:12

我错了,硬件应该没有提供这个功能吧

伴我老 2022-09-30 12:59:12

给你提供一个比较繁琐的方法:
1、将io口设置成中断功能,并且将中断触发类型设置成上升沿,下降沿都可触发,即沿触发
2、当来中断的时候,记录中断,并在中断处理程序中迅速将io口设置成gpio功能,且设置成输入,读一下数值,这时候你就可以知道是高电平还是低电平,然后将io口功能重新设置成中断功能(没有其他硬件协助的话,我想只能这样了,尽管挺慢,有时候在读io的时候信号已经消失了)。
3、当然你也可以将你的中断信号线同时与2410的中断引脚 和另外一条负责判断的引脚相连,如果只用一条引脚的话,:wink:哈哈~

2410应该可以做到~
就是这个样子~

丘比特射中我 2022-09-30 12:59:12

非常感谢,总算是有个思路了,呵呵。我的两个沿间隔比较长,应该可以实现,thx

屋顶上的小猫咪 2022-09-30 12:59:12

2410是有这个函数封装的,但是我没有找到set_external_irq函数的具体实现,能告诉我在哪里吗?非常感谢。

金兰素衣 2022-09-30 12:59:12

在IRQ线上并一个D型上升沿有效锁存器,同时将效锁存器的输出接到一个IO口,中断发生时,第一时间判断IO口,这样就搞定了

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文