第10讲_嵌入式开发环境.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10讲_嵌入式开发环境

* ARM汇编开发 GNU汇编语法及规则 3).equ 伪操作符。 .equ symbol, expr expr为基于寄存器的地址、程序中的标号、32位的地址常量或位的常量; symbol为.equ伪操作为expr定义的字符名称。 【注】相当于C语言中的宏定义。 * ARM汇编开发 GNU汇编语法及规则 4).global 伪操作符。 .global symbol 声明一个可以被其他文件引用的全局符号; 相当于C语言中的全局变量。 * 5).ltorg伪操作符 用于声明一个文字池,在使用LDR加载指令的时候,要在适当的地址加入.ltorg声明文字池,这样就会把要加载的数据保存在文字池内,再用ARM的加载指令读出数据。 若没有使用.ltorg声明文字池,则汇编器会在程序末尾自动声明。 ARM汇编开发 GNU汇编语法及规则 * ARM汇编开发 【例】用汇编语言实现:从源地址拷贝num个字(num*4个子节)的数据到目的地址dst中。 利用ADT IDE进行编译、调试,开发流程与前面的方法基本类似。 * ARM汇编开发 设置软件仿真器 * ARM汇编开发 设置链接脚本文件 * ARM汇编开发 * ARM汇编开发 * ARM汇编开发 编译、调试、下载后,执行程序,可观察到寄存器和存储器的变化情况。 * C与汇编混合编程 汇编切换到C C语言中定义的函数名在汇编语言中可以作为标号使用,因此,在汇编中可以使用程序分支指令直接转移到C中定义的函数中。 【如】从汇编跳转到C的main函数中: * C与汇编混合编程 汇编中实现函数 程序间的相互调用最主要的是解决参数传递问题。应用程序之间使用中间寄存器及数据栈来传递参数,其中,第1-4个参数使用r0-r3传递,多于4个参数使用数据栈传递,输出参数由r0传递,如: 相当于声明的C语言函数: 汇编中可以用BL asse_add指令调用该函数。 * C与汇编混合编程 C调用汇编中的函数 仍以asse_add函数为例,可在C语言中声明该函数在其他文件中实现: 然后就可以调用asse_add函数: * C与汇编混合编程 C语言中内嵌汇编 GCC支持大部分基本的内嵌汇编语言,如可采用内嵌汇编语言的方式来实现asse_add的功能: * C与汇编混合编程 【例】实现:从汇编语言切换到C语言代码,然后在C代码中分别使用内嵌汇编语言和汇编子函数的方法实现同一功能。 利用ADT IDE进行编译、调试,开发流程与前面的方法基本类似。 * C与汇编混合编程 asse.S文件 * C与汇编混合编程 main.c文件 C与汇编混合编程 设置入口文件 * C与汇编混合编程 编译、调试、下载后,执行程序,打开寄存器观察窗口和变量观察窗口,观察main函数中x、y值的变化。 第十讲 嵌入式开发环境 河南大学 计算机与信息工程学院 授课人:周毅 联系电话 Email:zhouyi@henu.edu.cn 计算机专业核心课程之一 * 嵌入式开发环境 ADT IDE开发流程 C与汇编混合编程 * ADT 嵌入式开发环境 ADT Emulator for ARM ADT IDE for ARM ADT:ARM Development Tools * ADT Emulator for ARM 通过JTAG 实现主机和目标机之间的调试支持功能。它无需目标存储器,不占用目标系统的任何端口资源。目标程序直接在目标板上运行,通过ARM 芯片的JTAG 边界扫描口进行调试,其仿真效果接近真实系统。 ADT 嵌入式开发环境 * ADT Emulator for ARM 主要特征: ◆ 支持ARM 核CPU。 ◆ 无需目标存储器,不占用目标系统的任何端口。 ◆ 2.5V/3.3V/5V 兼容电平接口。 ◆ 支持标准的14/20 针JTAG 接口。 ◆ 运行状态指示。 ◆ 与主机之间通过并口/USB接口连接。 ◆ 下载速度达到120Kbytes/S。 ◆ 支持ADS。 ◆ 支持GDB 调试。 ADT 嵌入式开发环境 * ADT 嵌入式开发环境 ADT IDE for ARM 包括一整套完备的开发和调试工具:源码编辑器、工程管理器、工程编译器、集成调试环境、ADT Emulator 调试接口等。用户可以在ADT IDE 开发环境中创建工程、打开工程,建立、打开和编辑文件,编译、连接、设置、运行、调试嵌入式应用程序。 * ADT 嵌入式开发环境 ADT IDE for ARM 包括以下工具: ◆ 源码编辑器(editor) ◆ 工程管理

文档评论(0)

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

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

1亿VIP精品文档

相关文档