ARM CM0 中断 优先级

<ARM Cortex-M0权威指南(中文) 高清扫描版.pdf>
程序设置 使能 中断A 和中断B,中断C,中断A的优先级 大于中断B的优先级 大于中断C的优先级

情况1:
当程序运行过程中,发送中断A,进入中断A的处理函数,
这个时候 如果发生中断 B,那么等中断A的处理函数退出之后,继续运行中断B的处理函数。

情况2:
当程序运行过程中,发送中断B,进入中断B的处理函数,
这个时候 如果发生中断 A,
如果允许中断嵌套,
如果不允许中断嵌套

情况3:
当程序运行过程中,发送中断B,进入中断B的处理函数,
这个时候 如果发生中断 A,
如果允许中断嵌套,进入中断A的处理函数,在运行中断A处理函数过程中,发生中断C,
中断A的处理函数 退出之后,怎么运行 ?
中断A运行过程中,又有一个比A优先级还高的中断发生怎么办 ?

如果不允许中断嵌套,在执行中断B的过程中,又产生了中断C

中断B的处理函数执行完毕之后,是先执行那个呢?

中断嵌套:

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

### ARM Cortex-M0处理器架构特性 #### 架构概述 ARM Cortex-M0微处理器采用高效能、低功耗的设计理念,主要面向资源受限的应用场景。该处理器具备精简的硬件设计,拥有较小的硅片面积以及较低的工作电压范围。 #### 主要组件 - **处理器内核**:作为核心部分,负责执行程序指令集[^2]。 - **嵌套向量中断控制器(NVIC)**:用于管理多个优先级不同的中断源,支持快速响应并处理突发事件。 - **调试子系统**:提供必要的工具来辅助开发人员进行软件测试与错误排查工作。 - **唤醒中断控制器(WIC, 可选配置)**:允许设备处于低能耗模式下仍能对外部事件做出及时反应。 - **JTAG/SWD 接口(可选配置)**:遵循 CoreSight 技术标准,便于实现在线编程及实时监控功能。 - **AHB Lite 总线接口单元**:确保内部各模块间的数据交换顺畅无阻;并通过 AMBA 高性能总线(AHB-Lite) 实现同外部存储器和周边装置之间的通讯连接。 #### 流水线结构特点 尽管不像更高级别的Cortex系列那样复杂,但是Cortex-M0依然采用了优化过的两阶段流水线机制,在保持简单的同时也实现了不错的效率提升效果[^3]。 ```c // 示例代码展示如何初始化NVIC寄存器以设置特定IRQ通道的优先级别 void NVIC_Init(uint8_t IRQn, uint8_t priority){ // 设置指定IRQ通道的优先级 NVIC_SetPriority((IRQn_Type)IRQn, (uint32_t)priority); } ``` #### 应用领域 由于其出色的性价比表现,ARM Cortex-M0被广泛应用于各种嵌入式控制系统之中,比如智能家居产品、物联网节点、便携医疗仪器以及其他对成本敏感且需要一定计算能力的小型化电子产品里。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值