电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

ARM实验指导书VIP免费

ARM实验指导书_第1页
1/44
ARM实验指导书_第2页
2/44
ARM实验指导书_第3页
3/44
西南科技大学计算机科学与技术学院第一章ADS集成开发环境1ADS集成开发环境简介1.1ARM编译器的选择——ADS目前,针对ARM处理器核的C语言编绎器有很多,如SDT、ADS、IAR、TASKING和GCC等。据了解,目前在国内最流行的是SDT、ADS和GCC。SDT和ADS均为ARM公司自己开发,ADS为SDT的升级版,以后ARM公司不再支持SDT,所以不会选择SDT。GCC虽然支持广泛,很多开发套件使用它作为编译器,与ADS比较其编译效率较低,这对充分发挥芯片性能很不得,所以最终使用ADS编译程序和调试。本实验设备采用ADS编译器,其全称为ARMDeveloperSuite。ADS由命令行开发工具、ARM时实库、GUI开发环境(CodeWarrior和AXD)、实用程序和支持软件组成。有了这些部件,用户就可以为ARM系列的RISC处理器编写和调试自己的开发应用程序了。ADS支持汇编语言和标准C语言和标准C++语言。1.2ADS库路径ADS库路径是在ADS软件安装路径的lib目录下的两个子目录。假设,ADS软件安装在e:\arm\adsv1_2目录,则在e:\arm\adsv1_2\lib目录下的两个子目录armlib和cpplib是ARM的库所在路径。armlib这个子目录包含了ARMC库,浮点代数运算库,数学库存等各类库函数。与这些库相就的头文件在e:\arm\adsv1_2\include目录中。Cpplib这个子目录包含了RogueWaveC++库和C++支持函数库。RogueWaveC++库和C++支持函数库合在一起被称为ARMC++库。与这些库相应的头文件安装在e:\arm\adsv1_2\include目录下。读者需特别注意的几点:(1)ARMC库函数是以二进制格式提供的;(2)ARM库函数禁止修改。如果读者想对库函数创建新的实现的话,可以把这个新的函数编译成目标文件,然后在链接的时候把它包含进来。这样在链接的时候,使用的是新的函数实现而不是原来的库函数。(3)通常情况下,为了创建依赖于目标的应用程序,在ANSIC库中只有很少的几个函数需要实现重建。(4)RogueWaveStandardC++函数库的源代码不是免费发布的,可以从RogueWaveSoftwareInc,或ARM公司通过支付许可证费用来获得源文件。2ADS集成开发环境的使用2.1进入ADS集成开发环境点击桌面ADS图标,如下图所示,进入ADS集成开发环境。2.2建立一个工程(1)在CodeWarrior中新建一个工程有两种方法:1方法一:在工具栏中单击“New”按钮,如下图:方法二:在“File”菜单中选择“New…”,如下图:(2)执行上步骤后,则会弹出“新建工程对话框”,如下图:在这个对话框中为用户提供了7种可选择的工程类型。ARMExecutablImage:用于由ARM指令的代码生成一个ELF格式的可执行映像文件;ARMObjectLibrary:用于由ARM指令的代码生成一个armar格式的目标文件库;EmptyPrlject:用于创建一个不包含任何库或源文件的工程;MakefileImporterWizard:用于将VisualC的nmake或GNUmake文件转入到CodeWarriorIDE工程文件;ThumbARMExecutableImage:用于由ARM指令和Thumb指令的混和代码生成一个可执行的ELF格式的映像文件;ThumbExecutableimage:用于由Thumb指令创建一个可执行的ELF格式的映像文件;ThumbObjectLibrary:用于由Thumb指令的代码生成一个armar格式的目标文件库。在这里选择ARMExecutableImage,在“Projectname:”中输入工程文件名,本例为“ledcircle”,点击“Location:”文本框的“Set…”按钮,浏览选择想要将该工程保存的路径,将宽大些设置好后,点击“确定”,即可建立一个新的名为ledcircle的工程。此时会出现ledcircle.mcp的窗口,如下图如示,其中有三个标签页,分别为files,linkorder,target。西南科技大学计算机科学与技术学院2.3新建原文件(1)在“File”菜单中选择“New”,在打开的对话框中,选择标签页File,在Filename中输入要创建的文件名,若是汇编语言则文件名格式为:***.s,若是C语言则文件名格式为:***.c,然后再点击“确定”关闭窗口。在这里还有一个细节,希望注意。在建立好一个工程时,默认的target是DebugRel,还有另外两个可用的target,分别为Realse和Debug,这三个target的含义分别为:DebugRel:使用该目标,在生成目标的时候,会为每一个源文件生成调试信息;Debug:使用该目标为每一个源文件生成最完全的调试信息;Release:使用该目标不会生成任何调试信息。在本例中,...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

ARM实验指导书

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部