(ARM嵌入式C编程基准的教程).ppt
文本预览下载声明
第一章习题与练习
1,嵌入式控制系统按操作系统分,大致可分哪几类,每类的设计方法有什么不同?
2,嵌入式控制不加嵌入式操作系统支持,遇到多线程或局域网问题如何解决?
3,ARM体系中的字,半字和字节各占多少位(bit)?
4, 什么是大端存储 (Big Enddian ) 格式和小端存储 (Little Enddian ) 格式,ARM920T内核的嵌入式系统中,常用哪种存储格式来存储字数据?
5, 什么是Thumb指令集?它和32位ARM指令集的区别?;第二章ADS 1.2开发环境创建与简介;2. 链接器armlink是ARM链接器。该命令既可以将编译得到的一个或多个目标文件和相关的一个或多个库文件进行链接,生成一个可执行文件,也可以将多个目标文件部分链接成一个目标文件,以供进一步的链接。3 符号调试器armsd是ARM和Thumb的符号调试器,能进行源码级程序调试。用户可以在用C或汇编语言写的代码中进行单步调试、设置断点、查看变量值和内存单元的内容。;4 fromELF将ELF格式的文件转换为各种格式的输出文件,包括BIN格式映像文件、Motorola32位S格式映像文件、Intel32位格式映像文件和Verilog十六进制文件。FromELF命令也能够为输入映像文件产生文本信息,例如代码和数据长度。5 armararmar是ARM库函数生成器,它将一系列ELF格式的目标文件以库函数的形式集合在一起。用户可以把一个库传递给一个链接器以代替几个ELF文件。;6 CodeWarriorCodeWarrior集成开发环境(IDE)为管理和开发项目提供了简单多样化的图形用户界面,用户可以使用ADS的CodeWarriorIDE为ARM和Thumb处理开发用C、C++或者ARM汇编语言编写的程序代码。7 调试器ADS中含有3个调试器,即AXD、Armsd和ADW/ADU。在ARM体系中,可以选择多种调试方式,如Multi-ICE(Multi-processor In-Circuit Emulator)、ARMulator或Angel。Multi-ICE是一个独立的产品,是ARM公司自己的JTAG在线仿真器,不是由ADS提供的。;ARMulator是一个ARM指令集仿真器,集成在ARM的调试器AXD中,提供对ARM处理器的指令集的仿真,为ARM和Thumb提供精确的模拟。用户可以在硬件尚未做好的情况下开发程序代码,利用模拟器方式调试。· Angel是ARM公司常驻在目标机Flash中的监控程序,只需通过RS-232C串口与PC主机相连,就可以对基于ARM架构处理器的目标机进行监控器方式的调试。C和C++库;ADS提供ANSI C库函数和C++库函数,支持被编译的C和C++代码。用户可以把C库中的与目标相关的函数作为自己应用程序中的一部分,重新进行代码的实现。这就为用户带来了极大的方便,针对自己的应用程序的要求,对与目标无关的库函数进行适当的裁剪。在C库中有很多函数是独立于其他函数的,并且与目标硬件没有任何依赖关系。对于这类函数,用户可以很容易地在汇编代码中使用。 有了这些部件,用户就可以为ARM系列的RISC处理器编写和调试自己的开发应用程序了。;2.1.2 ADS1.2的安装 ;;;在图2-5对话框中选浏览(Browser)查许可文件,在Program Files\ARM\ADSV1_2\license\中选license.dat文件并打开,单击“下一步”按钮,如图2-6,即可完成ADS1.2的安装。最后,程序还要注册,注册文件在Program Files\ARM\ADSV1_2文件夹中,单击注册文件,即完成程序注册,如图2-7所示。;;2.2 ADS集成开发环境的使用;还要在Project name栏中输入项目的名称,以及在Location中输入其存放的位置,按确定保存项目。;在如图2-10中,点击Debug Setting 按钮,弹出2-11图,选中Target Setting ;项,在Post-linker栏中选中ARM fromELF项。按OK确定。这是为生成可执行的代码的初始开关。3. 在如图2-12中,点击ARM Assembler ,在Architecture or Processer ;栏中选ARM920T。这是项目选择的CPU类型。4. 在如图2-13中,点击ARM C Compliler ,在Architecture or Processer栏中选ARM920T。这是要编译的CPU核。;5. 在如图2-14中,点击ARM linker ,在outpur栏中设定程序的代码段地址,以及数据使用的地址。图中的RO
显示全部