ffxz 发表于 2006-8-18 09:10:47

让RT-Thread能够真正用起来

大家好!

为了让RT-Thread能够真正用起来,以后会考虑RT-Thread在一些通用平台上的移植,而这些平台将是容易获得的,自己DIY或者通过某些厂商获得。

以下硬件平台会优先考虑:
- AMTEL AT91SAM7SXX系列平台 [已经选定了硬件平台]
- Samsung 44b0平台
- IA32 [正在移植]
- Philips LPC21/22xx系列平台
- STR71x系列平台
- ColdFire平台

也非常欢迎爱好者自行移植然后回馈给我。

xuing 发表于 2006-8-20 20:55:28

太好了
我想在44b0和2410上进行移植
希望得到版主的帮助

ffxz 发表于 2006-8-21 09:08:01

建议先做44b0的移植

44b0的移值可以参看4510的移植,应该极大部分是差不多的。当然先得搭好RT-Thread的开发环境,有什么问题你可以直接发贴到论坛上来或者给我发邮件。

xuing 发表于 2006-8-22 17:32:03

我使用2.95版本的gcc编译RT-THREAD,结果出现错误如下:
context.S: Assembler messages:
context.S:59: ERROR flag for {c}psr instruction expected
context.S:61: ERROR flag for {c}psr instruction expected

因为我不想换高版本的gcc,请问问题出在哪里?怎么修改?
谢谢

ffxz 发表于 2006-8-22 20:13:25

目前只支持gcc 3.x版本编译

xuing 发表于 2006-8-23 09:29:58

在kernel\libcpu\arm\common目录下的文件时干吗用的哪?

ffxz 发表于 2006-8-23 09:54:59

面向ARM系统的乘除法,这个里面包含了一个从BSD系统而来的汇编文件,整个系统就这个地方是外来的了。

xuing 发表于 2006-8-25 11:13:36

斑竹的rt-thread是在SRAM上跑得吗?我想在flash上跑该怎么修改那?

ffxz 发表于 2006-8-25 11:38:46

针对44b0吧?

针对44b0,需要把中断向量表烧到0地址(实际上0地址可以留给bootloader,但是4地址以后的必须是RTT的中断向量表),大致内存可以这样分布:
0x0000
0x0004 <--RTT vector
...
...


0xC000 (这个地方应该是SDRAM了,具体地址和你的开发板相关)
0xC004 <-- RTT vector,这里的中断向量和0x0004的实际是一样的,都统一指向RTT BSP中的TRAP处理函数
0xC008
...
...

如果完全没有bootloader,那么需要RTT的引导部分把自身复制到SDRAM中
如果想做XIP(直接在flash上运行),我还没做过,大概需要这样吧:
把RTT中data段地址在链接脚本中改到SDRAM,并在引导部分把flash上的data段复制过去

你有MSN,GTalk等等的么?我们可以线上交流,我的邮件:bernard.xiong at gmail.com

xuing 发表于 2006-8-25 13:01:23

你的邮件地址不对阿,发不到你的信箱

xuing 发表于 2006-8-28 12:07:04

RT-thread支不支持用new开一个数据空间?

ffxz 发表于 2006-8-28 12:32:00

用new :shock: ,你以为这是C++啊,可以new 一个对象:-)

RT-Thread可以支持动态内存分配,rt_malloc/rt_free

xuing 发表于 2006-8-28 13:29:37

为什么只可以new一个对象那?我觉得加一个C++的库就可以使用了呀!

xuing 发表于 2006-8-30 11:50:11

我没有找到rt_hw_interrupt_enable和rt_hw_interrupt_disable这两个函数的实现
请问这两个函数是在哪个文件里面实现的?

ffxz 发表于 2006-8-30 12:45:43

这个在context.S中实现的
页: [1] 2
查看完整版本: 让RT-Thread能够真正用起来