• 在LiteOS-M中,创建任务,可以调用LOS_TaskCreate 接口,也可以调用osThreadNew,其中osThreadNew最终还是调用LOS_TaskCreate。
  • osThreadNew这个接口是CMSIS-RTOS2中的,CMSIS-RTOS2对于底层的RTOS的接口进行了封装,LiteOS-M只是RTOS的一种。
  • 在两个接口中的参数中,都涉及任务的优先级。在LOS_TaskCreate 接口中,优先级的数值越大,表示任务的优先级越低;而在osThreadNew接口中,优先级的数值越大,表示任务的优先级越高。

osThreadNew接口

CMSIS-RTOS2的接口可以参考https://arm-software.github.io/CMSIS_5/RTOS2/html/group__CMSIS__RTOS__ThreadMgmt.html#ga48d68b8666d99d28fa646ee1d2182b8f

osThreadNew接口中一个参数是osThreadAttr_t类型的:
在这里插入图片描述

osThreadAttr_t结构中有优先级的字段priority:
在这里插入图片描述

priority的数值越大,表示任务的优先级越高
在这里插入图片描述

LOS_TaskCreate接口

LITE_OS_SEC_TEXT_INIT UINT32 LOS_TaskCreate(UINT32 *taskID, TSK_INIT_PARAM_S *taskInitParam)

在这里插入图片描述

usTaskPrio的数值越大,表示任务的优先级越低

osThreadNew接口调用LOS_TaskCreate接口时对优先级进行了转换

在这里插入图片描述

在这里插入图片描述

Logo

openvela 操作系统专为 AIoT 领域量身定制,以轻量化、标准兼容、安全性和高度可扩展性为核心特点。openvela 以其卓越的技术优势,已成为众多物联网设备和 AI 硬件的技术首选,涵盖了智能手表、运动手环、智能音箱、耳机、智能家居设备以及机器人等多个领域。

更多推荐