电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > PPT文档下载
分享到微信 分享到微博 分享到QQ空间

ARM嵌入式系统原理及应用开发 教学课件 ppt 作者 谭会生 6-10 第9章

  • 资源ID:89343014       资源大小:791.50KB        全文页数:50页
  • 资源格式: PPT        下载积分:10金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要10金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

ARM嵌入式系统原理及应用开发 教学课件 ppt 作者 谭会生 6-10 第9章

,第9章 基于ARM开发工具的基础实验,9.1 ARM汇编指令使用实验基本数学/逻辑运算 9.2 ARM汇编指令使用实验存储区数据块的传送 9.3 汇编语言与C语言的相互调用实验随机数发生器 9.4 C语言程序组件应用实验PWM直流电机控制,9.1 ARM汇编指令使用实验基本数学/逻辑运算 一、实验目的 1初步学会使用ARM ADS / Embest IDE for ARM 开发环境及ARM软件模拟器。 2通过实验掌握数据传送和基本数学/逻辑运算的ARM汇编指令的使用方法。 二、实验设备 1硬件:PC机。 2软件:ADS 1.2 / Embest IDE 200X集成开发环境。,三、实验内容 1熟悉ADS 1.2 / Embest IDE 200X开发环境的使用,使用LDR/STR和MOV等指令访问寄存器或存储单元,实现数据的加法运算。具体实验参考程序如下: /* armasm1a.s */ .EQU X, 45 /*定义变量X,并赋值为45*/ .EQU Y, 64 /*定义变量Y,并赋值为64*/ .EQU STACK_TOP, 0X1000 /*定义栈顶0X1000*/ .GLOBAL _START .TEXT,_START: /*程序代码开始标志*/ MOV SP, #STACK_TOP MOV R0, #X /*X的值放入R0*/ STR R0, SP /*R0的值保存到堆栈*/ MOV R0, #Y /*Y的值放入R0*/ LDR R1, SP /*取堆栈中的数到R1*/ ADD R0, R0, R1 STR R0, SP STOP: B STOP /*程序结束,进入死循环*/ .END,2使用ADD/SUB/LSL/LSR/AND/ORR等指令,完成基本数学/逻辑运算。具体实验参考程序如下: /* armasm1b.s */ .EQU X, 45 /*定义变量X,并赋值为45*/ .EQU Y, 64 /*定义变量Y,并赋值为64*/ .EQU Z, 87 /*定义变量Z,并赋值为87*/ .EQU STACK_TOP, 0X1000 /*定义栈顶0X1000*/ .GLOBAL _START .TEXT _START: /*程序代码开始标志*/ MOV R0, #X /*X的值放入R0*/ MOV R0, R0, LSL #8 /*R0的值乘以2的8次方 */ MOV R1, #Y /*Y的值放入R1*/,ADD R2, R0, R1, LSR #1 /*R1的值除以2再加上R0后的值放入R2*/ MOV SP, #0X1000 STR R2, SP MOV R0, #Z /*Z的值放入R0*/ AND R0, R0, #0XFF /*取R0的低八位*/ MOV R1, #Y /*Y的值放入R1*/ ADD R2, R0, R1, LSR #1 /*R1的值除以2再加上R0后的值放入R2*/ LDR R0, SP /*Y的值放入R1*/,MOV R1, #0X01 ORR R0, R0, R1 MOV R1, R2 /*Y的值放入R1*/ ADD R2, R0, R1, LSR #1 /*R1的值除以2加上R0的值放入R2*/ STOP: B STOP /*程序结束,进入死循环*/ .END,四、实验操作步骤 1新建工程。先建立一个实验文件夹,如EARMSYarmasm1;然后运行Embest IDE集成开发环境,选择FileNew Workspace菜单项,弹出一个对话框,输入工程名armasm1a/armasmlb等相关内容;最后单击OK按钮,将创建一个新工程,并同时创建一个与工程名相同的工作区。此时在工作区窗口将能打开该工作区和工程。 2建立源文件。选择FileNew菜单项,弹出一个新的、没有标题的文本编辑窗口,输入光标位于窗口中第一行,按照实验参考程序编辑输入源文件代码。编辑完后,保存文件armasmla. s。,3添加源文件。选择ProjectAdd To ProjectFile项或单击工程管理窗口中的相应右键快捷菜单命令,打开文件选择对话框,在工程目录下选择刚才建立的源文件armasmla.s/armasmlb.s。 4基本设置。选择ProjectSettings菜单项或按下快捷键Alt + F7,弹出工程设置对话框;在工程设置对话框中选择Processor属性页,按照使用要求对目标板所用处理器进行设置。 5生成目标代码。选择BuildBuild armasmla菜单项或按下快捷键F7,生成目标代码。此步骤也可以通过单击工具栏上相应按钮来完成。,6调试设置。选择选择ProjectSettings菜单项或按下快捷键Alt + F7,弹出工程设置对话框;在工程设置对话框中,若选择Remote页面则对调试设备模块进行设置;若选择Debug页面则对调试模块进行设置。 7选择DebugRemote Connect连接软件仿真器,执行Download命令下载程序,并打开寄存器窗口。 8打开存储器窗口,观察地址0x80000x801F的内容以及地址0xFF00xFFF的内容。 9单步执行程序,并观察和记录寄存器与存储器值的变化。 10结合实验内容和相关资料观察程序运行,通过实验加深理解ARM指令的使用。,五、实验报告 1画出程序armasmla.s和armasmlb.s的实现框图,并说明其各自实现的功能。 2记录程序armasmla.s/armasmlb.s单步运行时有关寄存器与存储器的值,并分析结果是否正确。,9.2 ARM汇编指令使用实验存储区数据块的传送 一、实验目的 1熟悉ARM ADS 1.2 / Embest IDE for ARM 开发环境及ARM软件模拟器的使用。 2通过实验掌握使用LDM/STM、B、BL等指令完成较为复杂的存储区访问和分支程序的方法,学习使用条件码,加强对CPSR的认识。 二、实验设备 1硬件:PC机。 2软件:ADS 1.2 / Embest IDE 200X集成开发环境。,三、实验内容 设计并调试一个存储区数据块的传送程序,具体数据块的传送要求为:将数据从源数据区snum复制到目标数据区dnum,数据的个数num假定为20,复制时以8个字为单位进行,对于最后不足8个字的数据,以字为单位进行复制。,用ARM汇编语言设计该数据块复制程序的设计思想如下:先将源数据区的起始地址、目标数据区的起始地址以及数据个数赋给选定的寄存器R0、R1、R2,再根据每次批量/单个复制数据的个数R3确定用于数据复制的中间寄存器R4R11,之后先将源数据区的若干个数据批量装载到中间寄存器中,再将中间寄存器的数据批量存储到目的数据存储区,随后进行数据是否复制完毕的判断,若未复制完毕,则修改有关操作数据地址,并重复前面的数据复制操作,否则,终止操作,程序结束。参考程序如下:,.GLOBAL _START .TEXT .EQU NUM, 20 /*定义需要复制的字数据个数NUM为20*/ _START: LDR R0, =SRC /*将R0指向源数据区的起始地址*/ LDR R1, =DST /*将R1指向源数据区的起始地址*/ MOV R2, #NUM /*将需要复制的字数据个数存放在R2中*/ MOV SP, #0X400 /*将堆栈指针SP指向#0X400*/ BLKCOPY: MOVS R3, R2, LSR #3 /*R2的值除以8的结果存入R3*/ BEQ COPYWORDS /*若Z=1,则转COPYWORDS*/ STMFD SP!, R4-R11 /*将R4R11的内容存入堆栈进行保护*/,OCTCOPY: LDMIA R0!, R4-R11 /*从源数据区装载8个字数据到R4R11*/ STMIA R1!, R4-R11 /*将R4R11中的8个字数据存入目的数据区*/ SUBS R3, R3, #1 /*每复制一次R3减1*/ BNE OCTCOPY /*若R3不等于0,则转移到OCTCOPY*/ LDMFD SP!, R4-R11 /*将堆栈内容恢复到R4R11*/ COPYWORDS: ANDS R2, R2, #7 /*计算需复制的奇数个字的个数*/ BEQ STOP /*若R2=0则停止*/,WORDCOPY: LDR R3, R0, #4 /*将源数据区的一个字装载至R3*/ STR R3, R1, #4 /*将R3中的数据存到目的数据区*/ SUBS R2, R2, #1 /*数据传输控制计数器减1*/ BNE WORDCOPY /*若R2不等于0,则转移到WORDCOPY*/ STOP: B STOP .LTORG SRC: /*源数据区起始地址标号*/ .LONG 1, 2,3 ,4, 5, 6, 7, 8, 1, 2, 3, 4, 5, 6, 7, 8, 1, 2, 3, 4 DST: /*目的数据区起始地址标号*/ .LONG 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 .END,四、实验操作步骤 1新建工程。先建立一个实验文件夹,如EARMSYarmasm2;然后运行Embest IDE集成开发环境,选择FileNew Workspace菜单项,弹出一个对话框,输入工程名ARMcode等相关内容;最后单击OK按钮,将创建一个新工程,同时创建一个与工程名相同的工作区。此时在工作区窗口将打开该工作区和工程。 2建立源文件。选择FileNew菜单项,弹出一个新的、没有标题的文本编辑窗口,输入光标位于窗口中第一行,按照实验参考程序编辑输入源文件代码。编辑完后,保存文件armasm2.s。,3添加源文件。选择ProjectAdd To ProjectFile项,或单击工程管理窗口中的相应右键快捷菜单命令,打开文件选择对话框,在工程目录下选择刚才建立的源文件armasm2.s。 4基本设置。选择ProjectSettings菜单项或按下快捷键Alt+F7,弹出工程设置对话框;然后在工程设置对话框中,选择Processor属性页,对目标板所用处理器进行设置。 5生成目标代码。选择BuildBuild armasm2菜单项或按下快捷键F7,生成目标代码。也可以单击工具栏上的相应按钮来完成。,6调试设置。选择ProjectSettings菜单项或按下快捷键Alt+F7,弹出工程设置对话框;在工程设置对话框中,若选择Remote页面则对调试设备模块进行设置;若选择Debug页面,则对调试模块进行设置。 7选择DebugRemote Connect连接软件仿真器,执行Download命令下载程序,并打开寄存器窗口。 8打开存储器窗口,观察地址0x80540x80A0的内容以及地址0x80A40X80F0的内容。 9单步执行

注意事项

本文(ARM嵌入式系统原理及应用开发 教学课件 ppt 作者 谭会生 6-10 第9章)为本站会员(E****)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.