(三) STM32 外部中断的原理与应用( 六 )
EXTI4_IRQHandler
EXTI9_5_IRQHandler
EXTI15_10_IRQHandler
在编写中断服务函数的时候会经常使用到两个函数实现下面的功能:
(1)判断某个中断线上的中断是否发生(标志位是否置位)一般使用在中断服务函数的开头 , 判断中断是否发生:
ITStatus EXTI_GetITStatus(uint32_t EXTI_Line);
(2)清除某个中断线上的中断标志位 , 这个函数一般应用在中断服务函数结束之前 , 清除中断标志位:
void EXTI_ClearITPendingBit(uint32_t EXTI_Line)
中断服务函数的格式可以说是一个套路的 , 常用的中断服务函数格式为:
void EXTI9_5_IRQHandler(void){
\tif(EXTI_GetITStatus(EXTI_Line8)!=RESET)//判断线8上的中断是否发生
\t{
\t\t…中断逻辑
\t\tEXTI_ClearITPendingBit(EXTI_Line8);//清除LINE上的中断标志位
\t
另外 , 固件库还提供了两个函数用来判断外部中断状态和清除外部状态标志位 , 即EXTI_GetFlagStatus()和EXTI_ClearFlag()其作用和前面两个函数的作用类似 , 只是在EXTI_GetITStatus()中会先判断这种中断是否使能 , 使能了才去判断中断标志位 , 而EXTI_GetFlagStatus()直接用来判断状态标志位 。
推荐阅读
- ag战队|AG超玩会被estar中断连胜,或利大于弊,及时调整才能走得更远!
- 王昭君|王者荣耀:梦奇改版自动攻击,大乔芈月削弱,回血不再中断回城!
- 卡牌|nuguri的行为太过分,FPX强行给俱乐部断网,直播也中断
- 华为手机|华为下滑,小米上升!华为手机销量为何双位数下滑?外部压力严峻
- 华为|中科院伸出援手!任正非:极端困难的外部条件把我们逼向世界第一
- 5G|后果自负!中断5G合作,驱离中国工人,中方采取对等措施
- Excel怎样导入其他表格的外部数据?
- 谷歌CEO:非主业创新研发业务将引入外部股东,更严格管理
- 2020微信公开课PRO:企业微信3.0版本外部群聊人数升级至100人
- 智造问答|卡特340挖掘机燃油泵外部机油泄漏故障的原因