STM32之中断管理
来源:互联网 发布:姚明41分比赛数据 编辑:程序博客网 时间:2024/05/19 20:19
关于STM32的中断,相信大家玩过单片机的朋友就知道,中断是MCU的一大优点,使MUC工作能够分清事情的”轻重缓急“ ,从而达到处理事情井井有条;
今天就讲解下STM32-Cortex-M3内核的中断管理机制,其他处理器的也类似;M3中F103系列的有60个可屏蔽的中断和16个内核级别的中断;
大家知道,操作一款MCU 其实实质就是操作的寄存器,而寄存器有机的结合起来就实现了特定的功能;中断系统也不例外,下面来认识一下中断系统中的几个重要的寄存器;
1. ISER[8](Interrupt Set-Enable Registers),就是中断使能寄存器组,这个数组有8个成员,每个成员是32位的寄存器;写1有效,写0无效;
2. ICER[8](Interrupt Clear-Enable Registers),就是中断清除使能寄存器组,这个数组有8个成员,每个成员是32位的寄存器;写1清除对应ISER寄存器上的寄存器位,写0无效;
3. ISPR[8]:inerrupt Set-Pending Registers ,即中断挂起寄存器;写1有效,即可将正在执行的中断挂起,而去执行另外的高优先级别或者是同级别的中断,写0则无效;
4. ICPR[8]:interrupt Clear-Pending Registers ,即中断清除挂起寄存器;写1有效,即可将正在执行的中断解挂起者,写0则无效;
5.IABR[8]:Interrupt Active Bit Registers,中断激活标志位;标志位为1时,则对应该中断正在执行;
6.IP[240]:Interrupt Priority Registers,中断优先级控制寄存器组,具有240个8bit的寄存器,每个寄存器对应着8个bits,而f103是M3内核,只用了前面60个寄存器;只用高4位【7:4】有效;
7.SCB->AIRCR 寄存器,是一个设置中断优先级分组的寄存器,只10:8位 有效; 111 --对应 iP寄存器中0:4 ,即0位抢占位,4时响应优先级;
总而已之,要使用中断,必须先设置中断优先级分组,NVIC_PrioityGroupConfig();
再设置 NVIC_Init();
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- STM32之中断管理
- STM32之CAN---中断管理浅析
- STM32之CAN---中断管理浅析
- STM32之CAN--中断管理浅析
- STM32之CAN---中断管理浅析
- STM32之CAN---中断管理浅析
- STM32之CAN---中断管理浅析
- STM32中断管理
- stm32之EXTI中断
- STM32之中断
- STM32之EXTI(中断)
- stm32 固件库之:中断
- stm32之中断系统
- stm32之定时器中断
- STM32 NVIC 中断优先级管理
- STM32 NVIC 中断优先级管理
- STM32的中断分级管理
- STM32中断优先级分组管理
- VS2015+SDL2+FFmpeg配置
- 数组的初始化两种方式?初始化常见错误
- [Vue][自定义事件]关于组件prop双向绑定的理解和程序调试
- Delcam DentMILL 2015 R1(牙科CAM加工编程系统) 官方版下载
- 【学习C++】学习C++ -> 二维数组
- STM32之中断管理
- 4种jdk自带的常用线程池简单介绍
- bzoj4530 [Bjoi2014]大融合 (LCT维护子树信息)
- objdump
- 计算机网络-001-计算机网络在信息时代中的作用
- 初识依赖注入和Ioc容器
- leetcode_27. Remove Element ? 待解决
- 第九周 项目3 利用二叉树遍历思想解决问题
- 浅谈压缩感知(一):背景简介