bouton-poussoir.ino
El montaje botón/LED clásico, idéntico a los Arduino históricos: el core del R4 mantiene las mismas primitivas (INPUT_PULLUP, digitalRead). Base de toda interfaz humana en la placa.
Hardware
Un Arduino UNO R4 Minima (Renesas RA4M1, Cortex-M4 @ 14 MHz, 5 V, DAC de 12 bits, sin radio) alimentado por USB o 6-24 V. 1 botón pulsador + 1 LED + resistencia de 330 Ω.
Cableado
Botón entre D2 y GND (pull-up interno). LED + 330 Ω entre D13 y GND. Pines tolerantes a 5 V (lógica compatible con 5 V).
Funcionamiento
La lectura se valida tras 30 ms de estabilidad; la pulsación (LOW con pull-up) enciende el LED y escribe en el monitor serie.
Ejecución
Arduino IDE 2.x (con el core « Arduino UNO R4 Boards » instalado), elige « Arduino UNO R4 Minima », selecciona el puerto y Subir. El monitor serie está a 9600.
Variantes
Contador de pulsaciones en la matriz (R4 WiFi), o doble clic con medida de intervalo entre flancos.
bouton-poussoir.ino
// Bouton sur D2 (vers GND) + LED sur D13, anti-rebond 30 ms.
const int BOUTON = 2;
const int LED = 13;
bool stable = HIGH, precedent = HIGH;
unsigned long dernierBord = 0;
void setup() {
pinMode(BOUTON, INPUT_PULLUP);
pinMode(LED, OUTPUT);
Serial.begin(9600);
}
void loop() {
bool lecture = digitalRead(BOUTON);
unsigned long maintenant = millis();
if (lecture != precedent) dernierBord = maintenant;
if (maintenant - dernierBord >= 30 && lecture != stable) {
stable = lecture;
digitalWrite(LED, stable == LOW); // appui -> LED
Serial.println(stable == LOW ? F("appui") : F("relache"));
}
precedent = lecture;
// Le RA4M1 est rapide (14 MHz) : le polling ne coute rien.
}