使用的是CMSIS-RTOS2封装的API函数
内核信息和控制
osKernelGetInfo : 获取 RTOS 内核信息。
osKernelGetState : 获取当前 RTOS 内核状态。
osKernelGetSysTimerCount : 获取 RTOS 内核的系统计时器的计数。
osKernelGetSysTimerFreq : 获取 RTOS 内核的系统定时器的频率。
osKernelInitialize : 初始化 RTOS 内核。
osKernelLock : 锁定 RTOS 内核调度程序。
osKernelUnlock : 解锁 RTOS 内核调度程序。
osKernelRestoreLock : 恢复 RTOS 内核调度程序的锁定状态。
osKernelResume : 恢复 RTOS 内核调度程序。
osKernelStart : 启动 RTOS 内核调度程序。
osKernelSuspend : 挂起 RTOS 内核调度程序。
osKernelGetTickCount : 获取 RTOS 内核计数。
osKernelGetTickFreq : 获取 RTOS 内核滴答频率。
线程管理
osThreadDetach : 分离一个线程(当线程终止时线程存储可以被回收)。
osThreadEnumerate : 枚举活动线程。
osThreadExit : 终止当前正在运行的线程。
osThreadGetCount : 获取活动线程的数量。
osThreadGetId : 返回当前正在运行的线程的线程 ID 。
osThreadGetName : 获取线程的名称。
osThreadGetPriority : 获取线程的当前优先级。
osThreadGetStackSize : 获取线程的堆栈大小。
osThreadGetStackSpace : 在执行期间基于堆栈水印记录获取线程的可用堆栈空间。
osThreadGetState : 获取线程的当前线程状态。
osThreadJoin : 等待指定的线程终止。
osThreadNew : 创建一个线程并将其添加到活动线程。
osThreadResume : 恢复线程的执行。
osThreadSetPriority : 更改线程的优先级。
osThreadSuspend : 暂停执行一个线程。
osThreadTerminate : 终止线程的执行。
osThreadYield : 将控制权交给状态为 READY 的下一个线程。
线程标志
osThreadFlagsSet : 设置线程指定的线程标志。
osThreadFlagsClear : 清除当前运行线程指定的线程标志。
osThreadFlagsGet : 获取当前正在运行的线程的当前线程标志。
osThreadFlagsWait : 等待当前正在运行的线程的一个或多个线程标志发出信号。
事件标志
osEventFlagsGetName : 获取事件标志对象的名称。
osEventFlagsNew : 创建并初始化事件标志对象。
osEventFlagsDelete : 删除事件标志对象。
osEventFlagsSet : 设置指定的事件标志。
osEventFlagsClear : 清除指定的事件标志。
osEventFlagsGet : 获取当前的事件标志。
osEventFlagsWait : 等待一个或多个事件标志发出信号。
通用等待函数
osDelay : 等待超时(时间延迟)。
osDelayUntil : 等到指定的时间。
定时器管理
osTimerDelete : 删除一个定时器。
osTimerGetName : 获取定时器的名称。
osTimerIsRunning : 检查定时器是否正在运行。
osTimerNew : 创建并初始化一个定时器。
osTimerStart : 启动或重新启动定时器。
osTimerStop : 停止一个定时器。
互斥管理
osMutexAcquire : 如果它被锁定,则获取互斥锁或超时值。
osMutexDelete : 删除互斥对象。
osMutexGetName : 获取互斥对象的名称。
osMutexGetOwner : 获取拥有互斥对象的线程。
osMutexNew : 创建并初始化一个互斥对象。
osMutexRelease : 释放由 osMutexAcquire 获取的互斥锁。
信号量
osSemaphoreAcquire : 如果没有令牌可用,请获取信号量令牌或超时。
osSemaphoreDelete : 删除一个信号量对象。
osSemaphoreGetCount : 获取当前的信号量令牌计数。
osSemaphoreGetName : 获取信号量对象的名称。
osSemaphoreNew : 创建并初始化信号量对象。
osSemaphoreRelease : 释放一个信号量令牌直到最初的最大数量。
内存池
osMemoryPoolAlloc : 从内存池中分配内存块。
osMemoryPoolDelete : 删除一个内存池对象。
osMemoryPoolFree : 将分配的内存块返还给内存池。
osMemoryPoolGetBlockSize : 获取内存池中的内存块大小。
osMemoryPoolGetCapacity : 获取内存池中的最大内存块数。
osMemoryPoolGetCount : 获取内存池中使用的内存块数量。
osMemoryPoolGetName : 获取内存池对象的名称。
osMemoryPoolGetSpace : 获取内存池中可用的内存块数量。
osMemoryPoolNew : 创建并初始化一个内存池对象。
消息队列
osMessageQueueDelete : 删除一个消息队列对象。
osMessageQueueGet : 如果队列为空,则从队列获取消息或超时。
osMessageQueueGetCapacity : 在消息队列中获取最大数量的消息。
osMessageQueueGetCount : 获取消息队列中排队的消息数量。
osMessageQueueGetMsgSize : 获取内存池中的最大消息大小。
osMessageQueueGetName : 获取消息队列对象的名称。
osMessageQueueGetSpace : 获取消息队列中消息的可用插槽数量。
osMessageQueueNew : 创建并初始化消息队列对象。
osMessageQueuePut : 如果队列已满,请将消息放入队列或超时。
osMessageQueueReset : 将消息队列重置为初始空状态。
OS Tick API
OS_Tick_Setup : 建立 OS Tick 。
OS_Tick_Enable : 启用 OS Tick 。
OS_Tick_Disable : 禁用 OS Tick 。
OS_Tick_AcknowledgeIRQ : 确认 OS Tick IRQ 。
OS_Tick_GetIRQn : 获取 OS Tick IRQ 编号。
OS_Tick_GetClock : 获取 OS Tick 时钟。
OS_Tick_GetInterval : 获取 OS Tick 间隔。
OS_Tick_GetCount : 获取 OS Tick 计数值。
OS_Tick_GetOverflow : 获取 OS Tick 溢出状态。
RTX5 特定的 API
osRtxErrorNotify : OS 错误回调函数。
osRtxIdleThread : OS 空闲线程。
将用到的API函数都复制下来了,方便查阅