byte LED1_PIN = 23;
byte LED2_PIN = 21;
void task1(void *pt)
{
byte ledPin = *((byte*)pt);
pinMode(ledPin, OUTPUT);
while(true)
{
digitalWrite(ledPin, !digitalRead(ledPin));
int timeDelay = 1000;
vTaskDelay(pdMS_TO_TICKS(timeDelay));
}
}
void task2(void *pt)
{
byte ledPin = *((byte*)pt);
pinMode(ledPin, OUTPUT);
while(true)
{
digitalWrite(ledPin, !digitalRead(ledPin));
int timeDelay = 3000;
vTaskDelay(pdMS_TO_TICKS(timeDelay));
}
}
void setup() {
Serial.begin(115200);
void* led1Pin = (void*)(&LED1_PIN);
void* led2Pin = (void*)(&LED2_PIN);
// put your setup code here, to run once:
if(pdPASS == xTaskCreate(task1, "Blink 23", 1024, led1Pin, 1 ,NULL))
{
Serial.println("Taks 1 Created");
}
if(pdPASS == xTaskCreate(task2, "Blink 21", 1024, led2Pin, 1 ,NULL))
{
Serial.println("Taks 2 Created");
}
}
void loop() {
// put your main code here, to run repeatedly:
}