CMSIS v2.0适配接口
LiteOS目前已支持大部分CMSIS v2.0接口,接口声明在compat/cmsis/2.0/cmsis_os2.h,接口说明详见下表:
接口名 | 类型 | 说明 |
|---|---|---|
osKernelInitialize | 内核类接口 | 初始化操作系统 |
osKernelGetInfo | 内核类接口 | 获取系统版本信息 |
osKernelGetState | 内核类接口 | 获取系统状态(osThreadState_t) |
osKernelStart | 内核类接口 | 启动操作系统 |
osKernelLock | 内核类接口 | 锁内核(锁调度) |
osKernelUnlock | 内核类接口 | 解锁内核(解锁调度) |
osKernelRestoreLock | 内核类接口 | 恢复内核锁状态 |
osKernelGetTickCount | 内核类接口 | 获取系统启动后时间(单位:tick) |
osKernelGetTickFreq | 内核类接口 | 获取每秒的tick数 |
osKernelGetSysTimerCount | 内核类接口 | 获取系统启动后时间(单位:cycle) |
osKernelGetSysTimerFreq | 内核类接口 | 获取每秒的CPU cycle数 |
osThreadNew | 任务/线程类接口 | 创建任务 |
osThreadGetName | 任务/线程类接口 | 获取任务名 |
osThreadGetId | 任务/线程类接口 | 获取任务句柄 |
osThreadGetState | 任务/线程类接口 | 获取任务状态 |
osThreadGetStackSize | 任务/线程类接口 | 获取任务栈大小 |
osThreadGetStackSpace | 任务/线程类接口 | 获取未使用过的任务栈空间 |
osThreadSetPriority | 任务/线程类接口 | 设置任务优先级 |
osThreadGetPriority | 任务/线程类接口 | 获取任务优先级 |
osThreadYield | 任务/线程类接口 | 切换至同优先级的就绪任务 |
osThreadSuspend | 任务/线程类接口 | 挂起任务(恢复前无法得到调度) |
osThreadResume | 任务/线程类接口 | 恢复任务 |
osThreadTerminate | 任务/线程类接口 | 终止任务(建议不要主动终止任务) |
osThreadGetCount | 任务/线程类接口 | 获取已创建的任务数量 |
osThreadFlagsSet | 任务事件类接口 | 写入指定事件 |
osThreadFlagsClear | 任务事件类接口 | 清除指定事件 |
osThreadFlagsGet | 任务事件类接口 | 获取当前任务事件 |
osThreadFlagsWait | 任务事件类接口 | 等待指定事件 |
osDelay | 延时类接口 | 任务延时(单位:tick) |
osDelayUntil | 指针消息类接口 | 延时至某一时刻(单位:tick) |
osTimerNew | 定时器类接口 | 创建定时器 |
osTimerGetName | 定时器类接口 | 获取定时器名称(目前固定返回NULL) |
osTimerStart | 定时器类接口 | 启动定时器(若定时器正在计时会先停止该定时器) |
osTimerStop | 定时器类接口 | 停止定时器 |
osTimerIsRunning | 定时器类接口 | 定时器是否在计时中 |
osTimerDelete | 定时器类接口 | 删除定时器 |
osEventFlagsNew | 事件类接口 | 创建事件(与任务事件ThreadFlags的差别在于有独立的句柄和控制块) |
osEventFlagsGetName | 事件类接口 | 获取事件名称(目前固定返回NULL) |
osEventFlagsSet | 事件类接口 | 写入指定事件 |
osEventFlagsClear | 事件类接口 | 清楚指定事件 |
osEventFlagsGet | 事件类接口 | 获取当前事件值 |
osEventFlagsWait | 事件类接口 | 等待指定事件 |
osEventFlagsDelete | 事件类接口 | 删除事件 |
osMutexNew | 互斥锁类接口 | 创建互斥锁 |
osMutexGetName | 互斥锁类接口 | 获取互斥锁名称(目前固定返回NULL) |
osMutexAcquire | 互斥锁类接口 | 获取互斥锁(阻塞等待) |
osMutexRelease | 互斥锁类接口 | 释放互斥锁 |
osMutexGetOwner | 互斥锁类接口 | 获取持有该互斥锁的任务句柄 |
osMutexDelete | 互斥锁类接口 | 删除互斥锁 |
osSemaphoreNew | 信号量类接口 | 创建信号量 |
osSemaphoreGetName | 信号量类接口 | 获取信号量名称(目前固定返回NULL) |
osSemaphoreAcquire | 信号量类接口 | 获取信号量(阻塞等待) |
osSemaphoreRelease | 信号量类接口 | 释放信号量 |
osSemaphoreGetCount | 信号量类接口 | 获取信号量的计数值 |
osSemaphoreDelete | 信号量类接口 | 删除信号量 |
osMessageQueueNew | 消息队列类接口 | 创建消息队列 |
osMessageQueueGetName | 消息队列类接口 | 获取消息队列名称(目前固定返回NULL) |
osMessageQueuePut | 消息队列类接口 | 往消息队列里放入消息 |
osMessageQueueGet | 消息队列类接口 | 从消息队列里获取消息 |
osMessageQueueGetCapacity | 消息队列类接口 | 获取消息队列节点数量 |
osMessageQueueGetMsgSize | 消息队列类接口 | 获取消息队列节点大小 |
osMessageQueueGetCount | 消息队列类接口 | 获取当前消息队列里的消息数量 |
osMessageQueueGetSpace | 消息队列类接口 | 获取当前消息队列里的剩余消息数量 |
osMessageQueueDelete | 消息队列类接口 | 删除消息队列 |

