#include <STM32FreeRTOS.h>
void Task_Imprime1(void *parameter);
void Task_Imprime2(void *parameter);
void Task_ledParpadeo(void *parameter);
void setup(){
Serial.begin(115200);
Serial.write("Arranque el programa!.\n\r",24);
xTaskCreate(Task_Imprime1,"Imprime 1",512,NULL,1,NULL);
xTaskCreate(Task_Imprime2,"Imprime 2",512,NULL,1,NULL);
xTaskCreate(Task_ledParpadeo,"Parpadeo Led",128,NULL,1,NULL);
vTaskStartScheduler();
}
void loop() {
}
void Task_Imprime1(void *parameter){
while(true){
Serial.write("Corre tarea 1!.\n\r",17);
vTaskDelay( 200 / portTICK_PERIOD_MS );
}
}
void Task_Imprime2(void *parameter){
while(true){
Serial.write("Corre tarea 2!.\n\r",17);
vTaskDelay( 1000 / portTICK_PERIOD_MS );
}
}
void Task_ledParpadeo(void *parameter){
pinMode(D3,OUTPUT);
while(true){
digitalWrite(D3,HIGH);
vTaskDelay( 1700 / portTICK_PERIOD_MS );
digitalWrite(D3,LOW);
vTaskDelay( 1700 / portTICK_PERIOD_MS );
}
}