5 Star 34 Fork 3

满鉴霆 / RT-Thread-wrapper-of-uCOS-III

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
changelog.md 22.71 KB
一键复制 编辑 原始数据 按行查看 历史
满鉴霆 提交于 2022-07-31 11:22 . update readme

维护日志

2020-06-29

  • 初步搭建框架
  • 完成信号量兼容
  • 完成os_time.c系统延时有关兼容

2020-06-30

  • 完成软件定时器兼容

2020-07-01

  • 实现互斥量兼容

2020-07-02

  • 实现消息队列兼容

2020-07-03

  • 实现信号标志组兼容

  • 实现任务内建寄存器兼容

  • 实现任务内建消息队列兼容

2020-07-04

  • 实现任务内建信号量兼容
  • 实现uCOS-III安全认证检查相关兼容
  • 对接os_cfg.h宏定义
  • 增加os_cfg_app.h并与之对接
  • 完成os_sem.c os_q.c文件宏定义检查以及流程的确认

2020-07-05

  • 完成os_flag.c os_mutex.c os_tmr.c os_task.c os_time.c os_core.c文件宏定义检查以及流程的确认
  • 优化os_cfg_app.hos_cfg.h

2020-07-06

  • 充实readme.md
  • 实现OSSemSetOSTaskSemSet函数
  • 优化OSTaskSuspendOSTaskResume函数,使其具备嵌套挂起/解挂能力
  • 实现钩子函数

2020-07-07

  • 移植os_mem.c文件
  • 优化了内核对象的结构体

2020-07-08

  • 实现OSTmrStateGet函数
  • 构建统计任务框架
  • 修改OSTaskDel函数没有删除任务内建信号量、任务内建队列的bug
  • 移植OS_TaskDbgListAddOS_TaskDbgListRemove函数
  • 实现OS_TaskInitTCB函数
  • 实现Idle任务(实则为RTT Idle任务的回调函数)
  • 实现Idle任务钩子函数OSIdleTaskHook()

2020-07-09

  • 实现uCOS-III内部任务——统计任务,可以正确计算CPU使用率、每个任务的使用堆栈

2020-07-10

  • 实现OSTimeDlyResume函数
  • 修复OSSemDel函数无法返回当前等待信号量数量、无法使用OS_OPT_DEL_NO_PEND选项的问题
  • 修复OSMutexDel函数无法返回当前等待信号量数量、无法使用OS_OPT_DEL_NO_PEND选项的问题
  • 修复OSQDel函数无法返回当前等待信号量数量、无法使用OS_OPT_DEL_NO_PEND选项的问题
  • 修复OSFlagDel函数无法返回当前等待信号量数量、无法使用OS_OPT_DEL_NO_PEND选项的问题

2020-07-11

  • 增加兼容原版OS_TCB结构体成员变量
  • 实现OSSemPendAbort函数,OSSemPend函数增加了处理OS_ERR_PEND_ABORT的功能

2020-07-12

  • 新增os_rtwrap.c文件,负责对RT-Thread和μCOS-III的转换提供支持。并在os.h文件末尾增加os_rtwrap.c内函数的声明
  • 实现OSTaskSemPendAbort函数
  • 实现OSTaskQPendAbort函数
  • 实现OSSemPendAbort函数,OSSemPend函数增加了处理OS_ERR_PEND_ABORT的功能
  • 实现OSSemMutexAbort函数,OSMutexPend函数增加了处理OS_ERR_PEND_ABORT的功能
  • 实现OSSFlagPendAbort函数,OSFlagPend函数增加了处理OS_ERR_PEND_ABORT的功能
  • 实现OSQPendAbort函数,OSQPend函数增加了处理OS_ERR_PEND_ABORT的功能

2020-07-14

  • 实现OSSchedRoundRobinCfg函数
  • 实现OSFlagPendGetFlagsRdy函数
  • 实现OSQFlush函数
  • 实现OSTaskQFlush函数
  • 补充timer_sample.c例程

