🛠 Bouton MODE et console série sur la Boron
Objetivos
Interactuar con el usuario local y depurar: leer el estado del botón MODE integrado, contar las pulsaciones y mostrar mensajes en la consola serie USB mediante Serial.begin / Serial.println. También descubrirás los modos de sistema controlados por los botones (Reset + MODE), útiles en todos los tutoriales siguientes.
Material
- 1× Particle Boron + cable micro-USB de datos
- PC con un monitor serie (VS Code,
particle serial monitor, o la herramienta de tu elección)
Código completo
// Boron — bouton MODE + console série
const uint16_t BUTTON_PIN = MODE; // broche du bouton MODE — voir remarque
uint32_t appuis = 0;
uint32_t dernierAppui = 0;
void setup {
Serial.begin(9600);
pinMode(BUTTON_PIN, INPUT_PULLUP); // bouton câblé vers la masse
delay(1000); // laisse le moniteur se connecter
Serial.println("Boron prete : appuyez sur MODE");
}
void loop {
uint32_t maintenant = millis;
if (digitalRead(BUTTON_PIN) == LOW && maintenant - dernierAppui > 200) {
dernierAppui = maintenant; // anti-rebond logiciel 200 ms
appuis++;
Serial.printf("Appui n°%lu uptime=%lus\n", appuis, maintenant / 1000);
}
if (maintenant % 10000 < 10) {
Serial.println("tick"); // battement toutes les ~10 s
}
delay(10);
}
Carga el firmware, luego abre la consola: particle serial monitor --follow o la extensión serie de VS Code (9600 baudios).
Verificación esperada
Al iniciar, se muestra el mensaje «Boron prete». Cada pulsación en MODE imprime una línea con el número de pulsación y el tiempo de actividad (uptime); una pulsación larga o repetida no debe producir más de unas pocas líneas gracias a la antirrebote. El latido «tick» confirma que el bucle se está ejecutando. Al mantener presionado Reset y luego pulsar MODE, entras en los modos de sistema (DFU, listening) — el LED RGB cambia de color.
Errores frecuentes
- Abrir el monitor serie mientras se está cargando el firmware: el puerto está ocupado, ciérralo antes de
particle flash. - Olvidar
INPUT_PULLUP: el pin queda flotante y el contador se incrementa en bucle. - Antirrebote demasiado corto (< 50 ms): una sola pulsación se cuenta varias veces.
- Velocidad de transmisión incorrecta en el monitor (debe ser 9600 aquí): verás caracteres sin sentido.
- El puerto serie USB puede desaparecer bajo Windows 11 después de una actualización OTA (problema comunitario conocido): vuelve a conectarlo o reinstala el controlador CDC.
Otros tutoriales para esta placa
Ejemplos de código para esta placa
clignotante.inoArduinobouton-evenement.inoArduinofonction-distance.inoArduinocapteur-dht.inoArduinoruban-neopixel.inoArduinopwm-respiration.inoArduino