STM32的中断机制 stm32中断方式有几种

发布者:心动代码最新更新时间:2023-06-28 来源: elecfans关键字:STM32  中断机制  中断方式 手机看文章 扫描二维码
随时随地手机看文章

STM32的中断机制stm32中断方式有几种

中断机制在单片机中是很重要的环节,中断代码默认地从上往下执行,遇到特定条件或特定语句,将按照指定的程序跳转。而STM32单片机的中断是有两层控制器分别控制的,若采用中断机制,必须同时配置内核和芯片。


在STM32单片机中执行中断机制主要有三个函数,分别是:

1.配置NVIC_Config()函数

2.配置EXTI_Config()函数

3.自行编写中断服务函数


NVIC是嵌套向量中断控制器,主要控制整个单片机芯片中断相关的功能,跟内核紧密耦合。配置NVIC_Config()函数是为单片机提供选择中断源的优先级及打开中断通道,主要由配置NVIC初始化结构体NVIC_InitStruct完成,NVIC的任务主要是给对应的中断源分配中断优先级。NVIC控制器主要负责管理内核中的中断,而内核对中断的控制主要表现在中断地址、中断优先级和中断使能。


EXTI是外部中断/事件控制器,一般由IO口的电平信号变化而引起的,主要管理控制器的20个中断/事件线。每个中断/事件线都有一个专属的边沿检测器,可实现输入信号的上升沿检测和下降沿检测。EXTI最大优势是可对单个中断/事件线配置中端或触发事件。EXTI是根据传入的信号进行处理,向NVIC传送中断信号。


所有的中断函数都要在stm32f10x_it.c中编写代码。

STM32芯片中断设置:

1.打开时钟

2.中断引脚选择

3.中断模式选择

4.中断触发方式选择

5.使能中断

STM32内核中断配置:

1.中断优先级分组

2.设置中断地址

3.设置抢占优先级

4.设置子优先级

5.使能中断

以上是STM32中断机制及函数,希望对用户有所帮助。


关键字:STM32  中断机制  中断方式 引用地址:STM32的中断机制 stm32中断方式有几种

上一篇:为什么可以在STM32上面跑神经网络
下一篇:用户手册|STM32G0 系列安全手册

推荐阅读最新更新时间:2024-11-10 10:41

