ADS实例教程资料下载.pdf

上传人:b****1 文档编号:16119636 上传时间:2022-11-20 格式:PDF 页数:58 大小:3.48MB
下载 相关 举报
ADS实例教程资料下载.pdf_第1页
第1页 / 共58页
ADS实例教程资料下载.pdf_第2页
第2页 / 共58页
ADS实例教程资料下载.pdf_第3页
第3页 / 共58页
ADS实例教程资料下载.pdf_第4页
第4页 / 共58页
ADS实例教程资料下载.pdf_第5页
第5页 / 共58页
点击查看更多>>
下载资源
资源描述

ADS实例教程资料下载.pdf

《ADS实例教程资料下载.pdf》由会员分享,可在线阅读,更多相关《ADS实例教程资料下载.pdf(58页珍藏版)》请在冰豆网上搜索。

ADS实例教程资料下载.pdf

ARMObjectLibrary:

用于由ARM指令的代码生成一个armar格式的目标文件库;

EmptyProject:

用于创建一个不包含任何库或者源文件的工程;

MakefileImporterWizard:

用于将VC的nmake或者GNUmake文件转入到CodeWarriorIDE工程文件;

ThumbARMExecutableImage:

用于由ARM指令和Thumb指令的混合代码生成一个可执行的ELF格式的映象文件;

ThumbExecutableimage:

用于由Thumb指令创建一个可执行的ELF格式的映象文件;

ThumbObjectLibrary:

用于由Thumb指令的代码生成一个armar格式的目标http:

/电子发烧友http:

/电子技术论坛文件库。

一般情况下均选择“ARMExecutabelImage”,然后在“Projectname:

”栏输入工程名称,在“Location:

”栏指定路径,本例子的工程名称为“Hello”,点击确定后“Hello”工程建立。

图2,设置工程路径和工程名工程建立以后将生成一个空的工程管理窗口,如下图所示:

图3,工程管理窗口接下来就是向工程内添加和建立目标文件了,由于44B0学习评估板具有较多的资源,故其启动文件也较为复杂,所以一般都是直接打包使用,因此在添加启动文件之前请先将“44B0EVB”文件夹复制到“Hello”工程目录下,然后通过http:

/电子技术论坛工程管理窗口进行启动文件的添加,如下图所示:

图4,建立Group先通过点击右键选择“CreateGroup”,建立一个“44B0X”文件夹,然后再右键选择“AddFiles”来添加启动文件,如下图所示:

http:

/电子技术论坛图5,添加启动文件图6,添加文件到Target在添加文件的过程中你可能已经发现了CodeWarriorIDE为用户建立了三个Target,分别是“DebugRel”、“Realse”、“Debug”,这三个Target分别表示三种调试方式。

DebugRel表示在生成目标的时候会为每一个源文件生成调试信息;

Debug表示为每一个源文件生成最完全的调试信息;

Release表示不生成任何调试信息。

一般默认选择“DebugRel”。

同时从图6可以发现每次添加文件的时候都会询问添加到哪个“Target”,一般默认三个都添加,点击确定。

添加成功后会有一个如图7的提示:

/电子技术论坛图7,ProjectMessages接下来建立一个main.c文件,可以通过“NEW”-“FILE”来建立,如下图:

图8,建立文件http:

/电子技术论坛图8中已经把“AddtoProject”前面的勾勾上了,所以main.c直接加入到了工程中,不然请在main.c建立后重新右键选择添加文件到工程。

最终的结果如下图所示:

图9,工程建立完毕工程建立完毕之后暂时还不能进行编译和链接,还需要进行一些配置。

/电子技术论坛图10,工程配置可以通过“Edit”-“DebugRelSettings”或者“ALT+F7”或者点击图10中红色小圈内的快捷图标来进入“DebugRelSettings”。

如下图所示:

图11,“DebugRelSettings”http:

/电子技术论坛“DebugRelSettings”里面包含了很多设置信息,在此只说明几个和本范例相关的配置信息,如果想了解其他相关信息请参见“ADS文档”内的相关资料。

图12,“TargetSettings”“TargetSettings”里面有一处必须设置,即“Post-Linker”,“Post-Linker”用于对输出文件进行操作,由于本范例是需要最终写入到硬件中并运行的,所以必须进行设置(如果纯粹只需要进行软件仿真则此处可以不进行设置)。

这里选择“ARMfromELF”,表示编译后生成映象文件(Image)后再调用FromELF命令进行格式转换,以转换成.bin或者.hex等可以直接烧写到目标芯片执行的文件。

然后是“LanguageSettings”选项,本范例使用了“ARMAssembler”和“ARMCCompiler”所以请确保在这两个选项内的“Target”子选项内为“ARM7TDMI”(44B0为ARM7TDMI),如下图所示:

/电子技术论坛图13,“LanguageSettings”设置完了“LanguageSettings”后接下来就是“Linker”选项了,在该选项里面有和硬件紧密相关的设置,首先进入“ARMLinker”子选项,在该子选项内需要设置入口地址(entry)、RO地址、RW地址。

