arduino 中使用FreeRTOS
创建任务
#include <Arduino.h>
TaskHandle_t x_task_one = NULL;
void task_one(void *param);
void setup() {
Serial.begin(115200);
Serial.println("serial1 printf ok\r\n");
xTaskCreate(
task_one, /* 任务函数 */
"TaskOne", /* 任务名 */
8*1024, /* 任务栈大小,根据需要自行设置*/
NULL, /* 参数,入参为空 */
1, /* 优先级 */
&x_task_one); /* 任务句柄 */
}
void loop() {
delay(1000);
}
void task_one(void *param){
while(1){
Serial.println("rtos_delay\r\n");
vTaskDelay(1000 / portTICK_PERIOD_MS);//FreeRTOS 延时1s
}
}
测试结果
--------------- Connected COM29 @ 115200 ----------------
rtos_delay
rtos_delay
rtos_delay
rtos_delay
rtos_delay
rtos_delay
rtos_delay
rtos_delay
rtos_delay
rtos_delay
rtos_delay
rtos_delay
标签:task,FreeRTOS,arduino,创建,void,rtos,delay,任务 From: https://www.cnblogs.com/zeropole/p/17066733.html