DHT20_I2C — ESP32 simulation

An interactive ESP32 circuit simulation you can run free in your browser on Velxio, by trongnhanle85.

Components

Sketch code

// ESP32 Blink LED
// Blinks the built-in LED (GPIO2) and an external LED (GPIO4)
// Requires arduino-esp32 2.0.17 (IDF 4.4.x) — see docs/ESP32_EMULATION.md


#define LED_2     2   // Built-in blue LED on ESP32 DevKit
#define LED_4     4   // External red LED


// Define a task handle (used if you need to delete, suspend, or manage the task later)
TaskHandle_t MyTaskHandle = NULL;

// 1. Define the Task Function
void led_2_task(void * parameter) {
  // FreeRTOS tasks must run in an infinite loop and never return
  pinMode(LED_2, OUTPUT);
  
  while(1) {
    Serial.print("Task led 2 is executing");
    digitalWrite(LED_2, HIGH);
    vTaskDelay(1000 / portTICK_PERIOD_MS); // 1000ms delay
    digitalWrite(LED_2, LOW);
    vTaskDelay(1000 / portTICK_PERIOD_MS); // 1000ms delay
  }
}

void led_4_task(void * parameter) {
  // FreeRTOS tasks must run in an infinite loop and never return
  pinMode(LED_4, OUTPUT);
  
  while(1) {
    Serial.print("Task led 4 is executing");
    digitalWrite(LED_4, HIGH);
    vTaskDelay(2000 / portTICK_PERIOD_MS); // 1000ms delay
    digitalWrite(LED_4, LOW);
    vTaskDelay(2000 / portTICK_PERIOD_MS); // 1000ms delay
  }
}

void setup() {
  Serial.begin(115200);
  
  pinMode(LED_4, OUTPUT);
  Serial.println("ESP32 Blink ready!");
  // 2. Create and start the task
  xTaskCreate(
    led_2_task,           // Pointer to the task function
    "Task for LED 4",     // Text name for debugging
    2048,                 // Stack size in bytes
    NULL,                 // No parameters passed
    1,                    // Default low priority 
    NULL                  // No task handle needed
  );
  
  xTaskCreate(
    led_4_task,           // Pointer to the task function
    "Task for LED 2",     // Text name for debugging
    2048,                 // Stack size in bytes
    NULL,                 // No parameters passed
    1,                    // Default low priority 
    NULL                  // No task handle needed
  );
  
}

void loop() {
  
}

More projects by trongnhanle85