首先设置R0/RW地址,RO表示ReadOnly,RW表示ReadWrite,RO栏默认是0x8000,需要根据实际硬件进行更改,一般为FLASH地址,RO也可以设置在SDRAM中,启动代码中包含COPY的部分,会将代码移动到SDRAM中运行,这对44B0特别适合,因为SDRAM很大,而且对速度的提升也很明显。

entrypoint必须同RO一致,以提供连接器定位信息本44B0板的FLASH地址即为0x00000000;

RW栏默认为空,一般为SDRAM地址,本44B0板的地址即为0x0C000000(RO也可以设置在SDRAM中但entrypoint必须同RO一致)。

/电子技术论坛图14,“ARMLinker”-“Output”图15,“ARMLinker”-“Options”在“ARMLinker”-“Options”内还需要设置一个“Imageentrypoint”,表示映象文件的入口地址。

设置完“Imageentrypoint”后继续在“Layout”里面设置代码中的哪一段置于IMAGE的起始位置:

/电子技术论坛图中vector.oSelfBoot的意思就是将vector.o置于IMAGE的起始位置,必须设置!

图16,“ARMLinker”-“Layout”在“Linker”选项下还有一个子选项需要进行设置,即“ARMfromELF”,在“Target”的“Post-Linker”设置成“FromELF”后在这里需要进一步进行设置。

/电子技术论坛图17,“Linker”-“ARMfromELF”-“Outputformat”参照图17进行输出文件格式的设置,一般设置成“Plainbinary”或者“Intel32bithex”。

图18,“Linker”-“ARMfromELF”-“Outputfilename”参照图18进行输出文件名称和路径的设置,请带上扩展名.bin或者.hex。

当工程文件是从别处copy过来的时候请记得对该路径进行重新设置,不然将出现警告提示。

到此为止已经完成基本设置,接下来可以进行编译和链接。

如果你的工程文件是从别处copy过来的则在编译之前还有一件事情需要做,即“RemoveObjectCode”,在选项在“Project”菜单下面,如图19所示,如果红圈内的.c文件前面没有勾的图标的话表示该工程已经编译链接通过,如果需要重新编译则需要先进行“RemoveObjectCode”操作以去除一些和路径、目标文件等有关联的信息。

“RemoveObjectCode”操作后如图20所示,请对比图19和20。

/电子技术论坛图19,“RemoveObjectCode”图20,需要编译的文件前有勾状图标然后“Project”-“Make”或者F7,如果一切设置正确则出现如下提示:

/电子技术论坛图21,MAKE结果如果有错误和警告请一一改正,直至编译通过。

最终生成可执行文件hello.bin/hello.hex(因具体设置而异)和调试文件hello.axf(映象文件)。

其中可执行文件的路径由用户在“LINKER”-“ARMfromELF”中的设置所决定;

而调试文件(映象文件)“hello.axf“则默认生成在“.HelloHello_DataDebugRel”下。

Hello.bin/hello.hex可以通过工具软件直接烧入目标芯片运行,hello.axf可以通过ADS里面集成的AXD调试工具进行调试,可以软件仿真或者外部通过第三方JTAG调试工具进行调试。

下面简单讲解一下用AXD进行代码调试的流程:

AXD(ARMeXtendedDebugger)是ADS软件中独立于CodeWarriorIDE的图形软件,打开AXD软件,默认是打开的目标是ARMulator。

这个也是调试的时候最常用的一种调试工具,即软件仿真,下面内容主要是结合ARMulator介绍在AXD中进行代码调试的方法和过程,使读者对AXD的调试有初步的了解,在介绍完ARMulator之后将会在后文继续简单讲解如何通过JTAG开发工具进行硬件仿真。

要使用AXD必须首先要生成包含有调试信息的程序,在前面的hello工程中,已经生成的hello.axf就是包含有调试信息的可执行ELF格式的映像文件。

1.在AXD中打开调试文件可以有两种方法打开AXF文件,一是在make完成后通过“Project”-“Debug”或者F7进入AXD,另外也可以通过“开始”-“程序”-“ARMDeveloperSuite”http:

/电子技术论坛-“AXD”打开AXD,然后再在菜单“File”中选择“Loadimage”选项,打开LoadImage对话框,找到要装载的.axf映像文件,点击“打开”按钮,就把映像文件装载到目标内存中了。

在所打开的映像文件中会有一个蓝色的箭头指示当前执行的位置。

对于本例,打开映像文件后,如图22所示:

图22在axd下打开映像文件在菜单Execute中选择“Go”,将全速运行代码。

要想进行单步的代码调试,在Execute菜单中选择“Step”选项,或用F10即可以单步执行代码,窗口中蓝色箭头会发生相应的移动。

有时候,用户可能希望程序在执行到某处时,查看一些所关心的变量值,此时可以通过断点设置达到此要求。

将光标移动到要进行断点设置的代码处,在Execute菜单中,选择“ToggleBrea

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 计算机硬件及网络

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1