原创 移植ucos到2410上

2009-3-23 15:40 3585 14 14 分类: MCU/ 嵌入式

ucos本身分为三个部分,一是跟平台无关的部分,二是跟硬件有关的部分,三是跟应用相关的部分。

1_11114652.JPG

在ucos官网http://www.micrium.com/有现成的上下载,基本不用改编译下就好了,过程中也碰到了些问题。

方法:

在官网上下载Michael Anburaj 的ucos for 2410 版本,当前网站上的是1.10版的,其中并不包含ucos跟平台无关的代码。需要另外下载,我用的是2.52版本的。将三个部分放在三个目录里,并分别加载到ADS1.2中。

大部分问题是因为一些预定义没有定义。

1、出现了ENDIAN_CHANGE的问题

解决方法:

在init.s中增加 ?ENDIAN_CHANGE 的定义。

? GBLL ENDIAN_CHANGE
ENDIAN_CHANGE SETL {FALSE}

2、定义_BIG_ENDIAN

编译时报错没有定义__BIG_ENDIAN,在MEMCFG.s中定义如下,定义成小端模式。

? GBLL __BIG_ENDIAN
__BIG_ENDIAN SETL {FALSE} ?

3、编译时总是会出现莫名其妙的错误。可能第一次编译会有20个错,同样的再编译一次会10个错,再编译一次可能就没错。

解决方法:

将Memcfg.a跟S3c2410x.a文件改为Memcfg.s,S3c2410x.s,至于什么原因还没弄清楚,只是好像以前听阿南说过的。

还有一些小问题不怎么记得了,不过很容易解决。

移植好了之后,就是进行消化了。

https://static.assets-stash.eet-china.com/album/old-resources/2009/3/23/88a84baf-1d55-406c-8aa7-3184308f08de.rar

在ads1.2下编译通过,用的是阿南的an2410开发板。

更多参考文章:

http://www.dzkf.cn/html/qianrushixitong/2008/0411/3085.html

http://www.eaw.com.cn/news/display/article/1091

http://www.icembed.com/info-21394.htm


PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
14
关闭 站长推荐上一条 /3 下一条