版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第4章 ARM嵌入式开发流程和开发工具嵌入式系统的设计可以分成三个阶段:分析、设计和实现。分析阶段是确定要解决的问题及需要完成的目标,也常常被称为“需求阶段”;设计阶段主要是解决如何在给定的约束条件下完成用户的要求;实现阶段主要是解决如何在所选择的硬件和软件的基础上进行整个软、硬件系统的协调实现。在分析阶段结束后,通常开发者面临的一个棘手的问题就是硬件平台和软件平台的选择,因为它的好坏直接影响着实现阶段的任务完成。通常硬件和软件的选择包括:处理器、硬件部件、操作系统、编程语言、软件开发工具、硬件调试工具、软件组件等。在上述选择中,通常,处理器是最重要的,同时操作系统和编程语言也是非常关键的。处
2、理器的选择往往同时会限制操作系统的选择,操作系统的选择又会限制开发工具的选择。4.1AARM嵌嵌入式开开发模式式嵌入式系系统与一一般PCC机在开开发的硬硬件环境境上的最最大差异异就是它它分成两两个平台台,一个个是宿主主机(HHostt),一一个是目目标机(Tarrgett)。这这里的宿宿主机通通常就是是PC机机,首先先利用宿宿主机上上丰富的的资源、良好的的开发环环境编写写和编译译能够在在目标机机上运行行的程序序,这个个过程叫叫做交叉叉编译,然后通通过串口口、并口口、网络络或其它它接口通通过一定定的传输输手段将将交叉编编译生成成的目标标代码传传输并装装载到目目标机上上。图44-1中中就是采采用并
3、口口在线仿仿真器与与目标机机和宿主主机进行行连接,从而实实现目标标代码的的运行和和调试。宿主机机的工作作环境可可以是WWinddowss 988,Wiindoows XP,Winndowws 220000以及RRedHHat等等操作系系统,具具体选择择何种操操作系统统是由所所采用的的仿真器器和所开开发的软软件决定定,在AARM的的开发过过程中对对于不同同的软件件开发阶阶段所采采用的调调试手段段是不同同的,宿宿主机的的操作系系统需求求也就不不一样。详细的的描述请请参考本本节后面面的内容容。图4-11所示为为一个典典型的目目标机/宿主机机开发模模式。宿宿主机运运行ADDS 11.2集集成开发发环境
4、,并通过过在线仿仿真器(Mullti-ICEE)对目目标处理理器(SSamssungg公司的的基于AARM9920TT核的SS3C224100处理器器)ARRM处理理器进行行调试。宿主机机和在线线仿真器器通过并并口连接接,在线线仿真器器同时连连接到目目标机的的JTAAG接口口。宿主机ADS 1.2在线仿真器Multi-ICE嵌入式系统S3C2410(ARM920T)并口JTAG接口图4-1 目标机/宿主机开发模式4.2AARM嵌嵌入式开开发流程程和开发发工具ARM嵌嵌入式系系统的开开发流程程非常灵灵活而复复杂,尤尤其是软软件开发发过程牵牵涉到许许多不同同的开发发过程,而且每每个开发发过程所所使
5、用的的开发工工具均不不尽相同同,因此此,在深深入学习习ARMM软件开开发之前前,有必必要对AARM嵌嵌入式开开发流程程和所使使用的开开发工具具有一个个初步的的了解,本节就就是要达达到这样样的目的的,至于于各个开开发过程程和开发发工具的的详细介介绍请参参考后续续有关章章节。4.2.1 选择硬硬件平台台1、处理理器的选选择嵌入式系系统的核核心部件件是各种种类型的的嵌入式式处理器器。据不不完全统统计,目目前全世世界嵌入入式处理理器的品品种总量量已经超超过10000多多种,流流行体系系结构有有30几几个系列列。但与与全球PPC市场场不同的的是,没没有一种种微处理理器和微微处理器器公司可可以主导导嵌入式
6、式系统,仅以332位的的CPUU而言,就有1100种种以上嵌嵌入式微微处理器器。由于于嵌入式式系统设设计的差差异性极极大,因因此选择择是多样样化的。ARM是是近年来来在嵌入入式系统统有影响响力的微微处理器器制造商商,ARRM的设设计非常常适用于于小的电电源供电电系统。Appple在在Newwtonn手持计计算机中中使用AARM,另外有有几款数数字无线线电话也也在使用用ARMM。设计者在在选择处处理器时时要考虑虑的主要要因素有有:1)处理理性能一个处理理器的性性能取决决于多个个方面的的因素,如时钟钟频率,内部寄寄存器的的大小,指令是是否对等等处理所所有的寄寄存器等等。对于于许多需需用处理理器的嵌
7、嵌入式系系统设计计来说,目标不不是在于于挑选速速度最快快的处理理器,而而是在于于选取能能够完成成设计目目标的处处理器。比如:对对于ARRM处理理器,如如果需要要使用软软解压实实现视频频,应该该尽量选选用ARRM9、Xsccalee等高档档处理器器。而对对于一般般工业控控制,则则可以考考虑ARRM7芯芯片是否否满足要要求。2)技术术指标当前,许许多嵌入入式处理理器都集集成了外外围设备备的功能能,减少少了芯片片的数量量,降低低了整个个系统的的开发费费用和技技术难度度。开发发人员首首先考虑虑的是,系统所所要求的的一些硬硬件能否否方便地地连接到到处理器器上。其其次是考考虑该处处理器的的一些支支持芯片片
8、,如DDMA控控制器,内存管管理器,中断控控制器,串行设设备、时时钟等的的配套。各个厂家家市场的的ARMM芯片都都根据不不同的设设计目标标扩展了了丰富的的接口,在选择择处理器器时应该该考虑选选择能够够支持尽尽可能多多的功能能,尤其其是相对对设计复复杂的功功能。3)功耗耗嵌入式微微处理器器最大并并且增长长最快的的市场是是手持设设备、电电子记事事本、PPDA、手机、GPSS导航器器、智能能家电等等消费类类电子产产品。这这些产品品对微处处理器的的基本要要求是:高性能能、低功功耗。4)操作作系统和和软件支支持工具具的选择择操作系统统的移植植和开发发是嵌入入式设计计中的一一个关键键阶段。处理器器和操作作
9、系统的的选择在在一定程程度上互互相影响响,同时时又将影影响其软软件支持持工具,因此,处理器器的选择择的同时时必须充充分考虑虑操作系系统的因因素。在ARMM系统中中,如果果用户希希望使用用Winndowws CCE、LLinuux等操操作系统统,就需需要选择择ARMM7200T以上上带有MMMU(Memmoryy Maanaggemeent Uniit)功功能的AARM芯芯片,AARM7720TT、ARRM9220T、ARMM9222T、AARM9946TT、Sttronng-AARM都都带有MMMU功功能。而而ARMM7TDDMI则则没有MMMU,不支持持Winndowws CCE和LLinu
10、ux,但但目前有有uCLLinuux以及及uC/OS-II等等不需要要MMUU支持的的操作系系统可运运行于AARM77TDMMI硬件件平台之之上。事事实上,uCLLinuux已经经成功移移植到多多种不带带MMUU的微处处理器平平台上,并在稳稳定性和和其他方方面都有有上佳表表现。另外,如如果决定定采用LLinuux、WWinddowss CEE、vxxWorrks等等操作系系统时,在选择择处理器器时应该该尽量选选择该操操作系统统已经支支持的处处理器,这样可可以大大大加快开开发进度度,降低低难度。选择不同同的操作作系统,其软件件开发过过程和调调试手段段各不相相同,你你的选择择方案是是否能够够提供各
11、各个开发发阶段(包括bboottloaaderr开发、操作系系统移植植、驱动动开发和和应用开开发)所所需的软软件支持持工具也也是一个个必须考考虑的因因素。5)是否否内置调调试工具具处理器如如果内置置调试工工具可以以大大缩缩小调试试周期,降低调调试的难难度。AARM提提供JTTAG调调试接口口,而且且有众多多的第三三方厂家家推出各各种调试试工具。2、硬件件平台的的选择选择好目目标微处处理器后后还需要要准备硬硬件平台台。目前前国内外外有许多多针对各各种ARRM微处处理器的的开发板板,这些些开发板板对所支支持的AARM微微处理器器做了详详细的硬硬件评估估和软件件支持。在自己己动手设设计硬件件平台之之
12、前,购购买一块块这种开开发板作作为测试试平台,进行学学习和参参考,这这样可以以大大加加快开发发进度。对于一一些应用用,也可可以直接接在这些些开发板板上进行行,这样样可以省省略硬件件设计的的阶段。如果您不不打算购购买开发发板作为为测试平平台,您您就需要要自行设设计硬件件平台。在本书书的第55章中,以目前前国内AARM99的主流流芯片:Sammsunng公司司的S33C24410为为例,详详细介绍绍了该处处理器的的硬件架架构和硬硬件接口口扩展方方法。4.2.2 硬件驱驱动调试试如果硬件件平台是是自行设设计的,必须首首先对硬硬件进行行调试,硬件调调试成功功是进行行操作系系统移植植和应用用程序开开发的
13、一一个基本本前提。这个过程程通常是是通过编编写一些些简单的的测试程程序直接接驱动硬硬件以验验证硬件件是否正正确,这这些程序序可以基基于操作作系统进进行编程程,也可可以不使使用操作作系统,而且后后一种方方法来得得更加简简单,调调试也更更方便和和快捷。这一类过过程通常常采用图图4-11所示的的开发模模式,在在运行于于Winndowws的AADS 1.22中编写写程序并并编译,然后通通过Muultii-ICCE下载载并调试试程序。由于这这个过程程的编程程动作依依赖于硬硬件,采采用这种种模式可可以充分分利用在在线仿真真器的强强大的软软件调试试功能,从而加加快排错错过程。4.2.3 操作系系统的选选择和
14、移移植在单片机机系统中中,由于于受硬件件资源的的限制,同时应应用程序序通常比比较简单单,因此此,通常常不使用用操作系系统,直直接采用用前后台台程序控控制方式式设计软软件系统统。前台台运行一一个死循循环作为为主程序序流程,在主程程序中设设置中断断,当中中断产生生的时候候,运行行后台中中断服务务程序,然后返返回继续续运行主主程序。这样的的开发方方式在AARM开开发中同同样适用用,而且且对于一一些小型型应用完完全可以以采取这这种方式式,但是是对于复复杂应用用,如复复杂的图图形用户户界面、网络协协议等,采用前前后台控控制方式式进行设设计的应应用程序序设计复复杂,而而且不便便于软件件模块的的划分和和软件
15、升升级、维维护等。在这种情情况下,操作系系统的优优势展露露无疑。使用操操作系统统能够充充分发挥挥ARMM微处理理器的优优势。目目前绝大大多数嵌嵌入式操操作系统统都能够够稳定运运行在AARM微微处理器器上。软软件开发发中必须须首先选选择合适适的操作作系统。下面将将简单介介绍几种种常用的的嵌入式式操作系系统以及及它们的的基本开开发流程程。1、CC/OSS-IIIC/OOS-III是一一种免费费公开源源代码、结构小小巧、具具有可剥剥夺实时时内核的的实时操操作系统统。其内内核提供供任务调调度与管管理、时时间管理理、任务务间同步步与通信信、内存存管理和和中断服服务等功功能。它它可以基基于ROOM运行行(
16、ROOMabble)、可裁裁减,具具有高度度移植性性。从应用的的角度来来看,C/OOS-III提供供了一个个实时性性非常好好的嵌入入式内核核,在工工业控制制、数据据采集等等领域应应用广泛泛。但C/OOS-III内核核不支持持文件系系统、网网络协议议等功能能,而且且没有提提供统一一的硬件件驱动程程序接口口和开发发工具链链,在复复杂应用用中需要要考虑内内核以外外功能的的实现难难易程度度。C/OOS-III内核核不支持持文件系系统,不不支持应应用程序序和驱动动程序的的加载,因此,在CC/OSS-III开发中中,内核核、驱动动程序和和应用程程序都是是集中编编译,也也就是说说,CC/OSS-III编译以
17、以后的二二进制代代码中即即包含内内核代码码,也包包含驱动动程序和和应用程程序的代代码。同同时CC/OSS-III没有提提供统一一的开发发工具链链,CC/OSS-III程序的的编译应应该采用用支持所所选处理理器的编编译器。对于AARM处处理器,可以在在Winndowws环境境中使用用ADSS 1.2、AADT IDEE中编译译C/OS-II,也可以以在Liinuxx环境中中使用GGNU GCCC编译C/OOS-III。因因此可以以采用图图4-11所示的的开发模模式调试试基于C/OOS-III的程程序。2、Liinuxx/uCClinnuxLinuux/uuCliinuxx是对于于有MMMU和没没
18、有MMMU的处处理器的的Linnux解解决方案案。Liinuxx内核的的完全开开放,使使得可以以自己设设计和开开发出真真正的硬硬实时系系统;对对于软实实时系统统,在LLinuux中也也容易得得到实现现。Linuux/uuCliinuxx提供强强大的文文件系统统、网络络功能、GUII等软件件模组支支持,而而且这些些功能都都是可以以裁减的的,同时时它还提提供了标标准的驱驱动程序序接口和和软件开开发接口口,便于于用户编编程和程程序维护护。Linuux/uuCliinuxx自身具具备一整整套工具具链(GGNU GCCC),包包括编译译和调试试工具,用户可可以自行行建立嵌嵌入式系系统的开开发环境境和交叉
19、叉运行环环境,并并且可以以跨越在在嵌入式式系统开开发中仿仿真工具具(ICCE)的的障碍。对于ARRM处理理器,LLinuux/uuCliinuxx内核、驱动程程序以及及应用程程序的编编译都在在Linnux环环境中使使用GNNU GGCC完完成。对对于内核核和驱动动程序的的调试通通常借助助于运行行于Liinuxx/uCClinnux之之前的bboottloaaderr来完成成,只有有在很少少的情况况下需要要借助在在线仿真真器完成成。对于于应用程程序的调调试则可可以完全全抛弃在在线仿真真器,使使用GDDB完成成。在本本书的第第7章中中介绍了了boootlooadeer以及及Linnux/uClli
20、nuux的相相关知识识。3、Wiindoows CEWinddowss CEE是Wiindoows界界面在嵌嵌入式处处理器中中的实现现,它提提供了友友好的人人机交互互界面和和强大的的二次开开发功能能。Wiindoows CE包包括四大大基本模模块,它它们提供供了操作作系统的的关键特特性,分分别是:内核(Kerrnell)模块块、对象象存储(Objjectt Sttoree)模块块、GWWES(用户、应用程程序和操操作系统统之间的的图形用用户界面面)模块块和通信信(Coommuuniccatiion)模块。Winddowss CEE拥有完完善的软软件支持持开发工工具,WWinddowss CEE
21、的核心心移植和和驱动开开发使用用专门的的操作系系统定制制工具:Winndowws CCE PPlattforrm BBuillderr(简称称PB)。而应应用程序序的开发发则有嵌嵌入式开开发工具具包Emmbedddedd Viisuaal TToolls,包包括Emmbedddedd Viisuaal CC+(简称EEVC)和Emmbedddedd Viisuaal BBasiic(简简称EVVB)等等。同时时Embbeddded Vissuall Tooolss下还可可以进行行部分驱驱动程序序的开发发。同时时在Wiindoows CE中中还提供供了用于于Winndowws CCE开发发的bo
22、ootlloadder:EBOOOT。4、vxxWorrksVxWoorkss是专门门为实时时嵌入式式系统设设计开发发的操作作系统内内核,为为程序员员提供了了高效的的实时多多任务调调度、中中断管理理,实时时的系统统资源以以及实时时的任务务间通信信。在各各种CPPU平台台上提供供了统一一的编程程接口和和一致的的运行特特性,尽尽可能的的屏蔽了了不同CCPU之之间的底底层差异异。应用用程序员员可以将将尽可能能多的精精力放在在应用程程序本身身,而不不必再去去关心系系统资源源的管理理。基于于VxWWorkks操作作系统的的应用程程序可以以在不同同CPUU平台上上轻松移移植。VxWoorkss是一种种功能
23、强强大而且且比较复复杂的操操作系统统,包括括了进程程管理、存储管管理、设设备管理理、文件件系统管管理、网网络协议议及系统统应用等等几个部部分。VVxWoorkss只占用用了很小小的存储储空间,并可高高度裁减减,保证证了系统统能以较较高的效效率运行行。所以以,仅仅仅依靠人人工编程程调试,很难发发挥它的的功能并并设计出出可靠、高效的的嵌入式式系统,必须要要有与之之相适应应的开发发工具。TorrnaddoIII就是为为开发VVxWoorkss应用系系统提供供的集成成开发环环境,TTornnadooII中中包含的的工程管管理软件件,可以以将用户户自己的的代码与与VxWWorkks的核核心有效效的组合合
24、起来,可以按按用户的的需要裁裁剪配置置VxWWorkks内核核;vxxSimm原型仿仿真器可可以让程程序员不不用目标标机的情情况下,直接开开发系统统原型,作出系系统评估估;功能能强大的的CroossWWindd调试器器可以提提供任务务级和系系统级的的调试模模式,可可以进行行多目标标机的联联调;优优化分析析工具可可以帮助助程序员员从多种种方式真真正地观观察、跟跟踪系统统的运行行,排除除错误,优化性性能。4.3 ADSS与Muultii-ICCE简介介本节将简简单介绍绍ARMM开发软软件ADDS(AARM Devvelooperr Suuitee)和MMultti-IICE硬硬件仿真真器。在在随后
25、的的8.11节中,将以一一个简单单的例子子描述如如何在AADS集集成开发发环境下下编写、编译并并调试应应用程序序。ARM ADSS全称为为ARMM Deevellopeer SSuitte,是是ARMM公司推推出的用用于ARRM程序序设计、开发和和调试的的集成开开发工具具。现在在ADSS的最新新版本是是1.22,它取取代了早早期的AADS11.1和和ADSS1.00。它支支持Wiindoows NT44,Wiindoows 20000,WWinddowss 988、Wiindoows 95、Winndowws XXP和WWinddowss Mee等操作作系统。ADS由由命令行行开发工工具,AA
26、RM运运行时库库,图形形化集成成开发环环境(CCodee Waarriior和和AXDD),实实用程序序和支持持软件组组成。下下面将就就每个部部分作详详细的介介绍。本文以AADS 1.22为例,并假设设已经将将ADSS 1.2安装装在“CC:PProggramm FiilessARRMAADSvv1_22”目目录下。4.3.1 命令行行开发工工具ADS包包含一系系列基于于命令行行的ARRM编译译、汇编编、链接接等工具具,它们们位于AADS安安装目录录的biin子目目录下(C:Proograam FFileesAARMADSSv1_2BBin)。它们们既可以以在命令令控制台台环境下下使用,同时由
27、由于已被被嵌入到到了ADDS的图图形界面面中,所所以也可可以在图图形界面面下通过过参数设设置等手手段来使使用。1、ARRM CC(C+)编编译器ADS包包含包含含多种CC编译器器,包括括:arrmccc,tccc,aarmccpp和和tcppp。其其中arrmccc是ARRM CC编译器器,arrmcppp是AARM C+编译器器,tccc是TThummb CC 编译译器,ttcppp是Thhumbb C+ 编编译器。2、ARRM汇编编器(aarmaasm)armaasm是是ARMM和Thhumbb的汇编编器. 它对用用ARMM 汇编编语言和和Thuumb 汇编语语言写的的源代码码进行汇汇编。
28、3、ARRM链接接器(aarmllinkk)armllinkk是ARRM连接接器。该该命令既既可以将将编译得得到的一一个或多多个目标标文件和和相关的的一个或或多个库库文件进进行链接接,生成成一个可可执行文文件,也也可以将将多个目目标文件件部分链链接成一一个目标标文件,以供进进一步的的链接。ARMM链接器器生成的的是ELLF格式式的可执执行映像像文件。5、符号号调试器器(arrmsdd)armssd是AARM 和Thhumbb的符号号调试器器。它能能够进行行源码级级的程序序调试。用户可可以在用用C或汇汇编语言言写的代代码中进进行单步步调试,设置断断点,查查看变量量值和内内存单元元的内容容。4.3
29、.2 ARMM运行时时库ADS提提供以下下的:在ADSS软件安安装路径径的liib目录录(C:Prrogrram FillesARMMADDSv11_2libb)下有有两个子子目录:armmlibb和cpppliib。这这两个子子目录提提供了两两种运行行时库来来支持被被编译的的C和CC+代代码,它它们分别别是:AANSII C函函数库和和C+函数库库。环境变量量ARMMLIBB必须被被设置成成指向库库路径。另外一一种指定定ARMM C和和ARMM C+库路路径的方方法是,在链接接的时候候使用操操作选项项-liibpaath dirrecttoryy(diirecctorry代表表库所在在的路径
30、径),来来指明要要装载的的库的路路径。需需要说明明的是,ADSS安装成成功后,ARMMLIBB被缺省省指向到到C:Proograam FFileesAARMADSSv1_2LLIB目目录,因因此通常常不用进进行设置置链接器器就会自自动从AARMLLIB指指定的库库路径中中找出这这两个函函数库的的路径。1、ANNSI C函数数库:(armmlibb)ARM C 库库包含浮浮点代数数运算库库、数学学库等各各类库函函数。与与这些库库相应的的头文件件在C:Prrogrram FillesARMMADDSv11_2inccludde目录录中。这这个C函函数库是是由以下下几部分分组成:1)在IISO C标
31、准准中定义义的函数数;2)在ssemiihosstedd环境下下(seemihhosttingg是针对对ARMM目标机机的一种种机制,它能够够根据应应用程序序代码的的输入/输出请请求,与与运行有有调试功功能的主主机通讯讯。这种种技术允允许主机机为通常常没有输输入和输输出功能能的目标标硬件提提供主机机资源)用来实实现C库库函数的的与目标标相关的的函数;3)被CC和C+编译译器所调调用的支支持函数数。ARM C 库库提供了了额外的的一些部部件支持持C+,并为为不同的的结构体体系和处处理器编编译代码码。ARM C库函函数是以以二进制制格式提提供的,并禁止止修改。如果读读者想对对库函数数创建新新的实现
32、现的话,可以把把这个新新的函数数编译成成目标文文件,然然后在链链接的时时候把它它包含进进来。这这样在链链接的时时候,使使用的是是新的函函数实现现而不是是原来的的库函数数。通常情况况下,为为了创建建依赖于于目标的的应用程程序,在在ANSSI CC库中只只有很少少的几个个函数需需要实现现重建。2、C+函数数库:这个子目目录包含含了Rooguee Waave C+库和CC+支支持函数数库。RRoguue WWavee C+库和和C+支持函函数库合合在一起起被称为为ARMM C+库。与这些些库相应应的头文文件安装装在C:Prrogrram FillesARMMADDSv11_2inccludde目录录
33、下。这这个库是是由以下下几部分分组成的的:1)版本本为2.01.01的的Roggue Wavve SStanndarrd CC+库库;2)C+编译译器使用用的支持持函数;3)Rooguee Waave库库所不支支持的其其他的CC+函函数。Roguue WWavee Sttanddardd C+函数数库的源源代码不不是免费费发布的的,可以以从Rooguee Waave Sofftwaare Incc.,或或ARMM公司通通过支付付许可证证费用来来获得源源文件。4.3.3 图形化化集成开开发环境境(Coode Warrrioor和AAXD)1、CoodeWWarrriorr foor AARMCo
34、deeWarrrioor ffor ARMM是一套套完整的的集成开开发工具具,充分分发挥了了ARMM RIISC 的优势势, 使使产品开开发人员员能够很很好的应应用尖端端的片上上系统技技术. 该工具具是专为为基于AARM RISSC的处处理器而而设计的的, 它它可加速速并简化化嵌入式式开发过过程中的的每一个个环节,使得开开发人员员只需通通过一个个集成软软件开发发环境就就能研制制出ARRM产品品,在整整个开发发周期中中,开发发人员无无需离开开CoddeWaarriior开开发环境境, 因因此节省省了在操操做工具具上花的的时间,使得开开发人员员有更多多的精力力投入到到代码编编写上来来,CodeeW
35、arrrioor集成成开发环环境(IIDE)为管理理和开发发项目提提供了简简单多样样化的图图形用户户界面。用户可可以使用用ADSS的CoodeWWarrriorr IDDE为AARM和和Thuumb处处理器开开发用CC,C+,或或ARMM汇编语语言的程程序代码码。通过过提供下下面的功功能,CCodeeWarrrioor IIDE缩缩短了用用户开发发项目代代码的周周期。1)全面面的项目目管理功功能;2)子函函数的代代码导航航功能,使得用用户迅速速找到程程序中的的子函数数。可以在CCodeeWarrrioor IIDE为为ARMM配置各各种命令令行工具具的参数数,实现现对工程程代码的的编译,汇编和
36、和链接。CodeeWarrrioor IIDE 能够让让用户将将源代码码文件,库文件件还有其其他相关关的文件件以及配配置设置置等放在在一个工工程中。每个工工程可以以创建和和管理生生成目标标设置的的多个配配置。例例如,要要编译一一个包含含调试信信息的生生成目标标和一个个基于AARM77TDMMI的硬硬件优化化生成目目标,生生成目标标可以在在同一个个工程中中共享文文件,同同时使用用各自的的设置。CodeeWarrrioor IIDE为为用户提提供下面面的功能能:源代码编编辑器,它集成成在CoodeWWarrriorr IDDE的浏浏览器中中,能够够根据语语法格式式,使用用不同的的颜色显显示代码码;
37、源代码浏浏览器,它保存存了在源源码中定定义的所所有符号号,能够够使用户户在源码码中快速速方便的的跳转;查找和替替换功能能,用户户可以在在多个文文件中,利用字字符串通通配符,进行字字符串的的搜索和和替换;文件比较较功能,可以使使用户比比较路径径中的不不同文本本文件的的内容。ADS的的CoddeWaarriior IDEE是基于于Mettrowwerkks CCodeeWarrrioor IIDE 4.22版本的的。它经经过适当当的裁剪剪以支持持ADSS工具链链。针对ARRM的配配置面板板为用户户提供了了在CoodeWWarrriorr IDDE集成成环境下下配置各各种ARRM开发发工具的的能力。
38、以ARMM为目标标平台的的工程创创建向导导,可以以使用户户以此为为基础,快速创创建ARRM和TThummb工程程。尽管大多多数的AARM工工具链已已经集成成在CoodeWWarrriorr IDDE,但但是仍有有许多功功能在该该集成环环境中没没有实现现,这些些功能大大多数是是和调试试相关的的,因为为ARMM的调试试器没有有集成到到CoddeWaarriior IDEE中。由于ARRM调试试器(AAXD)没有集集成在CCodeeWarrrioor IIDE中中,这就就意味着着,用户户不能在在CoddeWaarriior IDEE中进行行断点调调试和查查看变量量。2、ADDS调试试器这里所说说的调
39、试试器本身身是一个个软件,用户通通过这个个软件并并配合调调试代理理(deebugg aggentt)可以以对包含含有调试试信息的的,正在在运行的的可执行行代码进进行比如如变量的的查看,断点的的控制等等调试操操作。调试代理理执行调调试器发发出的命命令,如如:设置置断点,单步运运行,从从存储器器中读数数据,把把数据写写到存储储器等。调试代代理既不不是被调调试的程程序,也也不是调调试器。在ARRM体系系中,它它可能是是下面几几种情况况中的一一个:1)在线线实时仿仿真器在线实时时仿真器器通过JJTAGG端口与与目标机机进行连连接,可可以实现现对ARRM处理理器的在在线、实实时调试试,且不不占用系系统资
40、源源。Multti-IICE(Mullti-proocesssorr inn-ciircuuit emuulattor)是ARRM公司司自己的的JTAAG在线线实时仿仿真器。它支持持全系列列的ARRM核,通过并并口与PPC机连连接,数数据接口口为8位位。Muultii-ICCE内部部采用FFPGAA实现并并口到JJTAGG的协议议转换,速度很很快,下下载速度度可在1120kkBytte/ss左右。本章下节节将要提提到的AADT 10000A仿仿真器也也是一种种在线实实时仿真真器。2)ARRMullatoorARMuulattor即即软件模模拟器,它独立立于处理理器硬件件,是一一种有效效的源程程
41、序检验验和测试试工具。但是,模拟器器毕竟只只是以一一种处理理器模拟拟另一种种处理器器的运行行,在指指令执行行时间、中断响响应、定定时器等等方面与与实际处处理器有有相对大大的差别别。3)AnngellAngeel为一一个运行行于目标标机上的的监控程程序,它它在调试试器和目目标板之之间通过过一定的的通信方方式,如如:串口口通信,为用户户提供各各种调试试功能。这种方方式需要要占用目目标机系系统资源源,如串串口、RROM、RAMM等。ADS中中包含有有3个调调试器:1)AXXD(AARM eXttendded Debbuggger):ARRM扩展展调试器器;2)arrmsdd(ARRM SSymbbo
42、liic DDebuuggeer):ARMM符号调调试器;3)与老老版本兼兼容的WWinddowss或Unnix下下的ARRM调试试工具,ADWW/ADDU(AAppllicaatioon DDebuuggeer WWinddowss/Unnix)。4.3.4 实实用程序序此外,AADS还还提供了了许多实实用工具具,下面面简单的的介绍开开发中经经常用到到的程序序:1、frromEELF这是ARRM映像像文件转转换工具具。该命命令将EELF格格式的文文件作为为输入文文件,将将该格式式转换为为各种输输出格式式的文件件,包括括plaain binnaryy(BIIN格式式映像文文件), Mootor
43、rolaa 322-biit SS-reecorrd fformmat(Mottoroola 32位位S格式式映像文文件), Inntell Heex 332 fformmat(Inttel 32位位格式映映像文件件),和和 Veerillog-likke hhex forrmatt(Veerillog 16进进制文件件)。FFrommELFF命令也也能够为为输入映映像文件件产生文文本信息息,例如如代码和和数据长长度。2、arrmarrARM库库函数生生成器将将一系列列ELFF格式的的目标文文件以库库函数的的形式集集合在一一起,用用户可以以把一个个库传递递给一个个链接器器以代替替几个EELF文
44、文件。3、Fllashh doownlloadder用于把二二进制映映像文件件下载到到ARMM开发板板上的FFlassh存储储器的工工具4.3.5 支持的的软件ADS为为用户提提供下面面的软件件,使用用户可以以在软件件仿真的的环境下下或者在在基于AARM的的硬件环环境调试试用户应应用程序序。ARMuulattor这是一个个ARMM指令集集仿真器器,集成成在ARRM的调调试器AAXD中中,它提提供对AARM处处理器的的指令集集的仿真真,为AARM和和Thuumb提提供精确确的模拟拟。用户户可以在在硬件尚尚未做好好的情况况下,开开发程序序代码。4.4 ADTT IDDE简介介4.4.1 AADT
45、IDEE集成开开发环境境1 AADT IDEE简介ADT IDEE是一套套应用于于嵌入式式软件开开发的新新一代集集成开发发环境,它提供供高效、清晰、可视化化的嵌入入式软件件开发平平台,包包括一整整套完备备的面向向嵌入式式系统的的开发和和调试工工具:编编辑器、编译器器、链接接器、工工程管理理器以及及调试器器等。AADT IDEE运行于于Winndowws NNT、995、998、220000及XPP,采用用类Viisuaal SStdiio界面面风格,其界面面如图44-2所所示。图4-22 ADDT IIDE集集成开发发环境软软件界面面图2. AADT IDEE主要特特性 中文文、英文文版本支支
46、持 操作作系统支支持 支持持Vxwworkks,uuCLiinuxx,Liinuxx,Nuucleeus等等操作系系统的开开发和调调试。 可视视化的源源码编辑辑和工程程管理功功能: 界面面友好,使用方方便:类类似MSS Viisuaal SStuddio的的用户界界面,支支持打印印功能,支持文文件内查查找功能能和Fiind in Filles功功能。 工程程管理器器:ADDT IIDE提提供图形形化的工工程管理理工具,以prrojeect为为单位为为用户提提供应用用源程序序的文件件组织和和管理,管理用用户的应应用程序序,编译译链接选选项以及及调试参参数等。 源码码编辑器器:支持持标准的的文本编
47、编辑功能能,支持持C语言言、汇编编语言语语法高亮亮显示。 辅助助编辑工工具:提提供多剪剪贴板工工具、代代码模板板工具、头文件件和源文文件切换换工具、注释工工具、符符号配对对书写工工具等多多种辅助助编辑工工具。 交叉叉编译功功能: 支持持开发语语言:AANSII C;Embbeddded C+;汇编编语言。 编译译工具:使用著著名优秀秀自由软软件GNNU的GGCC交交叉编译译工具,并经过过优化和和严格测测试,支支持C语语言、汇汇编语言言等。 编译译参数设设置:完完全图形形界面方方式的编编译参数数设置,提供可可视化的的设置功功能。支支持工程程级/文文件目录录级/文文件级编编译参数数设置。 强大大的源代代码级调调试功能能: 图形形和命令令行两种种调试方方式。 断点点功能:支持软软件断点点和硬件件断点,实现断断点设置置、断点点屏蔽、断点取取消、断断点列表表。 程序
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年矿石勘探技术服务合同版B版
- 福建省南平市五夫中学2020-2021学年高三地理上学期期末试题含解析
- 福建省南平市渭田中学2021-2022学年高三数学理联考试卷含解析
- 2024年行政报告模板制作与市场反馈服务合同3篇
- 2024年长途汽车运输协议
- 启航新征程模板
- 5 老师您好!说课稿-2024-2025学年道德与法治一年级上册统编版
- 个人住宅租赁合同标准文本2024年版版B版
- 2024年高端装备采购租赁合同2篇带眉脚
- 2024羊代放牧与草原生态修复合作合同3篇
- 2024版青岛市劳动合同
- 招标文件范本江苏版
- 中小学十五五发展规划(2025-2030)
- 2024年江苏客运从业资格证继续教育
- 人教版高中地理选择性必修1第一章地球的运动单元检测含答案
- 电厂员工三级安全培训(完美版)课件
- 2024年中考复习-数学(广州专用)(解析版)
- 精细陶瓷 断裂韧性试验方法 单边V型切口梁法
- 2024年海峡出版发行集团有限责任公司招聘笔试冲刺题(带答案解析)
- 第三十六届全国电力行业风力发电运行检修职业技能竞赛基础理论题库附有答案
- 人教版三年级上册数学期末测试卷a4版可打印
评论
0/150
提交评论