Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 1

// GPIO23 BLINKS ONCE IN 1 SECONDS

// GPIO2 BLINKS ONCE IN 5 SECONDS


// xTaskCreate(&blink_task, "Blink Task 2", 2048, (void*) BUILTIN_LED2, 5,
NULL); //HERE 5 IS THE PRIORITY LEVEL OF THE TASK
#include <stdio.h>
#include "driver/gpio.h"
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"

#define BUILTIN_LED GPIO_NUM_23


#define BUILTIN_LED2 GPIO_NUM_2

void blink_task(void *pvParameter)


{
gpio_num_t gpio_num = (gpio_num_t) pvParameter;
gpio_set_direction(gpio_num, GPIO_MODE_OUTPUT);

TickType_t delay; // Define delay variable

if (gpio_num == BUILTIN_LED) {
delay = pdMS_TO_TICKS(1000); // 1 second delay for LED 1
} else {
delay = pdMS_TO_TICKS(5000); // 5 second delay for LED 2
}

while(1)
{
gpio_set_level(gpio_num, 1);
vTaskDelay(delay);
gpio_set_level(gpio_num, 0);
vTaskDelay(delay);
}
}

void app_main(void)
{
xTaskCreate(&blink_task, "Blink Task 1", 2048, (void*) BUILTIN_LED, 5, NULL);
xTaskCreate(&blink_task, "Blink Task 2", 2048, (void*) BUILTIN_LED2, 5, NULL);
if(voltage <=1.5)
{
gpio_set_level(gpio_num, 1);
}
else
{
gpio_set_level(gpio_num, 0);
}
}

You might also like