2020-07-15

  • 移植cpu_core.c文件增加CPU_Init函数,老项目如果用到该函数在迁移时不会报错,函数内部没有实际动作
  • 优化了timer_sample.c例程
  • 补充mutex_sample.c例程

2020-07-16

  • 任务内建消息队列、任务内建信号量直接沿用任务的name,不再strcat字符串
  • 实现OSTmrDel函数回调函数功能
  • 增加OSTmrDbgListPtr链表
  • 实现了由RT-Thread定时器回调函数一个参数,到μCOS-III定时器回调函数两个参数的转换,在移植时可以直接沿用原版回调函数,无需再修改为RTT定时器的回调函数样式
  • 完整实现了p_tmr->State的所有选项,重新实现了OSTmrStateGet函数
  • 实现μCOS-III软件定时器带有延迟的周期延时功能(os_tmr.c受限项全部解决)

2020-07-18

  • 开始对接FinSH,实现msh命令

2020-07-19

  • OSInit函数内加入临界区保护
  • 实现OSSemDbgListPtr链表
  • 实现OSSemQty全局变量
  • 实现OSMutexDbgListPtr链表
  • 实现OSMutexQty全局变量
  • 实现OSQDbgListPtr链表
  • 实现OSQQty全局变量
  • 实现OSFlagDbgListPtr链表
  • 实现OSFlagQty全局变量

2020-07-20

  • os_rtwrap.c文件中增加rt_ipc_post_allrt_sem_release_all函数,并实现了OSSemPost函数OS_OPT_POST_ALL选项

2020-07-22

  • 增加sem_sample.c例程

2020-07-23

  • 增加q_sample.c例程
  • 修改main.c,严格按照μCOS-III官方给出的初始化流程进行初始化

2020-07-24

  • 增加μC/LIB全部文件(V1.39.00)
  • 更改工程结构,将工程文件提到一级目录
  • 实现μC/CPU中CPU_NameClrCPU_NameGetCPU_NameSet函数

2020-07-25

  • 增加os_dbg.cos_cfg_app.c文件,开始与μC/Probe软件进行对接
  • 实现OS_TCB成员变量.TaskState
  • OS_TCB成员变量.StkPtr改为在统计任务中定时更新

2020-07-26

  • 实现OS_TCB成员变量.PendOn.DbgName
  • 信号量、互斥量、消息队列、事件标志组结构体增加成员变量.DbgName

2020-07-27

  • 修复OSMutexPendAbortOSSemPendAbortOSQPendAbortOSFlagPendAbort函数返回值由当前还有多少任务在等待该内核对象 改为 放弃了多少个任务
  • 增加task_sem_sample.c例程
  • 实现OS_MUTEX结构体.OwnerNestingCtr.OwnerTCBPtr.OwnerOriginalPrio成员变量
  • 修复了CPU使用率突然飙升至100%的问题,该问题为μCOS-III原版(3.03版本)内部bug,即便是最新版的3.08版本该问题依然没有得到彻底解决(仅仅是将飙升至100%改成了骤降至0%)

2020-07-28

  • 增加OS_CFG_TASK_PROFILE_EN宏定义,用以降低资源占用
  • os_cfg_app.c文件中增加OS_CFG_DBG_EN宏定义,用以降低资源占用

2020-07-29

  • 完善readme

2020-08-03

  • 增加OS_TASK_STATE_SUSPENDED任务状态

2020-08-07

  • 将例程由sample字眼改成example
  • 增加PKG_USING_UCOSIII_WRAPPER_AUTOINIT

2020-08-08

  • 增加SConscript脚本,以支持env工具进行自动化添加软件包

2020-08-12

  • 完善readme文档

2020-08-13

  • 修复OSTmrRemainGet函数计算剩余时间的错误
  • 实现OS_TMR结构体.Match.Remain成员变量

2020-08-16

  • 实现错误代码OS_ERR_TASK_SUSPENDEDOS_ERR_TASK_OPTOS_ERR_LOCK_NESTING_OVFOS_ERR_MUTEX_NESTINGOS_ERR_MUTEX_OWNEROS_ERR_ROUND_ROBIN_DISABLEDOS_ERR_STK_LIMIT_INVALIDOS_ERR_FLAG_PEND_OPT
  • OSTaskStkChk函数当传入OS_TCB*参数为空时,转换为当前OS_TCB*的逻辑做了调整

