ADS(ARM Developer Suite)是ARM 公司推出的新一代ARM 集成开发工具,现在常用的ADS 版本是ADS1.2,它取代了早期的ADS1.1 和ADS1.0。
ADS 用于无操作系统的ARM 系统开发,是对裸机(可理解成一个高级单片机)的开发。ADS 有极佳的测试环境和良好的侦错功能,它可使硬件开发者更深入地从底层去理解ARM处理器的工作原理和操作方法,为日后自行设计打基础,为BootLoader 的编写和调试打基础。
ADS 由命令行开发工具、ARM 运行时库、GUI(Graphics User Interface,图形用户界面)、开发环境(CodeWarrior 和AXD)、实用程序、支持软件等组成。
ADS 提供一个简单通用的图形化用户界面,用于管理软件开发项目,可以ARM 和Thumb处理器为对象,利用CodeWarrior IDE 开发C、C + +和ARM 汇编代码。 为了便于读者理解,下面通过基于ARM7 的ADS1.2 开发环境创建实验,介绍ADS 的使用。
(1)实验目的
熟悉ADS1.2 开发环境,正确应用并口仿真器进行编译、下载和调试。
(2)实验内容
学习ADS1.2 集成开发环境。
(3)实验设备
①EL-ARM-830 教学实验箱,Pentium Ⅱ以上的PC 机,硬件多功能仿真器。
②PC 操作系统Win98 或Win2000 或WinXP,ADS1.2 集成开发环境,仿真器驱动程序。
(4)实验步骤
1)ADS1.2 下建立工程
①运行ADS1.2 集成开发环境,点击“File|New”,在New 对话框中,选择Project 栏,其中共有7 项,ARM Executable Image 是ARM 的通用模板。 选中它即可生成ARM 的执行文件。同时,还要在Project name 栏中输入项目的名称,以及在Location 中输入其存放的位置。 点击确定保存项目,如图9.2 所示。
②在新建的工程中,选择Debug 版本,如图9.3 所示,使用Edit|Debug Settings 菜单对Debug 版本进行参数设置。
③在如图9.4 所示中,点击“Debug Settings”按钮,弹出图9.5,选中Target Settings 项,在Post-linker 栏中选中ARM fromELF 项,按“OK”确定按钮,这是为生成可执行的代码的初始开关。
④在如图9. 6 所示中,点击“ARM Assembler”,在Architecture or Processer 栏中选ARM7TDMI,这是要编译的CPU 核。
图9.2 新建对话框
图9.3 调试发布模式选择对话框
图9.4 点击“Debug Settings”按钮
⑤在如图9. 7 所示中,点击“ARM C Compliler”,在Architecture or Processer 栏中选ARM7TDMI,这是要编译的CPU 核。
⑥在如图9.8 所示中,点击“ARM linker”,在Output 栏中设定程序的代码段地址,以及数据使用的地址。 图9.8 中的RO Base 栏中填写程序代码存放的起始地址,RW Base 栏中填写程序数据存放的起始地址,该地址是属于SDRAM 的地址。
图9.5 Target Settings 对话框
图9.6 ARM Assembler 对话框
在Options 栏中,如图9.9 所示,Image entry point 项中要填写程序代码的入口地址,其他保持不变。 如果是在SDRAM 中运行,则可在0x0c000000—0x0cffffff 中选值,这是16 MB SDRAM 的地址,但是这里用的是起始地址,所以必须将自己的程序空间给留出来,并且还要留出足够的程序使用的数据空间,而且还必须是4 字节对齐的地址(ARM 状态)。 通常入口点Image entry point 为0xc100000,ro_base 也为0xc100000。
在Layout 栏中,如图9.10 所示,在Place at beginning of image 框内,需要填写项目的入口程序的目标文件名,比如整个工程项目的入口程序是44binit.o,则应在Object/Symbol 处填写其目标文件名44binit.o,在Section 处填写程序入口的起始段标号。 它的作用是通知编译器,整个项目的开始运行,是从该段开始的。(www.xing528.com)
图9.7 ARM C Compliler 对话框
图9.8 ARM linker 对话框—Output 栏
⑦在如图9.11 所示中,即在Debug Settings 对话框中点击左栏的ARM fromELF 项,在Output file name 栏中设置输出文件名*. bin,前缀名可以自己取,在Output format 栏中选择Plain binary,这是设置要下载到flash 中的二进制文件。 图9.11 中使用的是test.bin。
⑧到此,在ADS1.2 中的基本设置已经完成,可以将该新建的空的项目文件作为模板保存起来。 首先,要将该项目工程文件改一个合适的名字,如S3C44B0 ARM. mcp 等;然后,在ADS1.2 软件安装的目录下的Stationary 目录下新建一个合适的模板目录名,如,S3C44B0 ARM Executable Image,再将刚刚设置完的S3c44B0 ARM. mcp 项目文件存放到该目录下即可。
图9.9 ARM linker 对话框—Options 栏
图9.10 ARM linker 对话框——Layout 栏
⑨新建项目工程后,就可以执行菜单Project|Add Files 把和工程所有相关的文件加入,ADS1.2 不能自动进行文件分类,用户必须通过Project|Create Group 来创建文件夹,然后将加入的文件选中,移入文件夹,或者鼠标放在文件添加区,右键点击,即出现如图9.12 所示。
图9.11 ARM fromELF 对话框
图9.12 Project 窗口
先选Add Files,加入文件,再选Create Group,创建文件夹,然后将文件移入文件夹内。 读者可根据自己习惯,更改Edit|Preference 窗口内关于文本编辑的颜色、字体大小,形状,变量、函数的颜色等设置,如图9.13所示。
2)ADS1.2 下仿真、调试
在ADS1.2 下进行仿真调试,首先要连接多功能仿真器。 在连上调试电缆后,先给仿真器上电,然后给实验箱上电,打开Multi-ICE Server.exe 程序,如图9.14所示,连接实验箱。 首先点击红色区域的左起第三个按钮,进行复位,再点击第一个按钮进行自动连接,正确连接后出现图9.15 的界面。
如果不能正确连接,请检查电源是否打开和连线是否正确。 当连上仿真器后,打开调试软件AXD Debugger。 点击File|load image 加载文件ADS.axf(S3C44BOX 实验程序\实验一\ADS\ADS_data 目录下)。 打开超级终端,设置其参数为:波特率为115 200 Bd,数据位为“8”,奇偶校验无,停止位无“1”,数据流控无。 点击全速运行,出现图9.16 的界面。
在最后介绍一下调试按钮,如图9.17 所示,左起第一个按钮是全速运行,第二个按钮是停止运行,第三个按钮跳入函数内部,第四个按钮单步执行,第五个按钮跳出函数,第六个按钮运行到光标。
图9.13 Text Colors 对话框
图9.14 ARM-Multi-ICE Server 界面
图9.15 ARM-Multi-ICE Server 正确连接界面
图9.16 超级终端
图9.17 调试按钮
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。