ARM系统硬件设计基础课件.ppt

ARM系统硬件设计基础课件.ppt

ID:57011703

大小:217.00 KB

页数:34页

时间:2020-07-26

ARM系统硬件设计基础课件.ppt_第1页
ARM系统硬件设计基础课件.ppt_第2页
ARM系统硬件设计基础课件.ppt_第3页
ARM系统硬件设计基础课件.ppt_第4页
ARM系统硬件设计基础课件.ppt_第5页
资源描述:

《ARM系统硬件设计基础课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章ARM系统硬件设计基础主要内容1324ADS1.2集成开发环境简介基于ARM的汇编语言程序设计基于ARM的硬件启动程序基于ARM的C语言与汇编语言混合编程5印制电路板制作简介4.1ADS1.2集成开发环境简介ADS的英文全称为ARMDeveloperSuite,是ARM公司推出的新一代ARM集成开发工具。ADS由六个部分组成,分别是:代码生成工具集成开发环境调试器指令集模拟器ARM开发包ARM应用库4.1.1ADS1.2集成开发环境下工程的创建使用ADS创建工程的步骤:新建工程“File

2、New…”设置目标及其参数“Edit

3、D

4、ebugSettings…”向工程中添加文件“Project

5、AddFiles”4.1.2ADS1.2集成开发环境下进行仿真和调试的方法在Codewarrior中,如果工程编译成功,将产生一个后缀为.axf的映像文件,接下来就可以使用AXDDebugger进行调试。常用调试按钮主要内容1324ADS1.2集成开发环境简介基于ARM的汇编语言程序设计基于ARM的硬件启动程序基于ARM的C语言与汇编语言混合编程5印制电路板制作简介4.2.1ARM汇编器支持的伪指令伪指令是ARM汇编语言程序中的一些特殊指令助记符,这些助记符与指令系统的助记

6、符不同,没有相对应的操作码,它们所完成的操作称为伪操作。伪指令在源程序中的作用是为完成汇编程序做各种准备工作的,这些伪指令仅在汇编过程中起作用,一旦汇编结束,伪指令的使命就完成了。ARM汇编器支持的伪指令包括:符号定义伪指令、数据定义伪指令、汇编控制伪指令、宏指令以及其他伪指令。分类指令举例符号定义伪指令GBLA/GBLL/GBLS/LCLA/LCLL/LCLS/SETA/SETL/SETS/RLISTGBLATest1;定义一个名为Test1的全局数值字变量数据定义伪指令DCB/DCW/DCD/DCFD/DCFS/DCQ/SPACE

7、/MAP/FIELDstrDCB“Thisisatest”;分配起始地址为str的一段连续字节存储单元存放字符串汇编控制伪指令IF/ELSE/ENDIF/WHILE/WEND/IFTest=TRUE;如果条件成立指令序列1;执行指令序列1ELSE;否则执行指令序列2指令序列2ENDIF宏指令MACRO/MEND/MEXITMACROSeg指令序列MEND;定义一个名为Seg的宏指令其他伪指令AREA/ALIGN/CODE16/CODE32/ENTRY/END/EQU/EXPORT/GLOBAL/IMPORT/EXTERN/GET/IN

8、CLUDE/INCBINAREAInit,CODE,READONLY,ALIGN=3;定义了一个代码段,段名为Init,属性为只读,并指定其后的指令为8(23)字节对齐。ARM汇编器支持的常见伪指令4.2.2基于ARM的汇编语言语句格式ARM汇编语言的语句格式[标号][指令或伪指令][;注释]标号是代表地址的符号,必须在一行的顶格书写,其后不能添加冒号“:”,而所有指令均不能顶格书写。ARM汇编语言对标识符的大小写敏感,书写标号及指令时字母大小写要一致。在ARM汇编语言中,ARM指令、伪指令、寄存器名等可以全部大写或者全部小写,但不能

9、大小写混合使用。为了使源文件易读,可以将一条长的指令通过使用反斜杠字符“”将其分成几行书写。每行从第一个分号开始到本行结束为注释内容,所有的注释内容均被汇编起忽略。4.2.3ARM汇编语言程序的基本结构在ARM汇编语言程序中,以程序段为单位来组织代码。段是相对独立的指令或数据序列,具有特定的名称。段可以分为代码段和数据段,代码段的内容为执行代码,数据段存放代码运行时所需的数据。可执行映像文件通常由以下几部分构成:一个或多个代码段,代码段为只读属性。零个或多个包含初始化数据的数据段,数据段的属性为可读写。零个或多个不包含初始化数据的数

10、据段,数据段的属性为可读写。一个含有子程序调用的代码段的例子AREAInit,CODE,READONLYENTRYLDRR0,=0x3FF5000LDRR1,0x0fSTRR1,[R0]LDRR0,=0x3F50008LDRR1,0x1STRR1,[R0]BLPROC;子程序调用…PROC;子程序开始…MOVPC,LR;从子程序返回…END一个数据段的例子AREADataArea,DATA,NOINIT,ALIGN=2DISPBUFSPACE200RCVBUFSPACE200…其中DATA为数据段的标识。4.2.4基于ARM的汇编语言

11、程序举例举例:连续发送128个ASCII字符的汇编语言的例子…;呼叫子程序UARTbUARTUART;子程序开始ldrr0,=GPHCON;设置GPIO(RxD0,TxD0引脚)ldrr1,=0x2afaaastrr1,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。