-
xTaskCreate():- 用法:
cxTaskCreate(taskFunction, taskName, stackSize, parameters, priority, taskHandle)- 参数:
taskFunction:任务函数,即任务的入口函数。taskName:任务的名称。stackSize:任务堆栈的大小。parameters:传递给任务函数的参数。priority:任务的优先级。taskHandle:任务句柄,用于引用创建的任务。
- 返回值:如果任务创建成功,则返回
pdPASS,否则返回errCOULD_NOT_ALLOCATE_REQUIRED_MEMORY。
-
vTaskDelay():- 用法:
c
vTaskDelay(delay)
- 参数:
delay:延时的时间,以系统时钟节拍为单位。
- 返回值:无。
-
xQueueCreate():
- 用法:xQueueCreate(queueLength, itemSize)
- 参数:
- queueLength:队列的长度,即可以存储的元素数量。
- itemSize:每个队列元素的大小。
- 返回值:如果队列创建成功,则返回一个指向队列的句柄,否则返回NULL。
-
xQueueSend():- 用法:
c
xQueueSend(queueHandle, item, waitTime)
- 参数:
queueHandle:队列的句柄。item:要发送的数据。waitTime:等待队列可用的时间,以系统时钟节拍为单位。
- 返回值:如果数据成功发送到队列,则返回
pdPASS,否则返回errQUEUE_FULL。
xQueueReceive():- 用法:
c
xQueueReceive(queueHandle, buffer, waitTime)
- 参数:
queueHandle:队列的句柄。buffer:接收数据的缓冲区。waitTime:等待队列可用的时间,以系统时钟节拍为单位。
- 返回值:如果成功接收到数据,则返回
pdPASS,否则返回errQUEUE_EMPTY。
xSemaphoreCreateBinary():- 用法:
c
xSemaphoreCreateBinary()
- 参数:无
- 返回值:如果二值信号量创建成功,则返回一个指向信号量的句柄,否则返回
NULL。
xSemaphoreTake():- 用法:
c
xSemaphoreTake(semaphoreHandle, waitTime)
- 参数:
semaphoreHandle:信号量的句柄。waitTime:等待信号量可用的时间,以系统时钟节拍为单位。
- 返回值:如果成功获取到信号量,则返回
pdPASS,否则返回errQUEUE_EMPTY。
xSemaphoreGive():- 用法:
c
xSemaphoreGive(semaphoreHandle)
- 参数:
semaphoreHandle:信号量的句柄。
- 返回值:如果成功释放信号量,则返回
pdPASS,否则返回errQUEUE_FULL。
xEventGroupCreate():- 用法:
c
xEventGroupCreate()
- 参数:无
- 返回值:如果事件组创建成功,则返回一个指向事件组的句柄,否则返回
NULL。
xEventGroupSetBits():- 用法:
c
xEventGroupSetBits(eventGroupHandle, eventBits)
- 参数:
eventGroupHandle:事件组的句柄。eventBits:要设置的事件位。
- 返回值:设置的事件位。
-
xEventGroupWaitBits():- 用法:
cxEventGroupWaitBits(eventGroupHandle, bitsToWaitFor, clearOnExit, waitForAllBits, waitTime)- 参数:
eventGroupHandle:事件组的句柄。bitsToWaitFor:等待的事件位。clearOnExit:在退出等待时是否清除事件位。waitForAllBits:是否等待所有的事件位都被设置。waitTime:等待事件位被设置的时间,以系统时钟节拍为单位。
- 返回值:设置的事件位。