2020-08-17

  • 对函数OSTmrRemainGetOSTmrStopOSTmrStateGetOSTmrStartOSTmrDel仿照原版增加定时器状态检查功能

2020-08-18

  • 修复OSInit函数return分支没有调用CPU_CRITICAL_EXIT()打开中断的bug
  • 增加视频介绍&教程链接
  • 增加3.08版本中新增的OSInitialized全局变量;OS_FALSEOS_TRUE宏定义;错误代码OS_ERR_OS_NOT_INITOS_ERR_OS_NO_APP_TASK
  • 删除已经在3.08中废弃的错误代码OS_ERR_INT_QOS_ERR_INT_Q_FULLOS_ERR_INT_Q_SIZEOS_ERR_INT_Q_STK_INVALIDOS_ERR_INT_Q_STK_SIZE_INVALID;增加3.08错误代码OS_ERR_ILLEGAL_DEL_RUN_TIME,同时补充该错误代码的相关实现
  • OSTmrDelOSTaskDelOSMutexDelOSSemDelOSQDelOSFlagDel函数增加OS_SAFETY_CRITICAL_IEC61508相关检查
  • 增加错误代码OS_ERR_MUTEX_OVF,同时补充该错误代码的相关实现
  • 增加错误代码OS_ERR_TASK_SUSPEND_CTR_OVF,同时补充该错误代码的相关实现
  • 增加错误代码OS_ERR_TMR_INVALID_CALLBACK,同时补充该错误代码的相关实现

2020-08-19

  • 将各个内核对象的名字指针归为到OS_CFG_DBG_EN宏定义管理范围(3.08版本如此)

2020-08-22

  • 完成对CPU_CRITICAL_ENTER/CPU_CRITICAL_EXIT匹配检查
  • 增加3.08版本的向下兼容宏定义(os.h)
  • 增加OS_CFG_INVALID_OS_CALLS_CHK_EN宏及其实现
  • 修复OSTaskDel函数在TCB指针为NULL即删除任务自己时,没有及时将内部变量p_tcb赋值为当前任务指针的bug
  • 实现OS_CFG_TASK_IDLE_EN宏以及相关检查

2020-08-23

  • 修改OS_TMR结构体.Remain.Match成员变量赋值的bug
  • 实现3.06版本中新增的OSTmrSet函数

2020-08-25

  • 实现OSTaskChangePrio函数,目前兼容层仅1个API没有实现

2020-08-31

  • 增加suspend_example.c例程

  • 修复p_tcb->TaskState变量,增加以下功能:

    #define  OS_TASK_STATE_PEND_TIMEOUT           (OS_STATE)(  3u)  /*   0 1 1     Pend + Timeout                         */
    #define  OS_TASK_STATE_DLY_SUSPENDED          (OS_STATE)(  5u)  /*   1 0 1     Suspended + Delayed or Timeout         */
    #define  OS_TASK_STATE_PEND_SUSPENDED         (OS_STATE)(  6u)  /*   1 1 0     Suspended + Pend                       */
    #define  OS_TASK_STATE_PEND_TIMEOUT_SUSPENDED (OS_STATE)(  7u)  /*   1 1 1     Suspended + Pend + Timeout             */

2020-09-20

  • 修复没有调用OS_MemInit函数初始化内存池的bug

2020-09-21

  • 修复OS_TmrCallback定时器内部回调函数在处理OSTmrSet更新参数时定时器参数可能无法重新设置的bug
  • 增加对OSInit函数的错误码检查代码
  • 修复OSStart函数内统计兼容层内部任务数量的错误(不应再包含空闲任务和定时器任务,这两个任务应为RTT内部任务)
  • OS_TmrCallback函数设为static文件私有函数
  • 清理删除OSTmrCreate函数多余参数检查代码

2020-09-22

  • 整理os_tmr.c注释
  • OSSemPost / OSMutexPost函数改为对OS_OPT_POST_NO_SCHED选项忽略

