STM32学习笔记(2) —— 中断

本文介绍了STM32中断系统,包括嵌套向量控制器(NVIC)和外部中断/事件控制器(EXTI)的中断优先级、中断嵌套管理。阐述了如何使用cubeMX配置中断,以及中断服务的两种实现方式,为理解STM32中断处理提供详细指导。
摘要由CSDN通过智能技术生成

中断是指在cpu在执行程序的过程中,由于某些内部或者外部的事件的发生,cpu停下正在执行的进程,转向去为这些事件服务,并且在服务完成后回到被打断的地方继续执行的机制。

在这里插入图片描述

嵌套向量控制器(NVIC)和外部中断/事件控制器(EXTI)

中断的类型可以分为内部中断和外部中断,内部中断只要和cpu运行时产生的一些错误和异常有关,我们一般进行配置的是外部中断。STM32对中断的管理是通过NVIC和EXTI两个外设来进行的。

NVIC

NVIC居于M4的内核之中,主要是对中断优先级和中断嵌套进行管理。

中断优先级

在STM32F4中,中断优先级由中断优先级寄存器(IPR)的高四位来控制。并且通过优先级分组将这四位又分为抢占优先级和子优先级,以便管理STM32中的大量中断。简单来说,优先级分组就是来规定IPR高四位的分配情况(如优先级分组为1,则表示抢占优先级占一位,子优先级占三位)。
优先级分组
在进行中断优先级的比较时,首先比较抢占优先级,当抢占优先级相同时比较子优先级。STM32里都是规定优先级的数值越小,对应中断的优先级越高。

根据引用内容,STM32C8T6是一款通用增强型的48脚单片机,具有64K闪存和LQFP封装。它适用于工业级温度范围-40~85度。下面是一些关于STM32C8T6学习笔记: 1. 学习资料:可以从ST官方网站下载STM32C8T6的数据手册和参考手册,这些手册包含了该单片机的详细信息和使用方法。 2. 开发环境:为了开始学习STM32C8T6,你需要安装相应的开发环境。ST官方提供了一款免费的集成开发环境(IDE)——STM32CubeIDE,它可以帮助你进行代码编写、调试和下载。 3. 编程语言:STM32C8T6可以使用多种编程语言进行开发,包括C语言和汇编语言。C语言是最常用的编程语言,它可以通过STM32CubeIDE进行编写和调试。 4. 引脚配置:在使用STM32C8T6之前,你需要了解每个引脚的功能和配置。数据手册中有一张引脚功能表,可以帮助你了解每个引脚的用途和配置方法。 5. 时钟配置:STM32C8T6具有多个时钟源和时钟分频器,你需要根据自己的需求配置正确的时钟。时钟配置对于外设的正常工作非常重要。 6. 中断和定时器:STM32C8T6支持中断和定时器功能,这些功能可以帮助你实现各种任务和功能。你可以通过配置中断和定时器来实现外设的响应和定时操作。 7. 外设驱动:STM32C8T6具有丰富的外设,包括GPIO、UART、SPI、I2C等。你可以根据自己的需求选择合适的外设,并学习如何配置和驱动这些外设。 8. 调试和下载:在开发过程中,你可以使用STM32CubeIDE提供的调试功能来调试你的代码。一旦代码调试完成,你可以使用ST-Link或其他下载器将代码下载到STM32C8T6上运行。 希望以上笔记对你学习STM32C8T6有所帮助!如果你有任何进一步的问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值