单片机应用设计实践3-Cortex M3基础

单片机应用设计实践3-Cortex M3基础

ID:43487165

大小:94.00 KB

页数:8页

时间:2019-10-08

单片机应用设计实践3-Cortex M3基础_第1页
单片机应用设计实践3-Cortex M3基础_第2页
单片机应用设计实践3-Cortex M3基础_第3页
单片机应用设计实践3-Cortex M3基础_第4页
单片机应用设计实践3-Cortex M3基础_第5页
资源描述:

《单片机应用设计实践3-Cortex M3基础》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、1通用寄存器组1.1堆栈指针R13CM3共有两个堆栈指针,支持两个堆栈:主堆栈指针(MSP/SP_main)进程堆栈指针(PSP/SP_process)例:PUSH{R0}POP{R0}PUSH{R0-R7,R12,R14}POP{R0-R7,R12,R14}1.2连接寄存器R14(LR)例:main…BLfunction1…function1…BXLR1.3程序计数器R15(PC)PC值=当前指令地址+40x1000:MOVR0,PC;R0=0x1004PC的LSB总是读为0,因为CM3指令至少是半字对齐的。然而,在分支跳转时,无

2、论是直接写PC还是使用分支指令,都必须保证加载到PC中的数值是奇数(LSB=1),表明在Thumb状态下执行,否则将会产生一个fault异常。2特殊功能寄存器组xPSRPRIMASKFAULTMASKBASEPRICONTROL状态字寄存器控制字寄存器中断屏蔽寄存器特殊功能寄存器特殊功能寄存器只能被专用的MSR/MRS指令访问,并且没有与之相关联的访问地址2.1程序状态寄存器(xPSR)程序状态寄存器在其内部又被分为3个子状态寄存器应用程序PSR(APSR)中断号PSR(IPSR)执行PSR(EPSR)通过MRS/MSR指令,这3个

3、PSR可以单独访问,也可以组合访问。2.2中断屏蔽寄存器组这3个寄存器用于控制异常的使能和除能PRIMASK:1-关掉可屏蔽异常,只允许NMI和硬fault。0-开放FAULTMASK:1-除NMI外关掉所有异常。0-开放BASEPRI:9位,定义被屏蔽优先级的阀值。优先级大于等于此阀值的中断都被屏蔽。0-开放通过MRS/MSR指令在特权级下访问。2.3控制寄存器(CONTROL)控制寄存器用途为定义特权级别,选择当前使用的堆栈指针CONTROL[1]:0=选择主堆栈指针MSP1=选择进程堆栈指针PSPCONTROL[0]:0=特权

4、级的线程模式1-用户级的线程模式通过MRS/MSR指令在特权级下访问。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。