KEIL自带操作系统RTX各个函数简介

来源:互联网 发布:秦美人天神附体数据 编辑:程序博客网 时间:2024/06/09 19:51

Kernel Information and Control

· osKernelInitialize: Initialize the RTOS kernel.

· osKernelStart: Start the RTOS kernel.

· osKernelRunning: Query if the RTOS kernel is running.

· osKernelSysTick$ : Get RTOS kernel system timer counter.

· osKernelSysTickFrequency$ : RTOS kernel system timer frequency in Hz.

· osKernelSysTickMicroSec$ : Convert microseconds value to RTOS kernel system timer value.

Thread Management

· osThreadCreate: Start execution of a thread function.

· osThreadTerminate: Stop execution of a thread function.

· osThreadYield: Pass execution to next ready thread function.

· osThreadGetId: Get the thread identifier to reference this thread.

· osThreadSetPriority: Change the execution priority of a thread function.

· osThreadGetPriority: Obtain the current execution priority of a thread function.

Generic Wait Functions

· osDelay: Wait for a specified time.

· osWait$ : Wait for any event of the type Signal, Message, or Mail.

· Timer Management

· osTimerCreate: Define attributes of the timer callback function.

· osTimerStart: Start or restart the timer with a time value.

· osTimerStop: Stop the timer.

· osTimerDelete: Delete a timer.

Signal Management

· osSignalSet: Set signal flags of a thread.

· osSignalClear: Reset signal flags of a thread.

· osSignalWait: Suspend execution until specific signal flags are set.

· Mutex Management

· osMutexCreate: Define and initialize a mutex.

· osMutexWait: Obtain a mutex or Wait until it becomes available.

· osMutexRelease: Release a mutex.

· osMutexDelete: Delete a mutex.

· Semaphore Management

· osSemaphoreCreate: Define and initialize a semaphore.

· osSemaphoreWait: Obtain a semaphore token or Wait until it becomes available.

· osSemaphoreRelease: Release a semaphore token.

· osSemaphoreDelete: Delete a semaphore.

· Memory Pool Management

· osPoolCreate: Define and initialize a fix-size memory pool.

· osPoolAlloc: Allocate a memory block.

· osPoolCAlloc: Allocate a memory block and zero-set this block.

· osPoolFree: Return a memory block to the memory pool.

· Message Queue Management

· osMessageCreate: Define and initialize a message queue.

· osMessagePut: Put a message into a message queue.

· osMessageGet: Get a message or suspend thread execution until message arrives.

· Mail Queue Management

· osMailCreate: Define and initialize a mail queue with fix-size memory blocks.

· osMailAlloc: Allocate a memory block.

· osMailCAlloc: Allocate a memory block and zero-set this block.

· osMailPut: Put a memory block into a mail queue.

· osMailGet: Get a mail or suspend thread execution until mail arrives.

· osMailFree: Return a memory block to the mail queue.

The following CMSIS-RTOS functions can be called from threads and interrupt service routines (ISR):

· osSignalSet

· osSemaphoreRelease

· osPoolAllocosPoolCAllocosPoolFree

· osMessagePutosMessageGet

· osMailAllocosMailCAllocosMailGetosMailPutosMailFree

0 0
原创粉丝点击