该【ARMADS集成开发环境 】是由【sanshenglu2】上传分享,文档一共【30】页,该文档可以免费在线阅读,需要了解更多关于【ARMADS集成开发环境 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。ARMADS集成开发环境
运行时库类型和选项
ADS提供以下的运行时库来支持被编译的C和C++代码:
ANSIC库函数:
这个C函数库是由以下几部分组成:
在ISOC标准中定义的函数;
在semihosted环境下(semihosting是针对ARM目标机的一种机制,它能够根据应用程序代码的输入/输出请求,与运行有调试功能的主机通讯。这种技术允许主机为通常没有输入和输出功能的目标硬件提供主机资源)用来实现C库函数的与目标相关的函数;
被C和C++编译器所调用的支持函数。
ARMC库提供了额外的一些部件支持C++,并为不同的结构体系和处理器编译代码。
ARMADS集成开发环境
C++库函数:
C++库函数包含由ISOC++库标准定义的函数。C++库依赖于相应的C库实现与特定目标相关的部分,在C++库的内部本身是不包含与目标相关的部分。
ARMADS集成开发环境
ANSIC库使用标准的ARMsemihosted环境
提供例如,文件输入/输出的功能。Semihosting是由已定义的软件中断(SoftwareInterrupt)操作来实现的。在大多数的情况下,semihostingSWI是被库函数内部的代码所触发,用于调试的代理程序处理SWI异常。调试代理程序为主机提供所需要的通信。Semihosted被ARMulator,Angel和Multi-ICE所支持。用户可以使用在ADS软件中的ARM开发工具去开发用户应用程序,然后在ARMulator或在一个开发板上运行和调试该程序。
ARMADS集成开发环境
库路径结构
库路径是在ADS软件安装路径的lib目录下的两个子目录。假设,ADS软件安装在e:\arm\adsv1_2目录,则在e:\arm\adsv1_2\lib目录下的两个子目录armlib和cpplib是ARM的库所在的路径。
ARMADS集成开发环境
Armlib:这个子目录包含了ARMC库,浮点代数运算库,数学库等各类库函数。与这些库相应的头文件在e:\arm\adsv1_2\include目录中。
Cpplib:这个子目录包含了RogueWaveC++库和C++支持函数库。RogueWaveC++库和C++支持函数库合在一起被称为ARMC++库。与这些库相应的头文件安装在e:\arm\adsv1_2\include目录下。
ARMADS集成开发环境
环境变量ARMLIB必须被设置成指向库路径。另外一种指定ARMC和ARMC++库路径的方法是,在链接的时候使用操作选项-libpathdirectory(directory代表库所在的路径),来指明要装载的库的路径。
无需对armlib和cpplib这两个库路径分开指明,链接器会自动从用户所指明的库路径中找出这两个子目录。
ARMADS集成开发环境
特别注意的以下几点:
ARMC库函数是以二进制格式提供的;
ARM库函数禁止修改。
通常情况下,为了创建依赖于目标的应用程序,在ANSIC库中只有很少的几个函数需要实现重建。
RogueWaveStandardC++函数库的源代码不是免费发布的,可以从RogueWaveSoftwareInc.,或ARM公司通过支付许可证费用来获得源文件。
ARMADS集成开发环境
GUI开发环境(CodeWarrior和AXD)
CodeWarrior集成开发环境
CodeWarriorforARM是一套完整的集成开发工具,充分发挥了ARMRISC的优势,,它可加速并简化嵌入式开发过程中的每一个环节,使得开发人员只需通过一个集成软件开发环境就能研制出ARM产品,在整个开发周期中,开发人员无需离开CodeWarrior开发环境,因此节省了在操做工具上花的时间,使得开发人员有更多的精力投入到代码编写上来
ARMADS集成开发环境
CodeWarrior集成开发环境(IDE)为管理和开发项目提供了简单多样化的图形用户界面。用户可以使用ADS的CodeWarriorIDE为ARM和Thumb处理器开发用C,C++,或ARM汇编语言的程序代码。通过提供下面的功能,CodeWarriorIDE缩短了用户开发项目代码的周期
ARMADS集成开发环境
ARMADS集成开发环境 来自淘豆网www.taodocs.com转载请标明出处.