嵌入式问题(codewarrior编译、下载程序)

开始学习arm裸机程序,之前就在准备着,可是一直进展的不是很顺;原因是自己效率不是很高,怕失败;不过突然顿悟了,与其慢慢的做自己会的东西不如突破下自己往前走因为怕失败的人终究是要失败的;但是有个前提--得有目标不能今天学linux,明天又学arm裸机;所以从今天开始学arm裸机程序。于是决定,早睡早起,遇到问题勇于尝试而不是死命的想,做技术的可以先会做了再明白为什么这么做。

前面开题,下面说说学习过程中遇到的问题,无论是硬件问题还是软件问题,无论是板子的问题还是自身的问题都将记录在日志中便于今后学习。

今天遇到问题:1.ads编译不出arm可执行的二进制文件2.bin程序下不近开发板。

解决方案:

问题1:

用codewarrior编译程序值钱需要对环境设置;

步骤1:先建立工程还有包括main.c和Init.s;

步骤2:将main.c和Init.s加进工程中;

步骤3:设置DebugRel Setting 中所有关于langue setting中的选项都要设置成处理器的型号,如S3C2440设置为ARM920T;

步骤4:Target中的Target setting有一项Post-link设置为ARM fromELF;

步骤5:ARM Linker中的output中的R0 base选项设置为运用程序的地址,如FL2440开发板设置为0x32000000;

步骤6:ARM Linker中的layout中的object/symbol选项中设置为Init.o(和Init.s对应,因为编译生成的*.o是来自源文件) ;

步骤7:进行make,在debugrel文件夹中可以找到*.bin的文件,下载执行;

问题2:

下载自己编写的运用程序时,开发板启动boot,但是不能只启动boot,就是说开发板本来是启动linux或wince的,下载程序的时候让他停在 boot中。FL2440中有一种启动方式是只启动boot就不动作了,在这个模式下是下不近程序的。

后记:这些只是问题和解决方案但是问题2没明白为什么这么做,看看今后能不能明白。 

永不止步步 发表于11-11 15:16 浏览65535次
分享到:

已有0条评论

暂时还没有回复哟,快来抢沙发吧

添加一条新评论

只有登录用户才能评论,请先登录注册哦!

话题作者

永不止步步
金币:67417个|学分:363791个
立即注册
畅学电子网,带你进入电子开发学习世界
专业电子工程技术学习交流社区,加入畅学一起充电加油吧!

x

畅学电子网订阅号