TI论坛
直播中

郑婷婷

7年用户 162经验值
私信 关注
[问答]

C6748中同一个BANK的GPIO中断,2个GPIO同时触发先处理哪个?

在C6748里用同一个BANK的2个GPIO作为外部中断的输入接口,如果2个GPIO同时触发,那么先处理哪一个中断程序呢?谢谢!

回帖(5)

余少虹

2020-5-27 14:23:19
你好,
同一个bank的GPIO, 不管是一个或者几个管脚触发中断, 只会产生一个Bank Interrupt中断信号给CPU, CPU是不知道哪个GPIO管脚产生的, 需要你在ISR中断服务子程序中去判断INTSTATn寄存器哪(几)个GPIO管脚触发的, 然后逐个处理, 还要把INTSTAT的相应位清0, 所以先处理哪个GPIO中断, 看你的程序怎么写了.
举报

郑婷婷

2020-5-27 14:31:54
引用: vuywsdfwf 发表于 2020-5-27 14:23
你好,
同一个bank的GPIO, 不管是一个或者几个管脚触发中断, 只会产生一个Bank Interrupt中断信号给CPU, CPU是不知道哪个GPIO管脚产生的, 需要你在ISR中断服务子程序中去判断INTSTATn寄存器哪(几)个GPIO管脚触发的, 然后逐个处理, 还要把INTSTAT的相应位清0, 所以先处理哪个GPIO中断, 看你的程序怎么写了. ...

Shine Zhang
         你好,感谢你的回复,如果在执行一个GPIO中断时同一个BANK的另一个GPIO也触发了中断,那么后触发的中断会丢失吗?如果不丢失怎么去判断它,谢谢!
举报

余少虹

2020-5-27 14:45:17
引用: mmwurwer 发表于 2020-5-27 14:31
Shine Zhang
         你好,感谢你的回复,如果在执行一个GPIO中断时同一个BANK的另一个GPIO也触发了中断,那么后触发的中断会丢失吗?如果不丢失怎么去判断它,谢谢!

有可能会丢失, 如果在中断子程序中, 在判断INTSTAT中该GPIO标志位之前发生的, 那正好会去处理, 如果触发发生在判断之后, 那会丢失
举报

郑婷婷

2020-5-27 14:53:24
引用: vuywsdfwf 发表于 2020-5-27 14:45
有可能会丢失, 如果在中断子程序中, 在判断INTSTAT中该GPIO标志位之前发生的, 那正好会去处理, 如果触发发生在判断之后, 那会丢失

Shine Zhang
         你好,C6748的中断处理机制中,不同BANK的GPIO,设置不同的优先级,高优先级中断子程序在执行时,如果出现低优先级的触发,那么低优先级的中断处理会丢失吗?
举报

更多回帖

发帖
×
20
完善资料,
赚取积分