STM32 外部中断 易出错总结

来源:本站
导读:目前正在解读《STM32 外部中断 易出错总结》的相关信息,《STM32 外部中断 易出错总结》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《STM32 外部中断 易出错总结》的详细说明。
简介:这些问题都是我之前在工作中遇到的,后来觉得需要总结,自己记忆不好,所以在这个给自己打个mark。

一:触发方式

STM32的外部中断是通过边沿来触发的,不支持电平触发;

二:外部中断分组

STM32的每一个GPIO都能配置成一个外部中断触发源,STM32通过根据引脚的序号不同将众多中断触发源分成不同的组,比如:PA0,PB0,PC0,PD0,PE0,PF0,PG0为第一组,那么依此类推,我们能得出一共有16组,STM32规定,每一组中同时只能有一个中断触发源工作,那么,最多工作的也就是16个外部中断。

STM32分组和对应中断处理函数分配:

STM32 外部中断 易出错总结

三:外部中断的配置过程

l配置触发源-GPIO

触发源为通过GPIO端口输入,所以,要配置GPIO的模式,输入方式,输入方式有以下几种:

1.GPIO_Mode_AIN,模拟输入(ADC模拟输入,或者低功耗下省电)

2.GPIO_Mode_IN_FLOATING,浮空输入

3.GPIO_Mode_IPD=0x28,带下拉输入

4.GPIO_Mode_IPU=0x48,带上拉输入

l引脚与外部中断关联

l外部中断AFIO时钟开启

l外部中断配置

这个主要是中断线路选择,中断触发方式,中断使能。

l中断优先级配置NVIC

l中断处理函数的编写。

四:外部中断函数不能进入的原因分析

结合我工作中的遇到的问题可以分为:

1)GPIO或者AFIO的时钟没有开启;

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

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

4)中断处理函数用库函数时,写错,经常可能出现数字和字母之间没有下划线;

5)外部中断是沿触发,有可能不能检测到沿,比如中断线是低电平(浮空输入),触发是下降沿触发,可能会出现一直是低电平,高电平的时候是一样的情况,电平持续为高电平;

6)没有用软件中断来触发外部中断,调用函数EXTI_GenerateSWInterrupt;,因为软件中断先于边沿中断处理。

提醒:《STM32 外部中断 易出错总结》最后刷新时间 2024-03-14 00:57:38,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《STM32 外部中断 易出错总结》该内容的真实性请自行鉴别。