//定义两个字节类型的针脚
byte led001 = 9;
byte led002 = 7;
void light1sTask(void *pvParam){
// byte *pbLEDPIN;//定义一个字节类型的指针
// pbLEDPIN = (byte *)pvParam;//空类型指针参数强制转换成字节类型指针
// byte LEDPIN = *pbLEDPIN;//通过*操作符取出值
pinMode(*(byte *)pvParam, OUTPUT);
while(1){
digitalWrite(*(byte *)pvParam, !digitalRead(*(byte *)pvParam));
vTaskDelay(1000);//pDMS_TO_TICKS portTICK_PERIOD_MS
}
}
void light3sTask(void *pvParam){
// byte *pbLEDPIN;//定义一个字节类型的指针
// pbLEDPIN = (byte *)pvParam;//空类型指针参数强制转换成字节类型指针
// byte LEDPIN = *pbLEDPIN;//通过*操作符取出值
pinMode(*(byte *)pvParam, OUTPUT);
while(1){
digitalWrite(*(byte *)pvParam, !digitalRead(*(byte *)pvParam));
vTaskDelay(3000);//pDMS_TO_TICKS portTICK_PERIOD_MS
}
}
void setup() {
// put your setup code here, to run once:
xTaskCreate(light1sTask, "Blink1s", 1024, (void *)&led001, 1, NULL);
xTaskCreate(light3sTask, "Blink3s", 1024, (void *)&led002, 1, NULL);
}
void loop() {
// put your main code here, to run repeatedly:
}
Loading
esp32-c3-devkitm-1
esp32-c3-devkitm-1