文件名称:51单片机移植UCOS-II的方法与改进(大模式+仿真堆栈)
文件大小:605KB
文件格式:RAR
更新时间:2014-06-07 03:02:43
移植 UCOS-II 改进 仿真堆栈
前一段时间一直在学习UCOS-II,看了一个月的源码感觉有了一个初步的认识,就开始着手找一个平台移植起来跑跑看,不然终究是纸上谈兵。先是看了公司的一个产品,用的UC是在ARM平台上移植的,费了好大力气终于把任务切换的过程看明白了。自以为对于UC的移植掌握的差不多了,于是拿出自己先前焊的51最小系统,想在51上面把UC跑起来,可是真正移植的时候却发现难度很大,不知如何下手,没办法只好找网上移植范例来学习。我找到的版本有两个,一个不知道是谁移植的,用的是KEIL小模式编译的;另一个是03年杨屹大侠移植的,用的是KEIL大模式编译的。随着学习的深入,发现不同平台上移植UC真是相去甚远,还发现两个版本的UCOS for 51都有不同程度的缺点。下面我会对两个版本的UCOS for 51基于自己的理解作一些阐述,并详细分析我改进的方法。 源码加说明文档
【文件预览】:
51单片机移植UCOS-II的方法与改进.doc
UCOS SJJ
----uCosii()
--------OS_TIME.C(10KB)
--------OS_CPU_C.C(14KB)
--------OS_CPU_A.ASM(8KB)
--------uCOS_II.H(47KB)
--------OS_FLAG.C(44KB)
--------OS_CFG.H(8KB)
--------OS_CORE.C(44KB)
--------OS_MEM.C(14KB)
--------OS_MUTEX.C(27KB)
--------OS_Q.C(34KB)
--------OS_TASK.C(35KB)
--------OS_CPU.H(4KB)
--------uCOS_II.C(1KB)
--------OS_SEM.C(19KB)
--------OS_MBOX.C(23KB)
----UCOS51_uvproj.bak(15KB)
----STARTUP.LST(14KB)
----OS_CPU_C.obj(32KB)
----OS_CPU_C.SRC(27KB)
----UCOS51(305KB)
----UCOS51.M51(56KB)
----OS_SEM.SRC(21KB)
----OS_CPU_C.lst(22KB)
----UCOS51.plg(2KB)
----OS_MBOX.obj(22KB)
----main.SRC(19KB)
----uCOS_II.lst(2KB)
----OS_MBOX.lst(32KB)
----UCOS51.uvproj(15KB)
----STARTUP.A51(6KB)
----OS_CORE.ls1(188KB)
----OS_SEM.lst(26KB)
----OS_MEM.lst(19KB)
----OS_TASK.obj(29KB)
----UCOS51.hex(23KB)
----Source()
--------serial.c(3KB)
--------main.c(4KB)
--------OS_CPU_A.ASM(8KB)
--------serial.h(392B)
--------INCLUDES.H(1KB)
----OS_SEM.obj(22KB)
----OS_MUTEX.SRC(30KB)
----uCOS_II.obj(44KB)
----OS_FLAG.lst(59KB)
----OS_TIME.lst(14KB)
----serial.lst(5KB)
----OS_Q.obj(22KB)
----OS_MUTEX.lst(37KB)
----UCOS51.uvopt(65KB)
----OS_CORE.obj(39KB)
----OS_FLAG.obj(22KB)
----main.ls1(66KB)
----main.obj(35KB)
----OS_MEM.obj(21KB)
----serial.obj(25KB)
----main.lst(8KB)
----STARTUP.OBJ(807B)
----OS_TIME.obj(22KB)
----UCOS51_uvopt.bak(65KB)
----OS_CPU_C.ls1(82KB)
----OS_SEM.ls1(45KB)
----UCOS51.lnp(247B)
----OS_CPU_A.lst(19KB)
----OS_CORE.lst(61KB)
----OS_Q.lst(46KB)
----OS_CORE.SRC(73KB)
----OS_CPU_A.obj(2KB)
----OS_TASK.lst(48KB)
----OS_MUTEX.obj(22KB)