#include <freertos/FreeRTOS.h>
#include <freertos/task.h>
#define LED_1_PIN 21 // Pin del primer LED
#define LED_2_PIN 18 // Pin del segundo LED
#define LED_3_PIN 2 // Pin del tercer LED
void task1(void *pvParameters) {
pinMode(LED_1_PIN, OUTPUT);
while (1) {
digitalWrite(LED_1_PIN, HIGH);
delay(500); // Enciende el LED durante 500 ms
digitalWrite(LED_1_PIN, LOW);
delay(500); // Apaga el LED durante 500 ms
}
}
void task2(void *pvParameters) {
pinMode(LED_2_PIN, OUTPUT);
while (1) {
digitalWrite(LED_2_PIN, HIGH);
delay(1000); // Enciende el LED durante 1 segundo
digitalWrite(LED_2_PIN, LOW);
delay(1000); // Apaga el LED durante 1 segundo
}
}
void task3(void *pvParameters) {
pinMode(LED_3_PIN, OUTPUT);
while (1) {
digitalWrite(LED_3_PIN, HIGH);
delay(2000); // Enciende el LED durante 2 segundos
digitalWrite(LED_3_PIN, LOW);
delay(2000); // Apaga el LED durante 2 segundos
}
}
void setup() {
Serial.begin(115200);
xTaskCreate(task1, "Task1", 2048, NULL, 1, NULL);
xTaskCreate(task2, "Task2", 2048, NULL, 1, NULL);
xTaskCreate(task3, "Task3", 2048, NULL, 1, NULL);
}
void loop() {
// No es necesario tener código aquí si se usan tareas con FreeRTOS
}