#define SERIAL_SPEED 9600

const int buttonPin = 12;
const int ledPin = 25;  

int ledState;
volatile bool led_change;

void IRAM_ATTR button_ISR() {
  led_change = true;
}

void setup() {
  // Configuracion de puertos
  pinMode(ledPin, OUTPUT);
  Serial.begin(SERIAL_SPEED);
  // Inicializacion de variables
  led_change = false;
  ledState = LOW;
  digitalWrite(ledPin, ledState);
  attachInterrupt(digitalPinToInterrupt(buttonPin), button_ISR, RISING);
  // Iniciacion del puerto serial  
  Serial.println("Inicio...");
}

void loop() {
  if (led_change == true) {
    // Transición positiva
    Serial.print("[T+]-> Led:");
    Serial.println(ledState);
    ledState = !ledState;
    digitalWrite(ledPin, ledState);
    led_change = false;
  }
}

$abcdeabcde151015202530fghijfghij
Loading
esp32-devkit-c-v4