gpio_button_led_control.ino
Ejemplo simple de gestión de E/S digital con antirrebote por software.
Utilice los GPIOs disponibles en los conectores del kit (ej: GPIO4, GPIO5). Conecte un botón entre el GPIO seleccionado y GND, y un LED con resistencia a GND. Cargue vía USB-C. Abra el Monitor Serie a 115200 baudios para ver los estados.
gpio_button_led_control.ino
#include <Arduino.h>
// Définition des broches GPIO pour l'Assembly Kit
// Note : Vérifiez le schéma spécifique de votre version d'assemblage
const int BUTTON_PIN = 4;
const int LED_PIN = 5;
bool buttonState = false;
bool lastButtonState = false;
unsigned long lastDebounceTime = 0;
unsigned long debounceDelay = 50;
void setup() {
Serial.begin(115200);
pinMode(BUTTON_PIN, INPUT_PULLUP);
pinMode(LED_PIN, OUTPUT);
digitalWrite(LED_PIN, LOW);
Serial.println("PaperDIY GPIO Test Started");
}
void loop() {
bool reading = digitalRead(BUTTON_PIN);
if (reading != lastButtonState) {
lastDebounceTime = millis();
}
if ((millis() - lastDebounceTime) > debounceDelay) {
if (reading != buttonState) {
buttonState = reading;
if (buttonState == LOW) { // Bouton pressé (Pull-up)
digitalWrite(LED_PIN, HIGH);
Serial.println("Button Pressed - LED ON");
} else {
digitalWrite(LED_PIN, LOW);
Serial.println("Button Released - LED OFF");
}
}
}
lastButtonState = reading;
}