您的位置 首页 观点

ARM反常处理程序

实验目的:掌握ARM异常处理过程。理解SWI程序的结构。掌握从应用程序中调用SWI异常的方法。实验一:使用SWI异常设计字符串输出程序本实验利…

试验意图:
把握ARM反常处理进程。
了解SWI程序的结构。
把握从应用程序中调用SWI反常的办法。

试验一:运用SWI反常规划字符串输出程序
本试验使用SWI反常输出字符串“hello world!”,选用ARMualtor方法调试,选用ARM7作为方针处理器。

序号 履行指令 指令履行后的改变状况
寄存器 存储空间
R0 R1 R2 R3 SP LR PC 0xB000 0xCFFC 0xCFF8 0xCFF4 0xCFF0 0xCFEC
0 —-
1
2
3
4
5



SYS_WRITEC EQU &3

AREA STR_OUT,CODE,READONLY
ENTRY
START
MOV SP,#0xD000
MOV R1,#0xB000
ADR R2,TEXT
BL STROUT
MOV R0,#0x18
LDR R1,=0x20026
SWI 0x123456 ;semihost 软中止调用

STROUT
STMFD SP!,{R0-R3,LR}
CHROUT
LDRB R3,[R2],#1
CMP R3,#0
STR R3,[R1]
MOV R0,#SYS_WRITEC
SWINE 0x123456
BNE CHROUT
LDMFD SP!,{R0-R3,PC}

LTORG
TEXT DCB “Hello World!”,0x0a,0x0d,0x0
END


试验二:规划SWI反常处理程序(ARM9)
本试验规划的SWI反常处理程序分为两级:榜首级SWI反常处理程序取得SWI的功用号,由汇编程序完结;第二级SWI反常处理程序完结详细的SWI反常操作,由c程序完结。
阅读程序,画出程序间调用的结构图。(11.4)

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/news/guandian/262736.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部