STM32-外部中断常见问题记录

在工作中遇到了一些问题,现在记录在这里方便以后查看

1. STM32的外部中断触发方式

STM32只支持边缘触发,而不支持电平触发.

2. STM32外部中断分组

STM32中,每一个GPIO都可以当作是外部中断输入口, 并根据引脚编号将中断进行了分组.

引脚标号0~4的IO管脚有独立的中断源.

引脚标号5-9的IO管脚共享一个中断源

引脚标号10-13的IO管脚共享一个中断源

3. 外部中断服务函数不能触发分析

主要是因为以下几点造成了服务函数无法进入

1)GPIO或者AFIO的时钟没有开启,比较常见的是忘记了开启AFIO时钟;

2)GPIO和配置的中断线路不匹配;

3)中断触发方式和实际不相符合;

4) NVIC配置与实际不匹配,使用了错误的NVIC_IRQChannel,建议在stm32f10x.h中查找对应Channel.

5)使用了错误的中断处理函数名,这种情况多出于使用库函数. 建议在startup_stm32f***.s中查找对应中断函数名;

6)不能检测到边缘,这种情况多发生在引脚处于悬空状态, 建议上拉或者下拉方式固定引脚平时的电平

posted @ 2013-08-09 10:43  ZHX_1Q89  阅读(1485)  评论(0编辑  收藏  举报