DSP28335四路PWM移相异常处理与中断向量解析
需积分: 48 37 浏览量
更新于2024-08-06
收藏 1MB PDF 举报
"Cortex-M0权威指南 Cortex-M0参考手册"
本文主要介绍了基于DSP28335处理器的异常处理机制,特别是针对Cortex-M0内核的中断和故障管理。Cortex-M0是ARM公司设计的一种低功耗、高性能的微控制器核心,广泛应用于嵌入式系统。
在Cortex-M0处理器中,异常处理被分为不同类型的中断和故障,具有不同的优先级和处理方式。异常类型包括:
1. **复位**:这是最高优先级的异常,处理器在上电或复位时进入复位状态,向量地址为0x00000004。
2. **非 maskable interrupt (NMI)**:NMI是一种不可屏蔽的中断,优先级仅次于复位,向量地址为0x00000008。
3. **HardFault**:HardFault是系统发生的严重错误,用于处理其他异常处理程序无法处理的情况,向量地址为0x0000000C。
4. **保留异常**:异常编号4-10和12-13是保留的,不供常规使用。
5. **SVCall (Supervisor Call)**:这是一种软件触发的服务调用,通常用于系统级操作,其优先级可配置,向量地址为0x0000002C。
6. **PendSV (Pending Supervisor Call)**:用于实现任务切换或高级调度,优先级可配置,向量地址为0x00000038。
7. **SysTick**:系统定时器中断,常用于实时操作系统(RTOS)的时基,优先级可配置,向量地址为0x0000003C。
8. **IRQ (Interrupt Request)**:中断编号16及以上的中断,中断优先级可配置,向量地址从0x00000040开始,按4字节步长递增。
异常处理程序分为三类:
- **中断服务程序(ISR)**:用于处理IRQ0到IRQ31的中断事件。
- **故障处理程序**:HardFault是唯一由故障处理程序处理的异常。
- **系统处理程序**:NMI、PendSV、SVCall、SysTick和HardFault由系统处理程序处理。
处理器在异常触发后,可能会执行一些条件指令,然后跳转到相应的异常处理程序。异常的优先级可以通过中断优先级寄存器进行配置,允许软件根据需求调整中断处理的顺序。
**向量表**是处理器在异常发生时查找处理程序地址的关键数据结构。它包含了复位时的堆栈指针初始值以及所有异常向量的地址。每个向量的最低有效位必须为1,表示异常处理程序是用Thumb指令集编写的。
这个资料来源于广州周立功单片机发展有限公司,提供Cortex-M0的参考手册,帮助用户理解和使用该处理器进行嵌入式开发。该公司提供销售和服务支持,并在多个城市设有办事处,方便用户获取技术支持和产品购买。
189 浏览量
173 浏览量
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
2022-07-14 上传
2022-07-14 上传
幽灵机师
- 粉丝: 35
- 资源: 3891
最新资源
- Raspberry Pi OpenCL驱动程序安装与QEMU仿真指南
- Apache RocketMQ Go客户端:全面支持与消息处理功能
- WStage平台:无线传感器网络阶段数据交互技术
- 基于Java SpringBoot和微信小程序的ssm智能仓储系统开发
- CorrectMe项目:自动更正与建议API的开发与应用
- IdeaBiz请求处理程序JAVA:自动化API调用与令牌管理
- 墨西哥面包店研讨会:介绍关键业绩指标(KPI)与评估标准
- 2014年Android音乐播放器源码学习分享
- CleverRecyclerView扩展库:滑动效果与特性增强
- 利用Python和SURF特征识别斑点猫图像
- Wurpr开源PHP MySQL包装器:安全易用且高效
- Scratch少儿编程:Kanon妹系闹钟音效素材包
- 食品分享社交应用的开发教程与功能介绍
- Cookies by lfj.io: 浏览数据智能管理与同步工具
- 掌握SSH框架与SpringMVC Hibernate集成教程
- C语言实现FFT算法及互相关性能优化指南