STM32 文件系统 fatfs 移植笔记详解
1、内存和Flash介绍 stm32 的 flash 地址起始于 0x0800 0000,结束地址是 0x0800 0000 加上芯片实际的 flash 大小,不同的芯片 flash 大小不同。 RAM 起始地址是 0x2000 0000,结束地址是 0x2000 0000 加上芯片的 RAM 大小,不同的芯片RAM也不同。 Flash 中的内容一般用来存储代码和一些定义为 const 的数据,断电不丢失,RAM 可以理解为内存,用来存储代码运行时的数据,变量等等,掉电数据丢失。 stm32 将外设等都映射为地址的形式,对地址的操作就是对外设的操作。 stm32 的外设地址从 0x4000 0000 开始,可以看到在
[单片机]
<font color='red'>STM32</font> 文件系统 fatfs 移植笔记详解
STM32 LibUsbDotNet 开发CDC记录
1,一定要注意端点是分方向的,在ST的USB库中使用类似如下方式来表示端点。 第7bit为1,0x80表示IN端点。为0表示OUT端点。 这里千万不要看到IN OUT 端点都是EP1就认为EP1是一个双向端点。按照USB规范,只有EP0是双向端点,其他都只能是单向端点,所以实际上,如下表示是两个不同的端点,这里千万不要混淆了。 #define CDC_IN_EP 0x81 /* EP1 for data IN */ #define CDC_OUT_EP 0x01 /* EP1 for data OUT */ 2,LibUsbDotNet在调用Read Wri
[单片机]
Stm32平台UCOSII的简单使用及注意事项
1.与UCOSII有关的几个概念:任务优先级,任务堆栈,任务控制块,任务就绪表和任务调度器 任务优先级,这个概念比较好理解, ucos 中,每个任务都有唯一的一个优先级。优先级是 任务的唯一标识。在 UCOSII 中,使用 CPU 的时候,优先级高(数值小)的任务比优先级低的 任务具有优先使用权,即任务就绪表中总是优先级最高的任务获得 CPU 使用权,只有高优先级 的任务让出 CPU 使用权(比如延时)时,低优先级的任务才能获得 CPU 使用权。 UCOSII 不支 持多个任务优先级相同,也就是每个任务的优先级必须不一样。 任务堆栈,就是存储器中的连续存储空间。为了满足任务切换和响应中断时保存 CPU 寄存 器中
[单片机]
<font color='red'>Stm32</font>平台UCOSII的简单使用及注意事项
STM32 USB 设备音频数据流
音频数据流的应用 音频数据流是没有任何压缩的音频数据,我们可以直接通过I2S传输到数字功放,也可以对这些数字音频进行处理,比如EQ音量控制、音质补偿等等。 典型应用举例 首先是PC,然后PC通过USB数据线连接到MCU,MCU再通过I2S输出到功放,最后连接到喇叭或耳机。 当然,还有GUI的部分显示可以控制,同时还可以通过麦克风把音频传输到PC进行刻录或保存。 同步问题 USB外设时钟、I2C外设时钟和外部功放时钟是同步的,因为它们共用一个时钟域,但不能同步PC的时钟域。 这些不同的时钟域将会造成音频的不同步,出现断音或丢失部分音频。 主要问题 1. USB的参考时钟(SOF)并不跟系统时钟同步,主要表现在三个方面
[单片机]
stm32 定时器响应时间计算
以TIM3_Int_Init(u16 arr,u16 psc)为例:(st的标准库) arr:自动重装载值 psc:时钟预分频系数 arr 有四种计数方式:加1、减1,加减、减加。(可单次可多次) 要计算时间必须知道单片机的时钟源频率 F(由时钟频率的方波来计数) 定时器响应时间(T)计算:T= / F (us)
[单片机]
<font color='red'>stm32</font> 定时器响应时间计算
字符设备驱动程序按键驱动---中断方式
中断函数:包含#include linux/irq.h request_irq(irq,handle,irqflag,name,dev_id) { 1,分配一个irqaction结构体 2、把这个结构体放到irq_desc (action链表)中 3、设置引脚 4、使能中断 } free_irq(irq,dev_id) { 1、irqaciton出链 2、禁止中断 } ----------------------------------------------------------------------------------------------------------------------
[单片机]
两种方法实现stm32的8个串口通信
100引脚的stm32f103系列的stm32只有5个内置的串口控制器,那么如何实现8个串口通信呢? 方法1: 用普通的io模拟串口通信。这里除了IO端口外,还需要一个定时来控制发送和接收的波特率。定时器的定时单位一般为1位数据的发送时间。假设波特率为vRate,那么定时时间为1/vRate;但是如果波特率比较大的话(256000bps),定时时间一般要 (1/VRate),因为一些其他额外指令的执行时间,不能忽略不计了。这种方法可以支持更多的端口. 方法2:USART的复用功能重映射,USART3支持3个端口(PB10-PB11,PD9-PD10),USART2支持2个端口(PA2-PA3,PD5,PD6),USART1
[单片机]
意法半导体推出STM32微处理器专用高集成度电源管理芯片
优化的集成化电源管理芯片,内置保护功能,驱动MPU及外设 2024 年 10 月 18 日, 中国——意法半导体 STM32MP2 微处理器配套电源管理芯片STPMIC25 现已上市。 新产品在一个便捷封装内配备 16 个输出通道,可为MPU的所有电源轨以及系统外设供电,完成硬件设计仅需要少量的外部滤波和稳定功能组件。评估板STEVAL-PMIC25V1现已上市,开发者可立即开始开发应用。 新电源管理芯片包含七个 DC/DC 降压转换器和八个低压差 (LDO) 稳压器,还有一个额外的 LDO稳压器为系统 DDR3 和 DDR4 DRAM 提供参考电压 (Vref) 。在八个 LDO稳压器中有一个3.3V 通道专用稳压
[嵌入式]
意法半导体推出<font color='red'>STM32</font>微处理器专用高集成度电源管理芯片
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved