控制器 逻辑门 集成电路 缓存 微架构 总线
主页 正文

STM32中断类型详解与优化策略

对STM32中断的理解

 第一:STM32中断类型分为两种:抢占优先级和响应优先级。
准备优先级决定准备行为;也就是说,当系统响应扰动L时,如果异常H以更高的抢占优先级发生,H可以抢占L。
当多个具有相同抢占优先级的异常被触发时。
优先级较高的异常将首先得到响应。
如果准备优先级和响应优先级相同。
它们按照中断向量表中出现的顺序响应中断。
 第二:设置中断优先级需要明确两个值。
STM32将定义中断优先级的寄存器位减少到4位(AIRCR的高四位)这四个寄存器可以按五种方式分组:第0组:定义响应优先级的所有4位第1组:最高。
1位用于设置抢占优先级;最低3位用于定义响应优先级组2:最高2位用于定义抢占优先级;最低2位用于定义响应优先级组3:最高3位用于定义抢占优先级;最小1位用于设置响应优先级组4:全部4位都使用可以通过调用STM32固件库中的函数NVIC_PriorityGroupCo设置预设来确定优先级。
nfig()选择使用哪种优先级分组方法该函数的参数有以下五种类型:NVIC_PriorityGroup_0=>第0组NVIC_PriorityGroup_1=>第1组NVIC_PriorityGroup_2=>选择。
Group2NVIC_PriorityGroup_3=>选择Group3NVIC_PriorityGroup_4=>选择Group4中断优先级组仅用于为预优先级和响应优先级的高四位中的中断优先级寄存器号分配每个优先级号所占用的位数字。
 对于第二个问题,分别设置每个中断源的中断级别。
中断资源优先级只能在中断优先级寄存器中设置。
根据中断优先级组中指定的位数,必须在寄存器中设置相应的值。
如果选择中断优先级组3:最高3位用于设置抢占优先级,最低1位用于设置响应优先级;预投票偏好总共有8000至000个数据选择。
111此外,还有八个中断嵌套和两种类型的响应优先级:0和1。
总共有8*2=16个优先级。
  中间优先级分组当设置时每个中断源的准备优先级和响应优先级可以在指定位数内设置。
参考

stm32单片机中断应该怎么处理?

处理器中断是处理器中的一个重要机制,它允许处理器在程序执行期间暂停并在处理紧急事件后恢复执行。
中断提高处理器效率,实现实时事件处理,并支持程序并行化和嵌入式系统进程之间的切换。
STM32微控制器的中断架构包括中断和异常两种类型。
中断由外部或内部硬件触发,通过中断通道进入处理器;异常大多是由处理器内部软件引起的,例如错误或特权调用异常。
当异常或中断发生时,处理器设置一个特定的地址,即异常向量。
根据异常源,处理器有相应的输入地址,这些地址按优先级顺序形成异常向量表。
找到输入地址后,进入中断处理流程,处理器跳转到该地址并执行中断服务程序。
程序结束时,处理器自动恢复执行中断前的程序。
这个过程保证了中断处理的高效有序。

简述STM32的USART三种编程方式:轮询方式、中断方式、DMA方式?

USART是一种外围设备,CPU一般采用两种方式与外围设备通信:轮询和中断。
轮询指定是指CPU不断地查询外设的状态,并在某种状态下执行相应的操作。
以USART输出为例。
当发现USART处于非活动状态时,可以将写入输出寄存器。
继续询问状态,空闲时可以继续写入,直到传输完成。
中断方式是指当外设状态发生变化时,即事件发生后,中断程序响应相应的事件。
中断方式相对于轮询方式的优点是可以减轻CPU的负担。
使用DMA传输数据是中断模式下的一种处理方式,通常不称为特殊模式。
热门资讯
运算器
逻辑门电路有什么作用
内存条怎么看型号
杭州优质外贸公司名录精选
寄存器属于存储器吗
内存有哪几种规格
数字逻辑1是什么门
总线协议分为哪三类