打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
uboot阅读笔记之cpu工作模式(SVC32)

uboot阅读笔记之cpu工作模式(SVC32)

日期:2008.9.25
目的:熟悉S3C2410初始化过程细节
题目:设置cpu工作在超级保护模式(SVC32)
明细:

@set the cpu to SVC32 mode

mrs r0,cpsr  

@把CPSR内容存入r0.使用了mrs指令:专用寄存器到通过寄存器的存取.
@CPSR当前程序状态寄存器格式如下:

31  30  29  28  27  26  25  24  ~ ~ ~ 8               0
___ ___ ___ ___ ___ ___ ___ ___  _ _ _ _  ___ ___ ___ ____ ____ ____ ____ ____
@| N | Z | C | V | * | * | * | * | *  * | I | F | T | M4 | M3 | M2 | M1 | M0 |
@

bic r0,r0,#0x1f 

@bic指令(bit clear): r0:= r0 and (not op2).上边的指令目的是把bit0~bit4清零.

orr r0,r0,#0xd3

@r0:= r0 or 0xd3 . 以上三条指令执行后r0值为:**** **** **** **** **** ***** 11*1 0011

msr cpsr,r0  

@把r0存于cpsr.注意:msr指令是专用的通用寄存器到特殊功能寄存器的指令与mrs对应

说明:通过上边的指令可以看到,实现了两个功能.1,disable 外部中断(IRQ)与快速中断(FIR).2,把系统设为SVC32状态(超级保护)即M4~M1=10011

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
ARM学习(3) 异常模式学习(CortexR5)
ARM linux的中断处理过程
程序状态字访问指令
2.4.4 程序状态寄存器访问指令
bootloader之ARM的处理器模式
arm处理器异常处理-swi
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服