第四章 ADS集成开发环境的使用
ADS集成开发环境的使用
ADS集成开发环境的使用简介ADS(Advanced Development Studio)是一款专业的集成开发环墨拉环境,提供了丰富的功能和工具,帮助开发人员进行软件开发、调试和测试。
本文将介绍ADS集成开发环境的基本使用方法,让您快速上手并提高开发效率。
安装ADS在使用ADS之前,首先需要进行软件的安装。
您可以在官方网站上下载最新版本的ADS安装包,根据操作系统的不同选择对应的安装程序进行安装。
安装时请务必注意软件的安装路径和所需的依赖库。
启动ADS安装完成后,双击ADS的桌面图标或在命令行中输入相应的命令来启动ADS。
在启动过程中,您可以设置一些基本配置,如显示语言、主题等。
创建项目在ADS中,项目是进行开发工作的基本单位。
您可以通过菜单栏或快捷键来创建新项目。
在创建项目时,请选择项目类型、保存路径等信息。
一旦项目创建成功,您就可以开始编写代码了。
编写代码ADS集成了各种常用的编程工具,如代码编辑器、调试器、版本控制等。
您可以在代码编辑器中编写代码,并利用自动补全、语法检查等功能提高开发效率。
同时,ADS还支持多种编程语言,如Java、Python、C++等,满足各种开发需求。
调试程序在开发过程中,调试是必不可少的环节。
ADS提供了强大的调试工具,如断点调试、变量查看等功能,帮助您快速定位问题并解决bug。
代码版本控制为了管理项目代码的版本,避免不必要的冲突和错误,您可以使用ADS集成的版本控制工具,如Git、SVN等。
通过版本控制,您可以轻松地管理代码的变更、提交和回滚。
插件和扩展ADS支持丰富的插件和扩展,可以根据自己的需求进行定制和扩展。
通过安装适配的插件,您可以增加ADS的功能和性能,提高开发效率。
总结通过本文的介绍,您应该对ADS集成开发环境的基本使用有了初步了解。
在实际开发中,不同的项目和需求可能需要进一步的学习和实践。
希望本文能够帮助您更好地利用ADS进行软件开发工作。
祝您开发顺利!以上就是关于ADS集成开发环境的使用的相关内容,希望对您有所帮助。
ADS集成开发环境
6.1 ADS 1.2集成开发环境
6.2.1 工程的编辑——建立文件
6.1 ADS 1.2集成开发环境
6.2.1 工程的编辑——输入汇编程序源文件并保存为.s 文件
6.1 ADS 1.2集成开发环境
6.2.1 工程的编辑——输入发环境
6.2.2 工程的调试——单步调试程序
•选择Proccessor Views→Registers/Memory等命令打开寄存 器/内存等窗口,观察程序运行的结果。
6.1 ADS 1.2集成开发环境
6.2.2 工程的调试——调试工具条
•Go: 全速运行; •Stop:停止运行; •Step In: 对函数调用语句,进入该函数运行; •Step: 每次执行一条语句,函数调用被作为一条语句; •Step Out: 执行完当前被调用的函数; •Run to Cursor: 运行到当前光标所在的位置; •Toggle BreakPoin: 设置断点。
str DCD 1,2,3,4,5,6,7,8,11,12,13,14,15,16,17,18,21,22,23,24
AREA destinationData,DATA,READWRITE
dst SPACE 80
AREA blockCopy,CODE,READONLY
num EQU 20
RegList
在工程窗口中单击Debug按钮,即可启动AXD进行调试。 •选择Options→Configure Target命令,弹出Choose Target 对话框,设置仿真选项。
6.1 ADS 1.2集成开发环境
6.2.2 工程的调试——加载可执行文件
•选择File→Load Image 命令,加载ELF格式的可执行文件, 即*.axf文件。
ADS开发环境安装配置
IO0CLR = LED3CON;//亮灯
Delay(200);//延时
IO0SET = LED3CON;//灭灯
}
}
4、配置项目
单击项目管理器中的生成的项目类型:“RealInFlash”,如下图9所示,单击右侧的第一个按钮 (“Setting”按钮),打开Settings对话框,如图10所示。
图11
*出口参数:无
****************************************************************************/
void Delay(intdly)
{
inti;
for(; dly>0; dly--)
for(i=0; i<600; i++);
}
/****************************************************************************
*名称:main()
*功能:控制LED闪烁
****************************************************************************/
void main(void)
{
PINSEL0 = 0x00000000;//设置所有管脚连接GPIO
PINSEL1 = 0x00000000;
图8
3、编写源代码
在图8中,选中mai.c,在“#include“config.h””处编写如下代码,实现流水灯功能:
#defineLED3CON (0x1<<17) /*P0.17*/
ADS 集成开发环境及JLink(其他工具也可以)仿真器应用
ADS 集成开发环境及JLink(其他工具也可以)仿真器应用ADS 集成开发环境是ARM 公司推出的ARM 核微控制器集成开发工具,英文全称为ARM Developer Suite,成熟版本为ADS1.2。
ADS1.2 支持ARM10 之前的所有ARM 系列微控制器,支持软件调试及JTAG 硬件仿真调试,支持汇编、C、C++源程序,具有编译效率高、系统库功能强等特点,可以在Windows98、Windows XP、Windows2000 以及RedHat Linux 上运行。
这里将简单介绍使用ADS1.2 建立工程,编译连接设置,调试操作等等。
ADS 1.2 使用了CodeWarrior IDE 集成开发环境,并集成了ARM 汇编器、ARM 的C/C+编译器、Thumb 的C/C++编译器、ARM 连接器,包含工程管理器、代码生成接口、语法敏感(对关键字以不同颜色显示)编辑器、源文件和类浏览器等等。
1、打开ADS1.2中的AXD软件:2、点击工具栏" Options " -> "Configure Target ",将弹出如下对话框:3. 点击上图所示对话框中的" ADD ",然后选中我的HTAG安装目录下的Multi-ICE.dll,设置好后如下图所示,再点击OK:4. 点击ACD工具栏" FIle " -> "Load Image ",选择跑马灯的调试文件( 后缀为.axf,位置和实验三中的那个最终生成的.bin文件一样,也是在用ADS编译跑马灯程序的时候生成的 ),将弹出调试代码框:5. 在AXD的工具栏" Execute "下有许多调试操作( 单步运行,设置断点等 ),可用来进行调试进行。
6. 点击工具栏" Processor Views " -> " Registers "可以查看寄存器的状态:7 . 点击工具栏" Processor Views " -> " Memory "可以查看存储器的状态:8. 如果要查看某个变量的值在调试运行中的变化,可以选中某个变量,点击右键,再选择" Add to watch ",随即将出现watch对话框,如下图所示,可以在这里观察到变量的变化情况,变量值初始以十六进制显示,如果习惯十进制,可以在该对话框点击右键 -> " Format " -> "Decimal ":12. 完整的调试界面:。
《ARM嵌入式C编程标准教程》
第二章ADS 1.2开发环境创建与简介
2.1 ADS1.2开发环境创建
2.1.1 ADS1.2概述
ADS是个集成开发环境,主要包括编译器、链接器、调试 器、C和C++库等,是ARM公司推出的新一代ARM集成开 发工具。最新版本是ADS1.2,该版本支持包括Windows和 Linux在内的多种操作环境。ADS1.2的组成如下所述。 1. 编译器 ADS提供多种编译器,以支持ARM和Thumb指令的编译, 主要有: ·armcc:是ARM C编译器。 ·tcc:是Thumb C编译器。 ·armcpp:是ARM C++编译器。 ·tcpp:是Thumb C++编译器。 ·armasm:是ARM和Thumb的汇编语言编译器。
2.1.2 ADS1.2的安装
ADS全称为ARM Developer Suite,是ARM公司推出的新 的一代ARM集成开发工具。现在ADS的最新版本是1.2, 它取代了早期的ADS1.1和ADS1.0,该版本支持包Windows 和Linux在内的多种操作系统。安装步骤如下: 在ADS1.2的安装盘中运行setup.exe,安装ARM Developer Suite v1.2。出现图2-1对话框和图2-2对话框,同意产权协 义,选省缺安装路径(C:\Program Files\ARM\vADS1.2)和 典型安装模式(Typiflcation),按Next进入下一步,出现选 文件夹、编程语言和当前设定对话框,均按Next,开始安 装,如图2-3示。 安装结束,安装许可文件(Install License),这一步可 按安装向导进行,单击“下一步”按钮,会出现如图2-4 和图2-5所示的对话框。
使用 armcc_嵌入式Linux开发教程_[共2页]
第7章ADS集成开发环境本章将介绍ARM开发环境ADS(ARM Developer Suite)。
它是ARM公司推出的新一代关于ARM处理器的编译、链接和调试集成环境。
它与一般传统调试方法的调试系统有以下不同。
一是ADS集成开发环境把编译、链接和仿真调试分别集成在两个环境中:把编译和链接集成在一个环境中,全名叫CodeWarrior for ARM Developer Suite,一般简称CodeWarrior for ADS,很多情况下把其中的图形界面称为CodeWarrior IDE;而把仿真调试环境集成在一个称为ARM eXtended Debugger的环境中,一般简称AXD。
二是ADS既提供了图形环境编译、链接和调试方法,又提供了命令行编译、链接和调试方法,两种方法各具特色。
7.1 命令行开发工具命令行开发工具完成将源代码编译,链接成可执行代码的功能。
ADS提供了很多的命令行开发工具,包括有armcc、armcpp、tcc等。
熟悉这些命令对于快速掌握ADS的使用很有帮助,特别是在调试的时候,能够起到事半功倍的效果。
7.1.1 使用armccarmcc是ARM的C编译器。
这个编译器通过了Plum Hall C Validation Suite为ANSI C的一致性测试。
armcc将用ANSI C编写的程序编译成32位ARM指令代码。
因为armcc是最常用的编译器,所以对此做一个详细的介绍。
在命令控制台环境下,输入命令:armcc–help可以查看armcc的语法格式以及最常用的一些操作选项。
armcc最基本的用法为:armcc [options] file1 file2 ... file N这里的option是编译器所需要的选项,file1,file2…file N是相关的文件名。
下面介绍一些常用的操作选项。
●c:表示只进行编译不链接文件。
●C:(注意这是大写的C)禁止预编译器将注释行移走。
实验一 ADS集成开发环境及汇编语言指令实验
实验一 ADS集成开发环境及汇编语言指令实验1.1 实验目的1.熟悉ADS1.2 软件开发环境;2.理解ARM920T 汇编指令的用法,并能编写简单的汇编程序;3.理解常用的ARM伪指令和伪操作的功能和使用。
1.2 实验内容1.使用LDR 指令读取0x30003100 上的数据,将数据加1,若结果小于10,则使用STR 指令把结果写回原地址,若结果大于等于10,则把0 写回原地址。
2.使用ADS1.2 软件仿真,单步,全速运行程序,设置断点,打开寄存器窗口(ProcessorRegisters)监视R0,R1 的值,打开存储器观察窗口(Memory)监视0x30003100 上的值。
3.使用数据定义伪操作定义两个内存数据块,通过汇编指令将源数据块的内容复制到目的数据块,并对程序运行时相关寄存器、内存中的数据进行跟踪。
1.3 预备知识1.ARM 指令系统内容;2.ADS1.2 工程编辑和AXD 调试的内容。
1.4 实验设备硬件:PC 机一台。
软件:Windows XP系统,ADS1.2 集成开发环境。
1.5 实验步骤1.启动ADS1.2,使用ARM Executable Image 工程模板建立一个工程arm1.mcp。
2.建立汇编源文件arm1.s,编写实验程序(见1.6实验参考程序1),然后添加到工程中。
3.设置工程连接地址RO Base 为0x30000000,RW Base 为0x30003000,设置options 中的调试口地址Image entry point 为0x30000000。
设置方法:选择Edit->DebugRel Settings,打开下图所示的窗口:图1.1 DebugRel Settings窗口在左侧树形目录中选择“ARM Linker”,分别在右侧Output标签页和Option标签页中设置RO Base、RW Base和Image entry point。
ADS集成开发环境
ADS1.2 集成开发环境的安装及使用一、安装ADS1.2软件:1.打开桌面上ADS1.2的文件夹,双击SETUP.EXE。
安装界面如下图1-1,选择“Next”继续。
图1-12.选择“YES”,同意安装许可,如同1-2。
图1-23.选择安装路径,安装到适当的地方,保证空间足够(200M左右),此处默认为C:\Program Files\ARM,选择“Next”继续,如同1-3。
图1-34.选择完全安装Full的方式,点击“Next”继续,如图1-4。
图1-45. 连续点击“Next”继续,如图1-5,图1-6,图1-7。
图1-5图1-6图1-7 6.开始安装,界面如图1-8。
图1-8 7.选择“下一步”,如图1-9。
图1-98.选择“Install License”项,如图1-10,点击“下一步”,如图1-11。
图1-10图1-119.此步骤是安装License,需要用到安装包里的CRACK文件夹,将此文件夹复制到软件安装目录的ADSv1_2下,此处为C:\Program Files\ARM\ ADSv1_2。
拷贝完后点击图1-11中的“Browse”按钮,出现如图1-12所示界面,在查找范围处浏览到安装目录下C:\Program Files\ARM\ADSv1_2\CRACK 文件夹并双击“LICENSE.DAT”即可,此时出现如图1-13所示界面。
图1-12图1-1310.依次点击“下一步”,“完成”,“Finish”,完成整个安装过程。
二、使用ADS1.2软件:1.新建工程现在可以通过“开始”—“程序”—“ARM Developer Suite v1.2”—“CodeWarrior for ARM Developer Suite”来打开开发软件了,如图1-14所示。
图1-14启动Metrowerks CodeWarrior for ARM Developer Suite v1.2后界面如图1-15所示。
ADS开发环境及AXD调试工具的使用
ADS开发工具及AXD调试工具的使用一、ADS开发工具的使用1、ADS1.2的安装:ADS1.2 /SET UP,之后选择CRACK/LICENSE.DAT2、将LPC2300的工程模板《ARM Executable Image for LPC2300》拷到ADS1.2的安装目录下,即:C:/Program File/ARM/ADSv1_2/Stationery3、建立工程文件1)打开CodeWarrior for ARM Developer Suite v1.22)点击File New…1)ARM Executable Image:用于由ARM指令的代码生成一个ELF格式的可执行映像文件2)ARM Executable Image for LPC2300:LPC230的工程模板3)ARM Object Library:用于由ARM指令代码生成的一个armar格式的目标文件库4)Empty Project:用于创建一个不包含任何库和源文件的工程5)Makefile Importer Wizard:用于将Visual C的nmake或GNU make文件转入到CodeWarrior IDE工程文件6)Thumb ARM Interworking Image:用于由ARM指令和Thumb指令的混合代码生成的一个可执行的ELF格式的映像文件7)Thumb Executable Image:用于由Thumb指令创建一个可执行的ELF格式的映像文件8)Thumb Object Library:用于由Thumb指令代码生成的一个armar格式的目标文件库3)如上图所示,选择ARM Executable Image for LPC2300的工程模板,在Project name下填写要建立的工程名称,如LPC2388,在Location下选择保存的路径,点击确定,即可生成LPC2388.mcp的工程,如下图所示4)生成的工程有三个生成目标,如上图所示,各部分应用说明如下注意:选用RelInFlash目标时,将会对LPC2388芯片进行加密,加密的芯片只能使用ISP进行芯片全局擦除后,才能恢复JTAG调试及ISP读/写操作.模板是针对LPC2366/68/78设计的,如果使用LPO2388芯片,使用DebugInFlash 目标时,需将mem_c.scf中将STACKS 0x40008000 UNINIT ;for LPC2366/68/78更改为STACKS 0x40010000 UNINIT(FLASH空间不同)。
ADS1.2_集成开发环境使用
中国十大品牌IT教育机构
14
ADS 1.2集成开发环境
AXD调试器简介
AXD调试器为ARM扩展调试器(ARM eXtended Debugger),包括ADW/ADU的所有特性,支持硬件仿真和软 件仿真(ARMulator)。AXD能够装载映像文件到目标内存,具 有单步、全速和断点等调试功能,可以观察变量、寄存器和内 存的数据等。
ADS提供下面的命令行开发工具:
1. 2. 3. 4. Armcc:ARM C编译器 Armcpp: ARM C++编译器 Armasm:ARM汇编编译器 : Armlink:ARM连接器
中国十大品牌IT教育机构
Armcc armcc用于将用ANSI C编写的程序编译成32位ARM指令 代码 armcc最基本的用法为:
中国十大品牌IT教育机构
15
运行第一个程序
“从做中学” 步骤:
安装ADS 1.2软件 专用模板建立工程 使用EasyJTAG-H仿真器 AXD工程调试 脱机运行 程序固化程序
中国十大品牌IT教育机构
16
ADS1.2的安装 运行ADS1.2下的setup.exe 运行到选择setup type时,选择custom--->Next--->Select Components 对话框 在Select Components 对话框下,选择:
中国十大品牌IT教育机构
中国十大品牌IT教育机构
ADS 1.2集成开发环境
集成开发环境主要组成部分
CodeWarrior IDE
AXD
中国十大品牌IT教育机构
中国十大品ቤተ መጻሕፍቲ ባይዱIT教育机构
ADS 集成开发环境配置
ADS 集成开发环境一、预备知识:ADS其实就是Arm Develope Suite。
主要由armcc,Code Warrior,以及AXD组成。
armcc是编译器,Code Warrior是编辑控制器,AXD是调试器。
二、工程的编辑1. 建立工程点击WINDOWS 操作系统的【开始】->【程序】->【ARM Developer Suite v1.2】-> 【CodeWarrior for ARM Developer Suite】起动Metrowerks CodeWarrior,或双“CodeWarriorfor ARM Developer Suite”快捷方式起动。
启动ADS1.2 IDE 如图下图所示:2. 点击" File " -> "New "新建工程,将跳出如下对话框:左边选择ARM Executable Image,右边可以输入自己想要创建工程的名字和工程文件的保存路径。
有必要说明这几种工程文件类型:1. ARM Executable Image用于由arm指令代码形成一个ELF格式的可执行镜像文件。
2. ARM Object Library:用于由arm指令代码生成一个armar格式的指令库。
3. Empty Project:顾名思义,产生一个空的工程文件。
4. Makefile Import Wizard:用于将VC的nmake和linux的make导入到Code Warrior工程文件夹中。
5. Thumb ARM Interworking Image:用于由humb指令和arm的混合指令生成一个ELF可执行镜像文件。
6, 7对应1, 2,用的指令从arm变成thumb。
3. 建立文件建立一个文本文件,以便输入用户程序。
点击“New Text File”图标按钮,如图下图所示。
然后在新建的文件中编写程序,点击“Save”图标按钮将文件存盘(或从【File】菜单选择【Save】),输入文件全名,如Test1.S或者Test1.c。
ADS使用详解
因为I/O 模式控制寄存器和I/O 数据控制寄存器都是32位的 控制寄存器,所以从0x3ff5000 开始的连续四个地址空间存放的 是I/O 模式控制寄存器的值,I/O 数据控制寄存器的内容是从地 址0x3FF5008 开始的连续四个地址空间存放的内容。IODATA 中 的初始值为0x E7FF0010,因为用的是小端模式,所以读数据的 时候注意高地址中存放的是高字节,低地址存放的是低字节。
传感器
SD卡 放音 录音 电位器 扬声器 网口 网口 USB Device
键 盘
SST39V F800
多功能扩展 口
DA输出
中断 USB Host
扬声器
PS2
由ARM指令的代码 生成一个ELF 格式 的可执行映象文件 创建一个不包含 任何库或者源文 件的工程 将VC的nmake或G NUmake文件转入 到Code Warrior IDE 工程文件 由ARM和Thumb的 指令混合代码生 成一可执行的ELF 格式的映象文件
ARM from ELF设置
Output file name
参照上图进行输出文件名称和路径的设置,须带 上扩展名.bin 或者.hex。当工程文件是从别处copy 过来的时候请记得对该路径进行重新设置,不然将出现 警告提示。 到此为止已经完成基本设置,接下来可以进行编译 和链接。
Remove Object Code操作
Байду номын сангаас
选择调试目标
进入AXD 后通过Option->Configure Target…选 择调试目标。由于当前采用“ARMulator”进行软件仿 真,故选择ARMUL,如下图所示:
查看存储器内容
在程序运行前,可以先查看两个宏变量IOPMOD 和 IOPDATA 的当前值。方法是:从Processor Views 菜 单中选择“Memory”选项。
ADS集成开发环境及EasyJTAG-H仿真器的使用
在开发板上运行第一个程序
在开发板上运行第一个程序
在开发板上运行第一个程序
• 使用JTAG下载
– 连接开发板与PC串口,并将ISP跳线短接; – 打开H-Flasher软件,选中 项,在 Type栏选择下载文件类型为Inter Hex Format; – Src File栏选择文件路径; – 点击Erase按钮全片擦除; – 点击Black按钮擦除校验; – 点击Program按钮下载HEX文件。
在开发板上运行第一个程序
• 工程窗口
DebugRel Settings… 工程设置 Synchronize Modification Dates 同步修改日期 Make 编译连接 Debug 启动AXD AXD进行调试 启动AXD进行调试 Run 启动AXD进行调试, AXD进行调试 启动AXD进行调试,并直接运行程序 Project Inspector 工程检查
在开发板上运行第一个程序
在开发板上运行第一个程序
在开发板上运行第一个程序
在开发板上运行第一个程序
在开发板上运行第一个程序
在开发板上运行第一个程序
在开发板上运行第一个程序
专注的力量成就梦想! 专注的力量成就梦想!
在开发板上运行第一个程序
• 工程建立具体操作步骤
– – – – 增加LPC2131专用工程模板; 使用LPC2131专用工程模板建立工程; 编写流水灯控制程序; 编译连接工程。
在开发板上运行第一个程序
将产品光盘中带有的LPC2131工程模板拷贝到“<ADS1.2安 装目录>\Stationery\”下。
ADS集成开发环境及 集成开发环境及 EasyJTAG-H仿真器的使用 仿真器的使用
ADS 1.2集成开发环境 集成开发环境
ADS开发环境的使用之在ADS中进行裸机程序的编辑编译及运行
掌握了基本的汇编指令和伪操作后,就具备了编写简单ARM汇编程序的基本理论能力,不过要实战得到真实可执行的程序,还需要可以对程序进行编辑和编译的开发环境(命令行编译器或IDE)的支持,同时程序在开发过程中免不了要进行调试,这就需要调试器的支持。
一般而言,会有供应商将程序的编辑器、编译器、调试器以及其它一些辅助工具组合在一起,形成程序的开发、调试集成开发环境(IDE)软件,提供给程序开发人员使用。
对ARM程序开发而言,目前比较流行的IDE有2套:运行于Windows平台的ADS和运行于Linux平台的gcc等交叉编译工具链。
总的来看,ADS在程序的编译和调试方面要比gcc使用起来方便很多,也更容易掌握和使用,因此针对初学者,本书现在将展示ADS的使用。
在进行下面的学习之前,请自行在Windows主机上安装ARM公司出品的ads1.2这个集成开发环境软件。
1.4.1在编辑编译器ADS中进行裸机程序的编辑、编译、运行ADS集成开发环境,主要由编辑编译器Code Warrior和调试器AXD组成。
首先使用CodeWarrior对程序进行编辑和编译,过程如下:1.建立工程(1)在磁盘里新建一个目录“E:\arm”(2)打开ADS软件(3)点击工具栏“File”,下拉点击“New…”图1-7新建工程2.选择工程类型图1-8选择工程类型PS:ARM Executable Image生成ELF格式映像(bin)ARM Object Library生成armar格式目标库文件Empty Project创建不包含任何库或源文件的工程Makefile Importer Wizard用于VcThumb ARM Interworking Image用于ARM和thumb指令混合代码生成的ELF映像Thumb Executable image用thumb指令生成ELF格式映像Thumb Object Library用于Thumb指令的代码生成的armar格式文件3.输入工程名称及其目录4.工程建立后的情形5.新建工程后的目录图1-11新建工程后的目录6.新建源文件并加入工程与target(对象)图1-12新建源文件并加入工程与targetPS:另外在E:\arm\ledcircle\app中添加LEDTEST.c和delay.s文件,文件内容可以参看本word目录下的ledcircle文件夹;7.编辑汇编和C的源代码图1-13编辑汇编源代码图1-14编辑C源代码8.编译源代码及其结果显示图1-15编译(make)菜单图1-16编译结果以上是最普通(也是最简单)的源代码编辑和编译过程。
ADS集成开发环境
-W<options> Disable all or selected warning messages
10
3-1-1 命令行开发工具
armcpp
armcpp是ARM C++编译器。它将ISO C++ 或EC++ 编译成32位 ARM指令代码。
tcc
tcc是Thumb C 编译器。该编译器经过了Plum Hall C Validation Suite为ANSI 一致性旳测试。tcc将ANSI C源代码编译成16位旳 Thumb指令代码。
tcpp
tcpp是Thumb C++ 编译器。它将ISO C++ 和EC++ 源码编译成16位 Thumb指令代码。
armasm
armasm是ARM和Thumb旳汇编器. 它对用ARM 汇编语言和Thumb 汇编语言写旳源代码进行汇编。
11
3-1-1 命令行开发工具
armlink
armlink是ARM连接器。该命令既能够将编译得到旳一种或多种目旳 文件和有关旳一种或多种库文件进行链接,生成一种可执行文件,也 能够将多种目旳文件部分链接成一种目旳文件,以供进一步旳链接。 ARM链接器生成旳是ELF格式旳可执行映像文件。
16
3-1-1 命令行开发工具试验
armcc hello.c
编译hello.c,生成目的文件hello.o和可执行文件__image.axf。
armcc –c hello.c
编译hello.c,仅生成目的文件hello.o,不生成可执行文件 __image.axf。
armcc –g hello.c
armlink [-help] [-vsn] [-partial] [-output file] [-elf] [-reloc][-robase address] [-ropi] [-rw-base address] [-rwpi] [-split] [-scatter file][-debug|-nodebug][-remove?RO/RW/ZI/DBG]|noremove] [-entry location ] [-keep section-id] [-first section-id] [-last section-id] [-libpath pathlist] [-scanlib|-noscanlib] [-locals|-nolocals] [-callgraph] [info topics] [-map] [-symbols] [-symdefs file] [-edit file] [-xref] [xreffrom object(section)] [-xrefto object(section)] [-errors file] [-list file] [-verbose] [-unmangled |-mangled] [-match crossmangled][-via file] [strict] [-unresolved symbol][-MI|-LI|-BI] [input-file-list]
(最新整理)ADS使用指南
(完整)ADS使用指南编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望((完整)ADS使用指南)的内容能够给您的工作和学习带来便利。
同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。
本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为(完整)ADS使用指南的全部内容。
ADS仿真ADS仿真的具体步骤:1.打开ADS软件会出现如下画面:其中左上方的Workspaces是我们的工作空间,也就是我们仿真的例子所存放的文件夹,在这你可以创建一个新的工作Workspace,或者打开一个存在的Workspace.Open recently used workspace则是打开你最近使用过的仿真例子,如10M_wrk或者Modle_wrk,如果有需要,你可以直接点击进入相应的仿真实例.你也可以直接关掉这个画面,则直接进入了ADS主界面:在这你可以通过菜单栏的File——-〉new—-->workspace 来新建一个仿真实例等效于工具栏中的也可以选择File—-->open———>workspace 来打开一个存在的仿真实例等效于工具栏中的2。
建立一个ADS仿真实例通过File—-—〉new-—-〉workspace来新建一个仿真实例并命名为Newworkspace_wrk如下图所示:然后完成出现如下界面:这时已经出现了Newworkspace_wrk文件夹。
接下来我们就可以在这个文件夹下建立相应的ADS仿真原理图(即Schematic)了。
通过File-->new—-〉Schematic或者直接点击工具栏的则出现如下窗口:其中被选中的cell_1是默认的Schematic名称,我们可以将它更改成10M.这时会产生一个新的窗口:这就是我们建立仿真原理图和执行仿真的窗口。
ADS开发环境的使用:HelloWorld
ADS1.2 集成开发环境的使用ARM ADS 全称为ARM Developer Suite。
是ARM 公司推出的新一代ARM 集成开发工具。
现在ADS 的最新版本是1.2,它取代了早期的ADS1.1 和ADS1.0。
它除了可以安装在Windows NT4,Windows 2000,Windows 98 和Windows 95 操作系统下,还支持Windows XP 和Windows Me操作系统。
本节通过一个具体实例,为读者介绍如何使用该集成开发环境,利用CodeWarrior 提供的建立工程的模板建立自己的工程,并学会如何进行编译链接,生成包含调试信息的映像文件和可以直接烧写到FLASH 中的.bin 格式的二进制可执行文件。
1.1 建立一个工程打开一个如图所示的对话框:工程将所有的源码文件组织在一起,并能够决定最终生成文件存放的路径,输出的格式等。
在CodeWarrior中新建一个工程的方法有两种,可以在工具栏中单击“New”按钮,也可以在“File”菜单中选择“New⋯”菜单在这个以上对话框中为用户提供了7 种可选择的工程类型:ARM Executable Image:用于由ARM 指令的代码生成一个ELF 格式的可执行映像文件;ARM Object Library:用于由ARM 指令的代码生成一个armar 格式的目标文件库;Empty Project:用于创建一个不包含任何库或源文件的工程;Makefile Importer Wizard:用于将Visual C 的nmake 或GNU make 文件转入到CodeWarriorIDE 工程文件;Thumb ARM Executable Image:用于由ARM 指令和Thumb 指令的混和代码生成一个可执行的ELF 格式的映像文件;Thumb Executable image:用于由Thumb 指令创建一个可执行的ELF 格式的映像文件;Thumb Object Library:用于由Thumb 指令的代码生成一个armar 格式的目标文件库。
ADS开发工具
图18 文件操作工具条
<MTSE1.0>
总结
熟悉ADS开发环境的特性 开发环境的特性 熟悉
ADS开发环境 开发环境
掌握ADS开发环境的使用 掌握ADS开发环境的使用 ADS
<MTSE1.0>
<MTSE1.0>
6.1 ADS开发环境的特性 开发环境的特性
图形开发工具:
AXD:Windows 以及Unix 下的ARM 调试器,提供了完整调试C、C++ 以及汇编语言的Windows 以及Unix 下的环境; ADW:Windows 下的ARM 调试器,提供了完整调试C、C++以及汇编 语言的Windows 的环境; ADU :Unix 下的ARM 调试器,提供了完整调试C、C++以及汇编语 言的Unix下的环境; CodeWarrior IDE:Windows 下的项目管理工具。
• 点击“DebugRel Settings …” 图标按钮,即可进行 项目的地址设置、输出文件设置、编译选项等,如 图7 ~图11所示。 – 在“Target Settings ”对话框设置项目的目标特 性; – 在“Language Settings” 中设置各编译器的编译 选项; – 在“ARM Linker”对话框设置连接地址。
<MTSE1.0>
6.2 ADS1.2开发环境的使用 开发环境的使用
DebugRel Settings …
如图7所示在“Target Settings ”对话框设置项目的目标特性;
图7 设置项目目标特性
<MTSE1.0>
6.2 ADS1.2开发环境的使用 开发环境的使用
DebugRel Settings …
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
中国十大品牌IT教育机构
开发环境的作用
C/C++ C/C++ 汇编语言
编译器
编译器
汇编器
目标文件
目标文件
目标文件
连接器
可重定位程序
定址器
可执行文件
中国十大品牌IT教育机构
ADS下嵌入式系统开发模式 模拟方式 仿真方式 调试方式
1. armcc [options] file1 file2 ... filen 2. 这里的option是编译器所需要的选项,fiel1,file2…filen是相关的 文件名 3. 举例:armcc -c init.s led.s
中国十大品牌IT教育机构
中国十大品牌IT教育机构
库的作用
当用户对汇编程序,C程序或C++程序进行链接 的时候,链接器会根据在建立时所指定的选项, 选择适当的C或C++运行时库的类型 选项各种不同组合都有一个相应的ANSI C库类型
中国十大品牌IT教育机构
2. 生成目标(Build target)
① 指用于生成特定的目标文件的选项设置(包括汇编选项,编译选项,链接选项 以及链接后的处理选项)和所用的文件的集合。
中国十大品牌IT教育机构
实例说明
功能:
1. 循环点亮LED灯(跑马灯)
实现方法:
1. 汇编语言加C语言混合编程
armlib
这个子目录包含了ARM C 库,浮点代数运算库, 数学库等各类库函数 ARM C库函数是以二进制格式提供的 与这些库相应的头文件在 e:\arm\adsv1_2\include目录中
中国十大品牌IT教育机构
cpplib
这个子目录包含了Rogue Wave C++库和C++ 支持函数库 Rogue Wave C++库和C++支持函数库合在一 起被称为ARM C++库 与这些库相应的头文件安装在 e:\arm\adsv1_2\include目录下
目的
1. 学习ADS的使用 2. 学习ARM开发语言的编写与调试
中国十大品牌IT教育机构
建立工程
在磁盘里新建一个目录“D:\arm” 打开ADS软件 点击工具栏“File”,下拉点击“New…”
中国十大品牌IT教育机构
库路径结构
库路径是在ADS软件安装路径的lib目录下的两个 子目录 假设,ADS软件安装在e:\arm\adsv1_2目录,则 在e:\arm\adsv1_2\lib目录下的两个子目录 armlib和cpplib是ARM的库所在的路径
中国十大品牌IT教育机构
ADS提供下面的命令行开发工具:
1. 2. 3. 4. Armcc:ARM C编译器 Armcpp: ARM C++编译器 Armasm:ARM汇编编译器 : Armlink:ARM连接器
中国十大品牌IT教育机构
Armcc
armcc用于将用ANSI C编写的程序编译成32位 ARM指令代码 armcc最基本的用法为:
中国十大品牌IT教育机构
中国十大品牌IT教育机构
-c:表示只进行编译不链接文件; -C:(注意:这是大写的C)禁止预编译器将注释行移走; -D<symbol>:定义预处理宏,相当于在源程序开头使用了宏定义语句 #define symbol , -E:仅仅是对C源代码进行预处理就停止; -g<options>:指定是否在生成的目标文件中包含调试信息表; -I<directory>:将directory所指的路径添加到#include的搜索路径列 表中去; -o<file>:指定编译器最终生成的输出文件名。 -O0:不优化; -O1:这是控制代码优化的编译选项,大写字母O后面跟的数字不同,表 示的优化级别就不同,-O1关闭了影响调试结果的优化功能; -O2:该优化级别提供了最大的优化功能; -S:对源程序进行预处理和编译,自动生成汇编文件而不是目标文件; -U<symbol>:取消预处理宏名,相当于在源文件开头,使用语句 #undef symbol; -W<options>:关闭所有的或被选择的警告信息; 有关更详细的选项说明,读者可查看ADS软件的在线帮助文件。
中国十大品牌IT教育机构
实用程序
fromELF
1. 这是ARM映像文件转换工具 2. 该命令将ELF格式的文件作为输入文件,将该格式转换为各种输出格式的 文件,包括plain binary(BIN格式映像文件), Motorola 32-bit S-record format(Motorola 32位S格式映像文件), Intel Hex 32 format(Intel 32 位格式映像文件),和 Verilog-like hex format(Verilog 16进制文件)
中国十大品牌IT教育机构
基本概念-target
在CodeWarrior IDE中所涉及到的target有两种 不同的语义
1. 目标系统(Target system)
① 特指代码要运行的环境,是基于ARM的硬件。比如,要为ARM开发板上编 写要运行在它上面的程序,这个开发板就是目标系统。
中国十大品牌IT教育机构
C++库函数
由以下几部分组成的:
1. 版本为2.01.01的Rogue Wave Standard C++库; 2. C++编译器使用的支持函数; 3. Rogue Wave库所不支持的其他的C++函数
中国十大品牌IT教育机构
中国十大品牌IT教育机构
armasm
armasm是ARM和Thumb的汇编器 它对用ARM 汇编语言和Thumb 汇编语言写的源 代码进行汇编
中国十大品牌IT教育机构
ARM运行时库
运行时库就是 C run-time library
中国十大品牌IT教育机构
CodeWarrior for ARM是一套完整的集成开发工 具,充分发挥了ARM RISC 的优势 在整个开发周期中,开发人员无需离开 CodeWarrior开发环境,提高了效率
中国十大品牌IT教育机构
仿真器
主机 目标板
中国十大品牌IT教育机构
开发环境
开发软件有:
1. SDT(Software Development Toolkit)2.51 2. ADS(ARM Developer Suite)1.2 3. RealView®
调试软件有:
1. AXD(ARM eXtended Debugger):ARM扩展调试器; 2. ARMSD(ARM Symbolic Debugger):ARM符号调试器; 3. ADW/ADU(Application Debugger Windows/Unix):与老版本兼容的 Window大品牌IT教育机构
ADS集成开发环境组成
ADS的主要组成部件有:
1. 命令行开发工具 2. ARM运行时库 3. GUI开发环境(Code Warrior和AXD)
有了这些部件,用户就可以为ARM系列的RISC处 理器编写和调试自己的开发应用程序
选择工程类型
中国十大品牌IT教育机构
输入工程名称及其目录
中国十大品牌IT教育机构
Ledcircle工程建立
中国十大品牌IT教育机构
C/C++
C/C++
汇编语言
可以在CodeWarrior IDE为ARM配置以上所 介绍的各种命令工具, 实现对工程代码的编译, 汇编和链接
编译器
编译器
汇编器
目标文件
目标文件
目标文件
连接器
可重定位程序
定址器
可执行文件
中国十大品牌IT教育机构
功能特色 源代码编辑器
中国十大品牌IT教育机构
命令行开发工具
完成将源代码编译,链接成可执行代码的功能
1. 类似于8086汇编环境下的masm和link工具
命令行开发工具需要记忆较多的命令参数,但效 率高;通常用集成开发环境(IDE)代替
中国十大品牌IT教育机构
中国十大品牌IT教育机构
ADS集成开发环境
ARM公司推出的新一代ARM集成开发工具
1. (相对于SDT)
全称:Metrowerks CodeWarrior for ARM Developer Suite v1.2
1. ADS的CodeWarrior IDE基于Metrowerks CodeWarrior IDE 4.2版本 2. 它经过适当的裁剪以支持ADS工具链
ADS提供以下的运行时库来支持被编译的C和 C++代码:
1. ANSI C库函数: 2. C++库函数:
中国十大品牌IT教育机构
ANSI C库函数
由以下几部分组成:
1. 在ISO C标准中定义的函数; 2. 在semihosted环境下用来实现C库函数的与目标相关的函数; 3. 被C和C++编译器所调用的支持函数
armar
1. ARM库函数生成器将一系列ELF格式的目标文件以库函数的形式集合在 一起,用户可以把一个库传递给一个链接器以代替几个ELF文件。
中国十大品牌IT教育机构
与调试相关工具链在该集成环境中没有实现 但与ARM调试器(AXD)能进行无缝地连接调用
1. 你的 C 程序运行时需要这些库中的函数 2. C run-time library里面含有初始化代码,还有错误处理代码(例 如divide by zero处理) 3. 如果没有了C run-time库,main()就不会被调用,exit()也不能被 响应。因为C run-time library包含了C程序运行的最基本和最常 用的函数