- 1、本文档共34页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ARM7的嵌入式系统实践教程
2.1编写汇编语言程序 一、目的(1) 学会使用ADS1.2编写、调试汇编语言程序。(2) 掌握使用存取指令读写存储器的编程方法。 (3) 掌握单步、分段调试程序方法。二、步骤1、启动IDE在Windows XP系统窗口,执行【所有程序】|ARM Developer Suite V1.2|CodeWarrior For ARM Developer Suite 菜单命令,打开IDE二、步骤2、创建工程在IDE窗口中,执行File|New菜单命令,打开New窗口(A)选择工程模板:ARM Executable Image(B)为工程起一个名字: Exp2101(C)配置工程存储路径:G:\Exp2101(D)击【确定】按钮,完成工程创建工程模板工程名工程存储路径二、步骤2、创建工程工程管理窗口生成目标文件选项卡链接顺序选项卡二、步骤2、创建工程工程管理存储路径内容数据目录工程文件输出文件存储路径二、步骤3、创建源程序文件在IDE窗口中,执行File|New菜单命令,打开New窗口(A)选择File选项卡(B)为文件起一个名字: Exp.s(C)配置文件存储路径为工程存储路径:G:\Exp2101(D)使Add to Project复选框处于选中状态(E)Targes栏所有选项全部选中(F)击【确定】按钮,文件创建完毕二、步骤3、创建源程序文件源程序管理窗口二、步骤4、编写源程序(A)在源程序管理窗口中,录入源程序代码(B)执行菜单命令File|Save保存源程序二、步骤5、配置编译链接参数(A)执行菜单命令Edit|DebugRel Settings,打开DebugRel Settings窗口(B)在DebugRel Settings Panels中,选中Linker|ARM Linker项二、步骤(5)、配置编译链接参数(A)在ARM Linker子窗口中,选择Output选项卡(B)在Simple Image组内RO Base配置为0 RW Base配置为0二、步骤5、配置编译链接参数(A)在ARM Linker子窗口中,选择Options选项卡(B)在Image Entry Point录入0击按钮OK,参数配置完毕二、步骤6、编译程序(A)打开源程序编辑窗口二、步骤6、编译程序(B)执行菜单Project|Compile命令,对源程序编译操作,如有错误,显示如下错误信息窗口(C)错误信息:Unknown opcode操作码错误,AREA Exp101,code,READONLY指令前无空格(D)点击错误信息位置,进入源程序编辑窗口,将指令AREA Exp101,code,READONLY指令前加入空格一条错误信息错误信息位置二、步骤6、编译程序(E)重复执行编译、改错操作,直至编译无错误。(F)编译Exp.s后生成的输出文件Exp.o保存到 C:\Exp101\Exp101_Data\Debug\ObjectCode中,如下图生成目标输出文件二、步骤7、链接程序(A)执行Project|Make菜单命令,进行链接操作,生成的可执行镜像文件保存在C:\Exp101\Exp101_Data\Debug目录下,如下图:生成目标镜像文件二、步骤8、调试程序(1)启动Axd Debugger软件:IDE工程管理窗口中,鼠标点击 按钮,启动调试器,如下图: 要调试的源程序文件名PC二、步骤8、调试程序(2)显示观察窗口(A)执行Processor Views|Registers菜单命令,显示寄存器窗口,如下图:(B)执行Processor Views|Memory菜单命令,显示存储器窗口,如下图:寄存器窗口存储器窗口二、步骤8、调试程序(2)调试语句MOV R1,R1,ROR #8(A)程序指针PC定位到指令MOV R1,R1,ROR #8在指令MOV R1,R1,ROR #8前设置一断点鼠标移到行号12前空白处,双击鼠标, 则在指令MOV R1,R1,ROR #8前设置一断点,如下图:要调试的语句断点二、步骤8、调试程序(2)调试语句MOV R1,R1,ROR #8(B)程序指针PC定位到指令MOV R1,R1,ROR #8运行程序,使程序指针PC指向指令MOV R1,R1,ROR #8鼠标点击按钮,执行程序,程序指针PC指向指令MOV R1,R1,ROR #8程序指针PC、断点要调试的语句二、步骤8、调试程序(2)调试语句MOV R1,R1,ROR #8(C) 指令MOV R1,R1,ROR #8调试前已知条件查看寄存器窗口 ,得知R1=0令MOV R1,R1,ROR #8功能为,R1循环右移8个二进制位,理论结果R1=0存器名称寄
文档评论(0)