STM32CubeMX 外部中断

简介: STM32CubeMX 外部中断

一、中断初始化配置


1.打开 STM32CubeMX 软件,在工具栏中选择 "Pinout & Configuration" 选项卡。


2.选择需要使用的 GPIO 引脚,右键单击选择 "GPIO_EXTI"。在弹出的上下文菜单中选择 "External Interrupt Mode",并选择相应的中断触发方式。


3.在配置选项卡中,在 "Mode" 选项中选择外部中断模式。在 "External Interrupt" 选项中选择对应的 "EXTIx" 中断线。


4.配置 NVIC (Nested Vectored Interrupt Controller),使能中断线,并设置中断优先级。


二、STM32CubeMX配置


1.打开高速和低速时钟,时钟源选择外部时钟源



将定时器的时钟设为 72M



2.引脚配置


用PB6作为中断输入,配置为GPIO_EXTI,由于PB6引脚通过按键直接接地,所以将引脚拉高也就是Pull-up ,检测他的下降沿,作为中断源输入,PC13设置为GPIO_Output,输出高电平



接着GPIO mode配置下降沿,pull-up 上拉


GPIO mode:


External Interrupt Mode with Rising edge trigger detection//上升沿触发

External Interrupt Mode with Falling edge trigger detection//下降沿触发

External Interrupt Mode with Rising/Falling edge trigger detection//上升沿或下降沿触发



pc13配置高电平



3. 使能外部中断线



4.配置中断优先级



5.生成代码




三、Keil代码配置


1.重写中断回调函数


在 main.c 中的 USER CODE BEGIN 0-4 编程范围内重写外部中断的回调函数:

void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
{
        if(GPIO_Pin == GPIO_PIN_6)
        {
            HAL_GPIO_TogglePin(GPIOC,GPIO_PIN_13);
        }
}


2.编译后,点击LOAD下载

目录
相关文章
|
数据可视化 中间件 API
FreeRTOS记录(一、熟悉开发环境以及CubeMX下FreeRTOS配置)
熟悉 在 STM32 CubeMX 下面的 FreeRTOS 使用
3675 1
FreeRTOS记录(一、熟悉开发环境以及CubeMX下FreeRTOS配置)
|
传感器 芯片
最详细STM32,cubeMX 点亮 led
最详细STM32,cubeMX 点亮 led
951 0
|
传感器 编解码 IDE
STM32CubeMX ADC采集光照和电压
STM32CubeMX ADC采集光照和电压
2284 3
|
传感器 开发者
【STM32基础 CubeMX】外部中断
【STM32基础 CubeMX】外部中断
614 44
|
存储 数据管理 数据处理
处理STM32 DMA方式下的HAL_UART_ERROR_ORE错误
通过正确配置UART和DMA、实现有效的错误处理回调函数以及优化数据处理和缓冲区管理,可以有效处理STM32中DMA方式下的 `HAL_UART_ERROR_ORE`错误。这些方法确保了数据的高效传输和处理,避免了因数据溢出导致的通信中断和数据丢失。希望这些解决方案能够帮助您在实际应用中更好地应对和解决此类问题。
2290 0
STM32学习笔记(4) 高级定时器-两路互补的PWM输出(带死区和刹车控制)
原理:当捕捉到信号的跳变沿时,将CNT的值所存到捕获寄存器CCR中,然后把两次的值相减,就可以得到脉宽或者频率。
3284 0
STM32Cubemx PWM驱动SG90舵机
STM32Cubemx PWM驱动SG90舵机
1051 13
|
芯片
STM32CubeMX 串口数据收发
STM32CubeMX 串口数据收发
698 2
|
传感器
【经典案例】STM32F407使用HAL库配置I2C详解
STM32F407是一个强大的微控制器,广泛应用于嵌入式系统中。在许多应用中,我们需要使用I2C总线来与传感器、EEPROM、显示屏等外设进行通信。本文将详细介绍如何使用STM32 HAL库来配置和使用I2C接口。
2618 2

热门文章

最新文章