STM32F429--EXTI外部中断/事件控制器

STM32F429 之EXTI外部中断 EXTI外部中断 EXTI external interrupt event control 外部中断事件控制器 1)EXTI就是可以将IO口的电平变化(上升/下降沿)转化成一个中断或者事件 2)F429EXTI由23条线,其中EXTI0-15是配置GPIO的,通过SYSCFG进行EXTI的配置,其余七条是特定的连接 3)EXTI框图 从输入线进入后会进行边缘检测电路,这时配置上升沿触发选择/下降沿寄存器来确认是上升沿/下降沿有效 即配置EXTI_RTSR... 阅读详情

EXTI:External interrupt /event controll

具体的表现形式为

				      导致                 
外部的高低电平变化------------->中断/事件发生(需要配置NVIC)

外部中断/事件控制器功能框图

在这里插入图片描述
具体可以分为两部分:
1- 中断(下图的1,2,3,4,5)
2- 事件(下图的1,2,3,6,7,8)
在这里插入图片描述
由上图可知,外部中断是挂载到APB总线上的,/23表示有23根结构相同的线。
(详情看stm32f4xx的中文参考手册第十章第二小节部分,下面对应的10.x.x代表手册对应章节部分)

1处:输入线
10.2.5 SYSCFG外部中断配置寄存器,16X9=144个GPIO口
在这里插入图片描述
在这里插入图片描述
与上图类似,总共16条
SYSCFG_EXTICR2 EXTIx x(4~7)
SYSCFG_EXTICR3 EXTIx x(8~11)
SYSCFG_EXTICR4 EXTIx x(12~15)
剩余的7条
在这里插入图片描述
2处:边沿检测电路
在这里插入图片描述
3处:软件中断屏蔽寄存器
在这里插入图片描述
事件屏蔽寄存器如下
在这里插入图片描述
4处:挂起寄存器
在这里插入图片描述
5处:NVIC
具体查看官方的misc.h54行,73行(有点多就不一一列举),或者看ARM-Cortex-M4内核的官方手册说明,看名字就可以知道大概意思了,下面是部分截图。
在这里插入图片描述

实验设计

需求
1.PA0连接到EXTI用于产生中断,PA0的电平变化通过按键来控制
2.产生一次中断,LED翻转一次
编程须知:
打开开发板原理图,PA0是按键的连接引脚,默认被地拉低低电平,需要上升沿触发
编程要点:
1.初始化要连接到EXTI的GPIO
2.初始化EXTI用于产生中断事件
3.初始化NVIC,用于处理中断
4.编写中断服务函数
5.main函数

1.bsp_led.c

#include "./led/bsp_led.h"   

 /**
  * @brief  初始化控制LED的IO
  */
