首页 > 代码库 > µC/OS-II版本升级指导

µC/OS-II版本升级指导

       IDE:     MDK V4+

       MCU:   LPC17xx(Cortex-M3)

       RTOS: μC/OS-II


       升级顺序:V2.52->V2.62->V2.76->V2.86->V2.91


      

V2.52

一、startup*.s (startup_lpc17xx.s)

1. 更改两个中断服务函数名称



: 名字可以使用其它。


2. 定义两个中断服务函数

1). OS_CPU_PendSVHandler
位置
定义: OS_CPU_A.ASM
声明: OS_CPU.H


2). OS_CPU_SysTickHandler
位置: OS_CPU_C.C


二、应用主文件 (app.c)

1. 定义开、关中断函数(汇编)

位置: OS_CPU_A.ASM


1). CPU_IntDis
关中断
2). CPU_IntEn
开中断


此函数首次调用者为main();并且为main()函数中的第一行。


2. SysTick_Config函数

位置: core_cm3.h


此函数的调用者为App_TaskStart(守护任务)
在调用之前,要进行板子的初始化。


三、临界函数

声明都在os_cpu.h

1. 进入临界函数

OS_ENTER_CRITICAL()


2. 退出临界函数

OS_EXIT_CRITICAL()


V2.62

一、更改ucos所有文件名为小写字母

1. 删除Source文件夹所有文件



2. 拷贝V2.62的Source文件夹下所有文件到Source文件夹下



3. 重命名OS_CPU_A.asm、OS_CPU_C.c、OS_CPU.h为os_cpu_a.asm、os_cpu_c.c、os_cpu.h



二、增加文件

1) 拷贝os_debug.c到Ports文件夹


2) 更改引用文件
由原来的#include "includes.h" -> #include <ucos_ii.h>




三、覆盖文件

1) 拷贝os_cfg.h到App文件夹,并覆盖之!


2) 增加引用文件"os_cpu.h"
#include <os_cpu.h>


3) 修改OS_TICKS_PER_SEC的值为1730


V2.76

一、覆盖ucos所有文件



1. 拷贝V2.76的Source文件夹下所有文件到Source文件夹下



二、增加文件

1) 拷贝os_dbg_r.c到Ports文件夹,变更名称为os_dbg.c
删除原来的os_debug.c文件


2) 拷贝os_cfg_r.h到App文件夹,变更名称为os_cfg.h


3) 修改OS_TICKS_PER_SEC的值为800


三、multiply defined 解决办法

1) ucos_ii.c
注释掉"#include <ucos_ii.h>"


四、os_core.c 错误解决办法

注释掉ucos_ii.c中的所有*.c文件


V2.86

一、步骤同前





二、差异

1) identifier "OS_TASK_TMR_PRIO" undefined.
在app_cfg.h增加其定义




2)不使用application hook
设置OS_APP_HOOKS_EN为0;


V2.91

一、步骤同前





二、差异



1)不使用application hook
设置OS_APP_HOOKS_EN为0;