2020-09-23

  • 将代码中μCOS改为uCOS防止在终端输出时由于μ不是ASCII码而出现乱码

2020-09-27

  • 修复OS_TmrCallback函数中,在有延迟的周期延时没有对.Match .Remain成员变量重新赋值的问题

2020-09-28

  • 创建任务时,将任务堆栈的首地址由AppTask1_Stack改为&AppTask1_Stack[0]以突出堆栈的首地址

2020-10-05

  • 对齐并整理注释
  • 删除无用的钩子函数(已被RT-Thread钩子函数接管)
  • 修复OSTimeDlyResume函数中p_tcb->TaskState状态处理的问题
  • 将空闲任务纳入到OS_CFG_STAT_TASK_EN控制范围内
  • 删除os_dbg.c无用代码

2020-10-06

  • 删除os.h无用代码

2020-10-07

  • 实现PKG_USING_UCOSIII_WRAPPER_TINY以精简兼容层
  • 删除os_task.c无用注释
  • 增加OS_CFG_TASK_SEM_EN宏定义用于裁剪任务内建信号量

2020-10-15

  • 删除无用配置宏定义

2020-10-16

  • 优化PKG_USING_UCOSIII_WRAPPER_TINY

2020-10-26

  • 删除OSTaskSuspend()函数无用的选择分支

2020-11-01

  • 修复OSQDel()函数忘记回收消息内存池导致内存泄漏的问题
  • 整理os_q.c注释格式
  • 整理os_mem.c注释格式
  • 整理os_core.c注释格式
  • 整理os_flag.c注释格式
  • 整理os_mutex.c注释格式
  • 整理os_stat.c注释格式
  • 整理os_task.c注释格式
  • 整理os_time.c注释格式
  • 整理os_tmr.c注释格式
  • 整理os_sem.c注释格式

2020-11-08

  • 细微调整代码格式
  • 增加对老版本os_pend_multi.c文件的readme说明

2020-11-13

  • OSFlagPend()函数rt_option变量赋初值

2020-11-14

  • 优化工程文件结构
  • 头文件部分包含由<>改为""
  • 修复关闭某些宏定义,工程报错的问题
  • cpu.h文件增加CPU_CFG_STK_ALIGN_BYTES宏定义
  • 实现对OS_ERR_PEND_WOULD_BLOCK错误代码的支持

2020-11-15

  • 增加flag_example.c例程
  • 实现OS_CFG_FLAG_MODE_CLR_EN功能
  • OSQPostOSFlagPost函数改为对OS_OPT_POST_NO_SCHED选项忽略
  • 实现OS_TCB结构体中.FlagsPend.FlagsRdy.FlagsOpt成员变量

2020-11-16

  • 实现广播消息队列函数框架
  • 实现广播消息队列

2020-11-24

  • 将自动初始化由INIT_DEVICE_EXPORT提前至INIT_PREV_EXPORT

2020-11-30

  • 完善.FlagsRdy成员变量
  • 完善p_grp->Flags成员变量

2020-12-16

  • 修复OSTmrRemainGet()函数返回结果单位不一致的问题
  • 修复OS_TMR结构体.Remain成员变量数值单位不一致的问题
  • 修复从RT-Thread到uCOS-III定时器换算公式没有考虑到Systick变化的问题

2020-12-17

  • 完善.FlagsRdy成员变量

2020-12-25

  • 修复定义PKG_USING_UCOSIII_WRAPPER_TINY后,代码报错的问题

2021-05-05

  • 经过五个月的预发布测试,正式发布v1.0.0版本

2021-05-23

  • RT_IPC_FLAG_FIFO改为RT_IPC_FLAG_PRIO以确保实时性

Release

v0.1.0

所有内核对象兼容已经全部实现,可以满足正常的兼容需求。本版本尚未实现μCOS-III的统计任务,该功能将在后续版本中发布。

v0.2.0

[bug fix] 修改OSTaskDel函数没有删除任务内建信号量、任务内建队列的bug