void LED_GPIO_Config(void)
{
   
   		
		/*定义一个GPIO_InitTypeDef类型的结构体*/
		GPIO_InitTypeDef GPIO_InitStructure;

		/*开启LED相关的GPIO外设时钟*/
		RCC_AHB1PeriphClockCmd ( LED1_GPIO_CLK|LED2_GPIO_CLK|LED3_GPIO_CLK|LED4_GPIO_CLK, ENABLE); 

		/*选择要控制的GPIO引脚*/															   
		GPIO_InitStructure.GPIO_Pin = LED1_PIN;	

		/*设置引脚模式为输出模式*/
		GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;   
    
    /*设置引脚的输出类型为推挽输出*/
    GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
    
    /*设置引脚为上拉模式*/
    GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;

		/*设置引脚速率为2MHz */   
		GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; 

		/*调用库函数,使用上面配置的GPIO_InitStructure初始化GPIO*/
		GPIO_Init(LED1_GPIO_PORT, &GPIO_InitStructure);	
    
    /*选择要控制的GPIO引脚*/															   
		GPIO_InitStructure.GPIO_Pin = LED2_PIN;	
    GPIO_Init(LED2_GPIO_PORT, &GPIO_InitStructure);	
    
    /*选择要控制的GPIO引脚*/															   
		GPIO_InitStructure.GPIO_Pin = LED3_PIN;	
    GPIO_Init(LED3_GPIO_PORT, &GPIO_InitStructure);	
		
		
STM32F429第十六篇之外部中断 文章目录前言中断使用优先级外部中断 前言 本文主要介绍与外部中断相关的内容。 本文主要参考文献为: ST.STM32 Cortex®-M4 MCUs and MPUs programming manual ST.RM0090 Reference manual 刘火良.STM32库开发实战指南——基于STM32F4.机械工业出版社 正点原子.STM32F429开发指南-HAL库版本_V1.1 Joesph Yiu.ARM cortex-M3与cortex-M4权威指南(第三版).清华大学出版社 中断 本文 阅读详情

相关推荐

51单片机基础(1) -外部中断

外部中断 以下是假期对51单片机课程内容做的一些小结 中断的基本概念 中断: CPU与外设并行工作,当外设数据准备好或者有某种突发事件发生时,向CPU提出请求,CPU暂停正在进行的工作,转而为该外设服务(或者是处理紧急事件),处理完毕后再回到原断点继续执行原程序。这个过程称为中断。中断实例图示: 中断可以分为 外部中断 定时器中断 串口中断 中断源: 引起中断的原因即发送中断请求的来源。中断源具体可参考下面这个图片: 中断优先级以及相对应的寄存器: 图中从上到下依次代表优先级从高到低,优先级序号依次

m0_56197680的博客 5775

STM32F4基于CubeMX项目实战(1)--外部中断实验

在之前的一篇文章中详细介绍了如何利用CubeMX创建一个完整的工程文件,但是CubeMX给我们的帮助有限,而更加具体的程序需要我们自行去编写,因此在这里我将利用开发板上自带的按键触发中断,并且使得板子上红绿两个LED灯交替闪烁。而本篇文章将略过创建工程文件的步骤,如果对如何使用CubeMX创建工程文件不清楚可以参照这篇文章而本篇文章所使用的开发板为STM32F4-disc1板,使用hal库进行编写。

m0_73582133的博客 1036

HAL基础实验源码13 stm32cubemx-F429IGT6外部中断实验.zip

本代码采用STMcubeMX5.30和MDK5版本的开发环境,包含cubeMX工程文件和MDK5工程文件,arm嵌入式 C语言源代码 附开发环境的版本说明,STM32F429igt6/f767igt6/h743iit6原理图及全部器件全套资料免费提供,教学视频免费提供

STM32F429外部中断用法

STM32F429外部中断用法 STM32F429外部中断/事件控制器 (EXTI) 管理了控制器的 23 个中断/事件线。每个中断/事件线都对应有一个边沿检测器,可以实现输入信号的上升沿检测和下降沿的检测。EXTI 可以实现对每个中断/事件线进行单独配置,可以单独配置为中断或者事件,以及触发事件的属性。

热土程序园,利他愉己~ 1170

STM32F429第十七篇之外部中断实验详解

@

我想想的博客 2344

STM32F429之外部中断

7个中断通道在NVRC中使用7个中断服务函数EXPORT  EXTI9_5_IRQHandler      22个中断线中断源为任意想要连接的GPIO,用那个连哪个SYSCFG_EXTILineConfig(EXTI_PortSourceGPIOA, EXTI_PinSource0);配置NVRC—配置GPIO(打开SYSCFG时钟)—连接中断源到GPIO—配置中断EXTI—编写中断服务函数具体如...

老鱼的故事 3794

第17章 EXTI外部中断/事件控制器—零死角玩转STM32-F429系列

第17章     EXTI外部中断/事件控制器 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/firege     本章参考资料:《STM32F4xx中文参考手册》系统配置控制器以及中断和事件章节。 上一章节我们已经详细介绍了NVIC,对STM32F4xx中断管理系统有个全

flyleaf91的专栏 4282

第17章 EXTI外部中断/事件控制器—零死角玩转STM32-F429系列

第17章     EXTI外部中断/事件控制器 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/firege     本章参考资料:《STM32F4xx中文参考手册》系统配置控制器以及中断和事件章节。 上一章节我们已经详细介绍了NVIC,对STM32F4x

yangzhao0001的博客 1155

EXTI——外部中断(按键中断)

STM32F429中有10个系统异常,91个中断。 EXTI——外部中断/事件控制器 有图可得:EXTI可以产生中断也可以产生事件 编写按键——中断驱动程序 初始化RGB彩色灯(前面的LED驱动程序已经写好了,直接调用就可以了) 打开GPIO的时钟和SYSCFG时钟(SYSCFG是外部中断寄存器,使用EXTI必须开启SYSCFG时钟) 配置NVIC NVIC是嵌套向量中断控制器,设置...

qq_44622367的博客 4078

11 STM32F429 EXTI寄存器

stm32 exti

qq_27716761的博客 377

HAL库-STM32F4 外部中断-延时

注:资料来源:野火《零死角玩转STM32-F429》、ST-STM32F4xx中文参考手册》、ST-《Cortex™-M4内核编程手册》 开始: 1.嵌套向量中断寄存器 (NVIC): 嵌套向量中断控制器 (NVIC) 和处理器内核接口紧密配合,可以实现低延迟的中断处理和晚到中断的高效处理。包括内核异常在内的所有中断均通过 NVIC 进行管理。 在CMSIS\Include\core

里先森 1万+

STM32429外部中断小实验(正点原子阿波罗版)

学习外部中断

Toutiegongzhu的博客 1000

STM32F429 外部中断

9.1 STM32F429 外部中断简介              STM32F429 的每个 IO 口都可以作为中断输入,这点很好很强大。要把 IO 口作为外部中断输入,有以下几个步骤:             1) 初始化 IO 口为输入           这一步设置你要作为外部中断输入的 IO 口的状态,可以设置为上拉/下拉输入,也可以设置为浮空输入,但浮空的

