uc/os-II在STC89C52RC上的移植

MCU:STC89C51RC

最高主频:80M

Flash:4K

SRAM:512B

EEPROM:4K

系统:uc/os-II

集成开发环境:keil 4

在起初开始移植时我并没有注意到上面的Flash、SRAM这两个指标的限制,导致移植一直无法成功。最终在starup.a51中对XBPSTACKTOP进行了修改,从而得以运行成功。修改原因主要为一开始XBPSTACKTOP初始值为03FFH+1既1K+1,而STC89C52RC内部外扩SRAM只有256B,所以将其修改为00FFH+1。移植uc/os-II到STC89C52RC,总共花费了3天。其中也让我感到对于STC89C52RC还是有很多的不了解之处,如最大SRAM为512B,结果你能使用的最大SRAM也就只有256B,我花了半天的时间看关于STC89C52RC/RD+芯片手册,还是没有找到如何能够完全使用512B的SRAM的方法。(无奈啊.....)

总的来说,将uc/os-II移植到没有外扩RAM的STC89C52RC开发板上,基本上没有很大的意义,移植成功后,最大可运行任务数(无外扩RAM)为5个上下。并不是像网友们所评那样说“它运行任务速度慢”,其实速度上是有差别但它不是主要的问题,主要的矛盾还是来自于STC89C52RC这块芯片的片内资源过少。

编译成功代码链接:http://download.csdn.net/detail/toraloo/4693156

(PS:移植所过修改文件位于工程Transplant组下。)

你可能感兴趣的:(uc/os-II在STC89C52RC上的移植)