[add] 实现OSTmrStateGet函数(目前仅有13个uCOS-III API无法兼容)

[add] 实现Idle任务(实则为RTT Idle任务的回调函数)

[add] 实现Idle任务钩子函数OSIdleTaskHook()

[add] 实现uCOS-III内部任务——统计任务

v0.3.0

[bug fix] 修复OSSemDel函数无法返回当前等待信号量数量、无法使用OS_OPT_DEL_NO_PEND选项的问题(已知)

[bug fix] 修复OSMutexDel函数无法返回当前等待信号量数量、无法使用OS_OPT_DEL_NO_PEND选项的问题(已知)

[bug fix] 修复OSQDel函数无法返回当前等待信号量数量、无法使用OS_OPT_DEL_NO_PEND选项的问题(已知)

[bug fix] 修复OSFlagDel函数无法返回当前等待信号量数量、无法使用OS_OPT_DEL_NO_PEND选项的问题(已知)

[bug fix] OSSemPend函数增加了处理OS_ERR_PEND_ABORT的功能(已知)

[bug fix] OSMutexPend函数增加了处理OS_ERR_PEND_ABORT的功能(已知)

[bug fix] OSQPend函数增加了处理OS_ERR_PEND_ABORT的功能(已知)

[bug fix] OSFlagPend函数增加了处理OS_ERR_PEND_ABORT的功能(已知)

[add] 增加兼容原版OS_TCB结构体成员变量

[add] 实现OSTimeDlyResume函数

[add] 实现OSSemPendAbort函数

[add] 实现OSTaskSemPendAbort函数

[add] 实现OSMutexPendAbort函数

[add] 实现OSQPendAbort函数

[add] 实现OSTaskQPendAbort函数

[add] 实现OSFlagPendAbort函数

[add] 实现OSSchedRoundRobinCfg函数

[add] 实现OSFlagPendGetFlagsRdy函数

[add] 实现OSFlagPendGetFlagsRdy函数

[add] 实现OSTaskQFlush函数

[add] 实现OSQFlush函数(目前仅有2个uCOS-III API无法兼容)

v0.4.0

[add] 移植cpu_core.c文件增加CPU_Init函数,防止老项目移植时因为没有该函数而报错,在函数内没有任何动作(DO NOTHING)

[del] 任务内建消息队列、任务内建信号量直接沿用任务的name,不再strcat字符串

[bug fix] 实现了由RTT定时器回调函数一个参数,到μCOS-III定时器回调函数两个参数的转换,在移植时可以直接沿用原版回调函数,无需再修改为RTT定时器的回调函数样式。(已知)

[add] 完整实现了p_tmr->State的所有选项,重新实现了OSTmrStateGet函数

[bug fix] 实现μCOS-III软件定时器带有延迟的周期延时功能(已知,os_tmr.c受限项全部解决)

[bug fix] OSInit函数内加入临界区保护

[add] 内核对象双向Dbg链表全部实现,并与FinSH对接,可以在msh模式下使用ucos命令查看兼容层管理的内核对象以及相关信息(例如CPU使用率)

v0.5.0

[bug fix] 实现并解决OSSemPost函数OS_OPT_POST_ALL选项(已知)

[add] 增加μC/LIB全部文件(V1.39.00)

[add] 实现μC/CPU中CPU_NameClrCPU_NameGetCPU_NameSet函数

[add] 实现与μC/Probe软件的对接以及对接所需的必要成员变量

[bug fix] 修复OSMutexPendAbortOSSemPendAbortOSQPendAbortOSFlagPendAbort函数返回值由 当前还有多少任务在等待该内核对象 改为 放弃了多少个任务

[bug fix] 修复了CPU使用率突然飙升至100%的问题,该问题为μCOS-III原版(3.03版本)内部bug,即便是最新版的3.08版本该问题依然没有得到彻底解决(仅仅是将飙升至100%改成了骤降至0%)

v0.6.0

[add] 增加OS_TASK_STATE_SUSPENDED任务状态

[bug fix] 修复OSTmrRemainGet函数计算剩余时间的错误

