- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验:
一、实验目的
学习使用Arm Developmen Suite代码文本编辑器。掌握Uart_Printf()函数的用法。学会使用超级终端进行嵌入式应用开发。
二、实验内容
使用CodeWarrior for ARM Development Suite包含套件后面简称CW for ARM),编写一段程序,开发板上的LED循环点亮。利用将程序下载到ARM板。
三、预备知识
用集成开发环境,编写和调试程序的基本过程。
四、实验设备及工具(包括软件调试工具)
硬件:ARM嵌入式开发板、电源、PC机Pentumn100以上,直连串口线。
软件:PC机操作系统winARM ADS1.2集成开发环境、
实验步骤
在中,打开实验一中创建好的工程led。一个工程,主体函数需要各位同学自己编写,库函数资料压缩包中包含。
2
for ARM Developer Suite”打开Codewarrior,Codewarrior 是Metrowerks 公司为
ARM 公司所开发的IDE。
图1
ADS 为用户提供了7 个模板,分别是:
ARM Executable Image:用于由ARM 指令的代码生成一个ELF 格式的可执行映象文件;
ARM Object Library:用于由ARM 指令的代码生成一个armar 格式的目标文件库;Empty Project:用于创建一个不包含任何库或者源文件的工程;
Makefile Importer Wizard:用于将VC 的nmake 或者GNU make 文件转入到Code Warrior IDE 工程文件;
Thumb ARM Executable Image:用于由ARM 指令和Thumb 指令的混合代码生成一个可执行的ELF 格式的映象文件;
Thumb Executable image:用于由Thumb 指令创建一个可执行的ELF 格式的映象文件;
Thumb Object Library:用于由Thumb 指令的代码生成一个armar 格式的目标文件库。
一般情况下均选择“ARM Executabel Image”,然后在“Project name:”栏输
入工程名称,在“Location:”栏指定路径,本例子的工程名称为“Led”,点击
确定后“Led”工程建立。
工程建立以后将生成一个空的工程管理窗口,如图2所示:
图2
接下来就是向工程内添加和建立目标文件了,由于S3C44B0X开发板具有较多的资源,故其启动文件也较为复杂,所以一般都是直接打包使用,因此在添加启动文件之前请先将“44B0Lib”文件夹内的INC和SRC文件夹Led”工程目录下,然后通过工程管理窗口进行启动文件的添加,如图3所示:
图3
在添加文件的过程中你可能已经发现了CodeWarrior IDE 为用户建立了三个Target,分别是“DebugRel”、“Realse”、“Debug”,这三个Target 分别表示三种调试方式。DebugRel 表示在生成目标的时候会为每一个源文件生成调试信息;
Debug 表示为每一个源文件生成最完全的调试信息;Release 表示不生成任何调试信息。一般默认选择“DebugRel”。同时可以发现每次添加文件的时候都会询问添加到哪个“Target”,一般默认三个都添加,点击确定。确定后工程框如图:
但是这样的工程还并不能正确的被编译,还需要对工程的编译选项进行适当配置。为了设置方便,先点选Targets页面,选中DebugRel和Release变量,按下Del键将他们删除仅留下供调试用的Debug变量。点击菜单[Edit|Debug Setting…],弹出配置对话框,如图5所示:
首先选中TargetSetting, 将其中的Post-Linker设置为ARM fromELF,使得工程在链接后在通过fromELF产生二进制代码。
然后选中ARMLinker,对连接器进行设置,如图所示
注意在调试时,-ro-base的设置应当大于0xc000000.我们直接选择0xc008000这个地址。
然后在Options选项卡进行entry point设置,填写0x0C008000入口地址如图所示:
然后再设置Layout选项卡其中需要设置红框的对象和选项。如
图8
最后,如果希望编译后生成二进制文件放置地址如图所示:
红框处填写想要生成binary文件的位置,如果不设置,则默认在/led_data/DebugRel/目录下
这样对于Debug变量的基本设置就完成了,按下Apply确认后OK退出
3重点分析Main函数中的代码,了解系统的启动过程。Main函数的代码如下:
//开始
/**********************************************
文档评论(0)