STM32-嵌入式学习笔记03-EXTI中断的分析及应用

简介: STM32-嵌入式学习笔记03-EXTI中断的分析及应用

   EXTI中断/事件控制器,管理了控制器的20根中断/事件线。每个对应了一个边沿检测器,可以实现输入信号的上升沿或者下降沿检测,EXTI可以实现对每个中断或者事件的单独配置

   这里中断通常是指GPIO的中断   事件可以是AD/DA转换  TIM定时器等···

通过书上的EXTI 功能框图可以清楚的知道配置EXTI中断的具体过程

image.png

这里拿EXTI控制GPIO为例:

编程要领:

1)初始化用来产生中断的GPIO

2)初始化EXTI

3)配置NVIC

4)编写中断函数

这里只贴出配置EXTI和中断函数的编写:

voidEXTI_Key_config(void)
{
GPIO_InitTypeDefGPIO_InitStructure;
EXTI_InitTypeDefEXTI_InitStructure;
//配置中断优先级EXTI_NVIC_Config();
//开启KEY相关GPIO的外设时钟RCC_APB2PeriphClockCmd( KEY1_GPIO_CLK, ENABLE);
//选择控制的引脚GPIO_InitStructure.GPIO_Pin=KEY1_GPIO_PIN;    
//选择输出方式为浮空输出GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN_FLOATING;   
//设置引脚速率为50MHZGPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz; 
//调用库函数,初始化GPIOGPIO_Init(KEY1_GPIO_PORT, &GPIO_InitStructure); 
//初始化EXTIGPIO_EXTILineConfig(GPIO_PortSourceGPIOA,GPIO_PinSource0);
RCC_APB2PeriphClockCmd( KEY1_GPIO_CLK, ENABLE);
//配置EXTI的中断线EXTI_InitStructure.EXTI_Line=EXTI_Line0;
//配置EXTI模式EXTI_InitStructure.EXTI_Mode=EXTI_Mode_Interrupt;
//配置触发类型EXTI_InitStructure.EXTI_LineCmd=ENABLE;
EXTI_Init(&EXTI_InitStructure); 
}
voidEXTI0_IRQHandler(void)
{
if(EXTI_GetITStatus(EXTI_Line0) !=RESET )
    {
LED_TOGGLE;
    }
EXTI_ClearITPendingBit(EXTI_Line0);
//清除中断}
目录
相关文章
|
编译器 开发工具 C语言
探索STM32的无限可能:应用与发展
探索STM32的无限可能:应用与发展
249 2
|
物联网 开发者 智能硬件
STM32:引领嵌入式系统新时代的微控制器
STM32:引领嵌入式系统新时代的微控制器
|
数据采集 IDE 编译器
STM32微控制器入门及应用实例
STM32微控制器入门及应用实例
|
芯片
STM32F103标准外设库——中断应用/事件控制器(七)
STM32F103标准外设库——中断应用/事件控制器(七)
1499 0
STM32F103标准外设库——中断应用/事件控制器(七)
|
传感器 数据采集 物联网
STM32:高性能微控制器与广泛的应用领域
STM32:高性能微控制器与广泛的应用领域
1248 0
|
数据处理 C语言 智能硬件
STM32微控制器在智能家居中的应用
STM32微控制器在智能家居中的应用
681 0
|
开发者
STM32中断详解及其编程实践
STM32中断详解及其编程实践
1027 1
|
数据可视化 关系型数据库 MySQL
嵌入式C++、STM32、MySQL、GPS、InfluxDB和MQTT协议数据可视化
通过本文的介绍,我们详细讲解了如何结合嵌入式C++、STM32、MySQL、GPS、InfluxDB和MQTT协议,实现数据的采集、传输、存储和可视化。这种架构在物联网项目中非常常见,可以有效地处理和展示实时数据。希望本文能帮助您更好地理解和应用这些技术,构建高效、可靠的数据处理和可视化系统。
845 82
|
缓存 网络协议 算法
[蓝桥杯嵌入式]hal库 stm32 PWM的使用(随时修改占空比,随时修改频率)
[蓝桥杯嵌入式]hal库 stm32 PWM的使用(随时修改占空比,随时修改频率)
|
移动开发
技术好文:stm32寄存器版学习笔记06输入捕获(ETR脉冲计数)
技术好文:stm32寄存器版学习笔记06输入捕获(ETR脉冲计数)
1004 10