[add] 实现OS_TMR结构体.Match.Remain成员变量

[add] 实现错误代码OS_ERR_TASK_SUSPENDEDOS_ERR_TASK_OPTOS_ERR_LOCK_NESTING_OVFOS_ERR_MUTEX_NESTINGOS_ERR_MUTEX_OWNEROS_ERR_ROUND_ROBIN_DISABLEDOS_ERR_STK_LIMIT_INVALIDOS_ERR_FLAG_PEND_OPT

[enhance]OSTaskStkChk函数当传入OS_TCB*参数为空时,转换为当前OS_TCB*的逻辑做了调整

[bug fix] 对函数OSTmrRemainGetOSTmrStopOSTmrStateGetOSTmrStartOSTmrDel仿照原版增加定时器状态检查功能

v0.7.0

[bug fix] 修复OSInit函数return分支没有调用CPU_CRITICAL_EXIT()打开中断的bug

[add 3.08] 增加3.08版本中新增的OSInitialized全局变量;OS_FALSEOS_TRUE宏定义;错误代码OS_ERR_OS_NOT_INITOS_ERR_OS_NO_APP_TASK

[add 3.08] 删除已经在3.08中废弃的错误代码OS_ERR_INT_QOS_ERR_INT_Q_FULLOS_ERR_INT_Q_SIZEOS_ERR_INT_Q_STK_INVALIDOS_ERR_INT_Q_STK_SIZE_INVALID;增加3.08错误代码OS_ERR_ILLEGAL_DEL_RUN_TIME,同时补充该错误代码的相关实现

[add 3.08]OSTmrDelOSTaskDelOSMutexDelOSSemDelOSQDelOSFlagDel函数增加OS_SAFETY_CRITICAL_IEC61508相关检查

[add 3.08] 增加错误代码OS_ERR_MUTEX_OVF,同时补充该错误代码的相关实现

[add 3.08] 增加错误代码OS_ERR_TASK_SUSPEND_CTR_OVF,同时补充该错误代码的相关实现

[add 3.08] 增加错误代码OS_ERR_TMR_INVALID_CALLBACK,同时补充该错误代码的相关实现

3.08版本错误代码相关的兼容已经全部完成

[add 3.08] 增加3.08版本的向下兼容宏定义(os.h)

[add 3.08] 增加OS_CFG_INVALID_OS_CALLS_CHK_EN宏及其实现

[add] 在每个c和h文件开始位置都补充了μCOS-III最新的开源协议信息

[bug fix] 修复OSTaskDel函数在TCB指针为NULL即删除任务自己时,没有及时将内部变量p_tcb赋值为当前任务指针的bug

[add] 实现OS_CFG_TASK_IDLE_EN宏以及相关检查

[bug fix] 修改OS_TMR结构体.Remain.Match成员变量赋值的bug

[add 3.08] 实现3.06版本中新增的OSTmrSet函数

v0.8.0

[add] 实现OSTaskChangePrio函数,目前兼容层仅1个API没有实现

v0.9.0

[bug fix] 修复p_tcb->TaskState变量,增加以下功能:

#define  OS_TASK_STATE_PEND_TIMEOUT           (OS_STATE)(  3u)  /*   0 1 1     Pend + Timeout                         */
#define  OS_TASK_STATE_DLY_SUSPENDED          (OS_STATE)(  5u)  /*   1 0 1     Suspended + Delayed or Timeout         */
#define  OS_TASK_STATE_PEND_SUSPENDED         (OS_STATE)(  6u)  /*   1 1 0     Suspended + Pend                       */
#define  OS_TASK_STATE_PEND_TIMEOUT_SUSPENDED (OS_STATE)(  7u)  /*   1 1 1     Suspended + Pend + Timeout             */

[add] 增加suspend_example.c例程

v0.10.0

[bug fix] 修复没有调用OS_MemInit函数初始化内存池的bug

[bug fix] 修复OS_TmrCallback定时器内部回调函数在处理OSTmrSet更新参数时定时器参数可能无法重新设置的bug

[add] 增加对OSInit函数的错误码检查代码

