STM32 中断介绍及cubemx配置

中断:就是当 CPU 执行程序时,由于发生了某种随机的事件(外部或内部),引起 CPU 暂时中断正在运行的程序,转去执行一段特殊的服务程序(中断服务子程序或中断处理程序),以处理该事件,该事件处理完后又返回被中断的程序继续执行,这一过程就称为中断。

可以这样理解 : 一个人正在家玩电脑,这时有人来敲门,这个敲门的信号就可以理解为中断。而不使用中断的话,你就要一会看看门口有人没。你听到敲门的信号,接下来去做的事就是在回调函数中写的。

中断源:引发中断信号来源称为中断源。
中断的嵌套:有些中断还能够被其他高优先级的中断所中断,那么这种情况又叫做中断的嵌套
中断通道:是传递、处理中断的信息通道。中断通道对应有唯一的中断号、中断优先级、中断向量、服务程序

STM32 中断分类

  1. CPU中断(15个通道)
    包括非屏蔽中断、异常、指令中断、复位。
  2. 设备中断(43~68个通道)
    指STM32微控制器片内所有设备的中断,其数量与型号有关,对于大容量(hd)类型,共60个。
  3. 外部中断(16个中断源、7个通道)
    16个中断源,通过7个端口(PA、PB、PC、PD、PE、PF、PG)引脚接外部设备信号。
    7个中断通道:来自外部引脚。另外4个中断源连接的是内部设备,用于检测电压、RTC闹钟、两个唤醒CPU,且各占1个通道。

使用 嵌套向量中断控制器(NVIC)进行控制

优先级规则

一般设置中断需要设置优先级(主优先级也叫抢占优先级,子优先级 )

  1. 每个中断源都需要被指定这两种优先级。
  2. 高抢占优先级的中断可以打断低抢占优先级的中断服务;相同子优先级的中断之间不能构成中断嵌套。
  3. 子优先级不能够构成中断嵌套;抢占优先级相同,而子优先级不同的中断同时发生时,首先响应子优先级高的中断。
  4. 抢占优先级和子优先级相同的中断同时发生时,首先响应编号小的中断。

可以使用cubemx进行设置 优先级
enter description here

应用

在串口通信中 使用了中断控制串口接受
可以参考应用

更多STM32学习教程

  1. STM32 cubemx keil5搭建学习环境
  2. 使用STM32 cubemx keil5实现led灯与数码管控制
  3. 基于STM32 CubeMx keil5实现键盘的应用
  4. 基于STM32 CubeMx keil5实现串口通信 I2C与GPIO综合应用
  5. 基于STM32 CubeMx keil5实现AD转换获取温度
  6. 基于STM32 CubeMx keil5 学习使用I2C
  7. 基于STM32 CubeMx keil5 学习使用串口通信
  8. 基于STM32 CubeMx keil5应用定时器
  9. 基于STM32 cubemx keil5学习使用中断
  10. 基于STM32 cubemx keil5综合应用实现温度控制系统
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值