jiangcheng99的博客 3342

F429-外设之中断

EXTI: External interrup / event controller 外部 中断/事件 控制器stm32能将一个电平(由高变低、由低变高)转换成一个中断/事件结构体:uint32_t EXTI_Line        中断线 PX0..PX15对应 LINE0...LINE15 其他参考文档FunctionalState EXTI_LineCmd    ENABLE    使能中断...

嚜嚜的博客 1160

STM32F429) DAC 详解与应用实例

嵌入式系统开发中,STM32 系列微控制器以其强大的性能和丰富的外设资源而备受开发者青睐。其中,STM32F429 中的数模转换器(DAC)为实现模拟信号输出提供了便捷的解决方案。本文将详细介绍 STM32F429 的 DAC 功能,并结合实际应用实例展示其在嵌入式系统中的强大作用。STM32F429 的 DAC 是一种 12 位数字模拟转换器,具有两个独立的输出通道。它可以将数字信号转换为模拟电压输出,广泛应用于音频输出、传感器信号模拟、波形生成等领域。

千千道的博客 3138

STM32F4外部中断

一、外部中断概述 STM32F4的每个IO都可以作为外部中断输入。STM32F4的中断控制器支持22个外部中断/事件请求。 EXTI线0~15:对应外部IO口的输入中断 EXTI线16:连接到PVD输出 EXTI线17:连接到RTC闹钟事件 EXTI线18:连接到USB OTG FS唤醒事件 EXTI线19:连接到以太网唤醒事件 EXTI线20:连接到USB OTG (HS中配置)唤醒事件 EXTI线21:连接到RTC入侵和时间戳事件 EXTI线22:连接到RTC唤醒事件 每个外部中断线可以独立的配置触发方

留小乙的博客 2096
上一篇: STM32F429--中断应用概览
下一篇: STM32F429--系统滴答定时器
墨菲墨菲
博客等级 码龄7年 174粉丝 214原创
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值