您的位置:首页 > 其它

外部中断

2017-09-29 16:53 141 查看
STM32 的每个 IO 都可以作为外部中断的中断输入口

GPIO 跟中断线的映射关系图



下降沿触发 EXTI_Trigger_Falling,上

升沿触发 EXTI_Trigger_Rising,或者任意电平(上升沿和下降沿) 触发

EXTI_Trigger_Rising_Falling,

常用的中断服务函数格式为:
void EXTI3_IRQHandler(void)
{
if(EXTI_GetITStatus(EXTI_Line3)!=RESET)//判断某个线上的中断是否发生
{
中断逻辑…
EXTI_ClearITPendingBit(EXTI_Line3); //清除 LINE 上的中断标志位
}
}


在这里需要说明一下,固件库还提供了两个函数用来判断外部中断状态以及清除外部状态

标志位的函数 EXTI_GetFlagStatus 和 EXTI_ClearFlag,他们的作用和前面两个函数的作用类似。

只是在 EXTI_GetITStatus 函数中会先判断这种中断是否使能,使能了才去判断中断标志位,而

EXTI_GetFlagStatus 直接用来判断状态标志位。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  stm32