freertos任务参数

编程入门 行业动态 更新时间:2024-10-17 05:37:00

freertos任务<a href=https://www.elefans.com/category/jswz/34/1771441.html style=参数"/>

freertos任务参数

实现多个任务利用同一个函数,传进不同的任务参数,打印不同的任务内容。多个人用同一个电脑干不同工作,美工用电脑干美工,程序员用电脑敲代码

#include "stm32f10x.h"                  // Device header
#include "freertos.h"
#include "task.h"
#include "usart.h"TaskHandle_t myTaskHandler1;
TaskHandle_t myTaskHandler2;
TaskHandle_t myTaskHandler3;
TaskHandle_t startTaskHandler;void myPrintf(void* arg){char* str=arg;while(1){taskENTER_CRITICAL();printf("%s\n",str);taskEXIT_CRITICAL();vTaskDelay(500);}
}
void startTask(void* arg){taskENTER_CRITICAL();printf("start running\n");taskEXIT_CRITICAL();xTaskCreate(myPrintf, "myTask", 128, "myTask1", 2, &myTaskHandler1); xTaskCreate(myPrintf, "myTask", 128, "myTask2", 2, &myTaskHandler2); xTaskCreate(myPrintf, "myTask", 128, "myTask3", 2, &myTaskHandler3); vTaskDelete(NULL);
}
int main(void){USART_Config();xTaskCreate(startTask,"startTask",128,NULL,2,&startTaskHandler);vTaskStartScheduler();while(1){}}StaticTask_t	IdleTaskTCB;
StackType_t		IdleTaskStack[configMINIMAL_STACK_SIZE];
void vApplicationGetIdleTaskMemory( StaticTask_t 	**ppxIdleTaskTCBBuffer, StackType_t 	**ppxIdleTaskStackBuffer, uint32_t 		*pulIdleTaskStackSize )
{*ppxIdleTaskTCBBuffer = &IdleTaskTCB;*ppxIdleTaskStackBuffer = IdleTaskStack;	*pulIdleTaskStackSize = configMINIMAL_STACK_SIZE;}

现象:

更多推荐

freertos任务参数

本文发布于:2023-11-16 02:53:40,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1611650.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:参数   freertos

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!