嵌入式系统与应用实验报告.docVIP

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌 入 式 系 统 与 应 用 实 验 报 告 班级:网络111 姓名:石长江 学号:201100824123 实验一 汇编指令试验 一、实验目的 ?? 掌握ARM7TMDI 汇编指令的用法,并能编写简单的汇编程序; ?? 学习ARM 微控制器的16 位Thumb 汇编指令的使用方法 ?? 掌握指令的条件执行 二、实验设备 ?? 硬件:嵌入式实验平台一套、仿真器一个、PC 机一台。 ?? 软件:Windows 98/2000/NT/XP 操作系统、仿真器驱动程序、ADS 开发软件一套。 三、实验内容 分别使用ARM、Thumb 指令ADD,MOV,CMP,B 计算1+2+3+…+N 的值。 四、实验原理 ARM 处理器共有两种工作状态: ?? ARM 32 位,这种状态下执行字对准的ARM 指令。 ?? Thumb 16 位,这种状态下执行半字对准的Thumb 指令。 注意:ARM 和Thumb 之间状态的切换不影响处理器的模式或寄存器的内容。 ARM 处理器在两种工作状态之间可以切换。 (1) 进入Thumb 状态。当操作数寄存器的状态位0 为1 时,执行BX 指令进入Thumb 状 态。如果处理器在Thumb 状态进入异常,则当从异常出来(IRQ、FIQ、Undef、Abort、SWI) 返回时,自动切换到Thumb 状态。 (2)进入ARM 状态。当操作数寄存器的状态位0 为0 时,执行BX 指令进入ARM 状态。处 理器进行异常处理(IRQ、FIQ、Undef、Abort、SWI)。在此情况下,把PC 放入异常模 式链接寄存器中。从异常向量地址开始执行也可以进入ARM 状态。 Thumb 状态下的寄存器集是ARM 状态下寄存器集的子集。程序员可以直接访问8 个通用 寄存器(R0-R7)、PC、SP、LR 和CPSP。每一种特权模式都有一组SP、LR 和SPSR。 ?? Thumb 状态的R0-R7 与ARM 状态的R0-R7 一致。 ?? Thumb 状态的CPSR 和SPSR 与ARM 状态下的CPSR 和SPSR 一致。 ?? Thumb 状态的SP 映射到ARM 状态的R13。 ?? Thumb 状态的LR 映射到ARM 状态的R14。 ?? Thumb 状态的PC 映射到ARM 状态的PC(R15)。 本程序使用R0 保存结果,所以一开始就要初始化为0;循环执行R0=R0+R1,R1 为循环计 数器,从1 开始计数,每一次循环R1 加1;当循环计数器R1 的值到达N 时,运算结束。 五、实验操作步骤 1.启动ADS1.2,使用ARM Execuatable Image 工程模板建立一个工程ASM_Project。 2.建立源文件test2.s,编写实验程序,然后添加到工程中(ARM 指令和Thumb 指令实验 的test2.s 程序源码分别见下清单) 。 3.设置工程链接地址RO Base 为0x0C000000 4.编译链接工程,选择【Project】-【Debug】,启动AXD 进行调试。 5.打开寄存器窗口(Processor Registers),选择Current 项监视各寄存器的值。 6.单步运行程序,注意执行BX R0 指令前后CPSR 寄存器的T 位。 说明:在寄存器窗口的CPSR 寄存器,大写字母的位表示该位为1,小写字母的位表示该 位为0(比如“T”表示T 位为1,“t”表示T 位为0)。 7.理解并掌握本实验原理及程序,完成练习题 六、实验参考程序 Thumb 汇编指令实验的参考程序代码清单 ;文件名:test.s ;功能:计算1+2+3+…+N 的值 N EQU 50 定义N的值为50 AREA testcode,CODE,READONLY 区域名为testcode,代码,只读 ENTRY 入口 CODE32 ARM_CODE LDR SP,=0x40003F00 sp=0x40003F00 ADR R0,THUMB_CODE+1 将分支目标地址送R0,使R1的bit[0]=1 BX R0 分支并且

文档评论(0)

mtyi297 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档