STM32共用中断线的外部中断引脚的判断

因为STM32的中断线有多个外部中断引脚共用的,比如中断线1,由PA1,PB1,PC1,PD1,PE1,PF1来共用,假设这些引脚都设置成了中断源且都为下降沿触发,其中任... 因为STM32的中断线有多个外部中断引脚共用的,比如中断线1,由PA1,PB1,PC1,PD1,PE1,PF1来共用,假设这些引脚都设置成了中断源且都为下降沿触发,其中任一个产生中断都会进入到中断线1的中断服务程序,那么在中断服务程序中如何来判断是哪个引脚的中断源产生了中断呢?我现在查到的方法只是去判断各个管脚的电平高低,我觉得这样是非常不可靠的,现求教更可靠的方法,请用库函数的方法写出程序并加注释。务必详细. 展开
 我来答
匿名用户
2019-01-17
展开全部
同时配置了多个管脚(比如,PE1,PA1,PB1)的中断到同一中断线(比如EXTI_LINE1),只有最后的一个配置生效(PB1有 效,PE1,PA1进不了中断)
ATF144X
推荐于2017-11-25 · TA获得超过1.2万个赞
知道大有可为答主
回答量:5344
采纳率:77%
帮助的人:4595万
展开全部
不对吧?根据AFIO->EXTICR1寄存器的定义来看,一次只能从PA1,PB1,PC1,PD1,PE1,PF1、PG1中选一个作为中断源。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
37692664
2012-07-21 · 超过11用户采纳过TA的回答
知道答主
回答量:211
采纳率:100%
帮助的人:67万
展开全部
如果需要在两个不同的引脚上引入不同的两个外部中断,这两个中断的处理函数两个中断的处理函数不一定分别在两个子函数中写。如果两个中断没共用一个
追问
请看清我的条件:中断线1,由PA1,PB1,PC1,PD1,PE1,PF1来共用,假设这些引脚都设置成了中断源且都为下降沿触发,其中任一个产生中断都会进入到中断线1的中断服务程序,那么在中断服务程序中如何来判断是哪个引脚的中断源产生了中断呢?

不共用中断源的话,入口地址就已经区分来开了,也不会有这个问题。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ocean_zh66
2018-06-23
知道答主
回答量:2
采纳率:0%
帮助的人:1642
展开全部
可以在中断服务函数中获取PA1,PB1,PC1,PD1,PE1,PF1、PG1的IO状态来具体判断是哪个引脚触发的外部中断
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式