[bug fix] 修复OSStart函数内统计兼容层内部任务数量的错误(不应再包含空闲任务和定时器任务,这两个任务应为RTT内部任务)

[fix]OS_TmrCallback函数设为static文件私有函数

[del] 清理删除OSTmrCreate函数多余参数检查代码

整理os_tmr.c注释

OSSemPost OSMutexPost函数改为对OS_OPT_POST_NO_SCHED选项忽略

[bug fix] 将代码中μCOS改为uCOS防止在终端输出时由于μ不是ASCII码而出现乱码

[bug fix] 修复OS_TmrCallback函数中,在有延迟的周期延时没有对.Match .Remain成员变量重新赋值的问题

创建任务时,将任务堆栈的首地址由AppTask1_Stack改为&AppTask1_Stack[0]以突出堆栈的首地址

v0.11.0

对齐并整理注释

[del] 删除无用的钩子函数(已被RT-Thread钩子函数接管)

[bug fix] 修复OSTimeDlyResume函数中p_tcb->TaskState状态处理的问题

将空闲任务纳入到OS_CFG_STAT_TASK_EN控制范围内

[del] 删除os_dbg.c无用代码

[del] 删除os.h无用代码

[add] 实现PKG_USING_UCOSIII_WRAPPER_TINY以精简兼容层

[del] 删除os_task.c无用注释

v0.12.0

[add] 增加OS_CFG_TASK_SEM_EN宏定义用于裁剪任务内建信号量

[add]os.h中增加宏定义检查代码

[del] 删除无用配置宏定义

[adjust] 优化PKG_USING_UCOSIII_WRAPPER_TINY

[del] 删除OSTaskSuspend()函数无用的选择分支

[bug fix] 修复OSQDel()函数忘记回收消息内存池导致内存泄漏的问题

[adjust] 整理os_q.cos_mem.cos_core.cos_core.cos_flag.cos_stat.cos_task.cos_time.cos_tmr.cos_sem.c文件注释格式

[doc] 增加对老版本os_pend_multi.c文件的readme说明

[bug fixed]OSFlagPend()函数rt_option变量赋初值

[adjust] 优化工程文件结构

[adjust] 头文件部分包含由<>改为""

[bug] 修复关闭某些宏定义,工程报错的问题

[add] cpu.h文件增加CPU_CFG_STK_ALIGN_BYTES宏定义

[add] 实现对OS_ERR_PEND_WOULD_BLOCK错误代码的支持

[add] 增加flag_example.c例程

[add] 实现OS_CFG_FLAG_MODE_CLR_EN功能

[adjust] OSQPostOSFlagPost函数改为对OS_OPT_POST_NO_SCHED选项忽略

[add] 实现OS_TCB结构体中.FlagsPend.FlagsRdy.FlagsOpt成员变量

v0.13.0

[add] 实现广播消息队列

[adjust] 将自动初始化由INIT_DEVICE_EXPORT提前至INIT_PREV_EXPORT

完善.FlagsRdy成员变量

完善p_grp->Flags成员变量

[fix] 修复OSTmrRemainGet()函数返回结果单位不一致的问题

[fix] 修复OS_TMR结构体.Remain成员变量数值单位不一致的问题

[fix] 修复从RT-Thread到uCOS-III定时器换算公式没有考虑到Systick变化的问题

v1.0.0

经过五个月的预发布测试,正式发布v1.0.0版本

V1.0.1

RT_IPC_FLAG_FIFO改为RT_IPC_FLAG_PRIO以确保实时性

已知问题

受上游RT-Thread影响(https://github.com/RT-Thread/rt-thread/issues/3946) 导致兼容层的任务挂起/解挂API在挂起其他任务时,不能正确工作。任务自己挂起自己时,可以正常工作。

C
1
https://gitee.com/mysterywolf/RT-Thread-wrapper-of-uCOS-III.git
git@gitee.com:mysterywolf/RT-Thread-wrapper-of-uCOS-III.git
mysterywolf
RT-Thread-wrapper-of-uCOS-III
RT-Thread-wrapper-of-uCOS-III
master

搜索帮助