🛠 Console série : câblage du connecteur 6 broches et pièges DTR/TX-RX
Objetivos
Dominar el único canal de comunicación de la Pro Mini: el único UART por hardware (pines 0 RX / 1 TX) conectado al conector de programación de 6 pines. Construimos una mini-consola de comandos y comprendemos las dos trampas legendarias de la placa: el cruce TX↔RX al cablear un adaptador artesanal (CP2102, otro Arduino), y el auto-reset por DTR — una pata del conector está conectada a la línea de reset mediante un condensador de 100 nF, por lo que la apertura del puerto reinicia la placa y el bootloader se traga los primeros bytes.
Material
- 1 × Arduino Pro Mini (ATmega328P)
- 1 × adaptador USB-serie: FTDI Basic (DTR cableado, se coloca directamente sobre el conector) o cable CP2102/FTDI con 4 hilos (VCC, GND, TX, RX)
- 4 × cables si se usa un adaptador artesanal: VCC→VCC, GND→GND, TX del adaptador→RXI (pin 1), RX del adaptador→TO (pin 0)
- PC con monitor serie (IDE de Arduino, PuTTY, screen)
Código completo
// Mini-console serie : commande 'l' = LED, 'v' = valeur analogique
const uint8_t LED = LED_BUILTIN;
void setup {
Serial.begin(57600);
pinMode(LED, OUTPUT);
// Patiente ~2 s : laisse passer le reset DTR + la fenetre du bootloader
uint32_t t0 = millis;
while (millis - t0 < 2000) { while (Serial.available) Serial.read; }
Serial.println(F("Pro Mini prete. Tapez l ou v."));
}
void loop {
if (Serial.available) {
char c = Serial.read;
if (c == 'l') { digitalWrite(LED, !digitalRead(LED)); Serial.println(F("LED toggle")); }
else if (c == 'v') { Serial.println(analogRead(A0)); }
while (Serial.available) Serial.read; // vide le reste de la ligne
}
}
Verificación esperada
Tras abrir el monitor serie a 57600 baudios, el mensaje «Pro Mini lista» aparece aproximadamente 2 s después: es la huella del reinicio automático provocado por el condensador de 100 nF en DTR. Los comandos 'l' y 'v' responden inmediatamente. Al enviar texto ANTES de que finalice el bootloader, se observa que los bytes desaparecen — la trampa es observable y está documentada. Con un simple cable FTDI (sin DTR), no hay reinicio automático: hay que pulsar el botón de reset justo antes de la carga del programa.
Errores frecuentes
- TX/RX no cruzados con un adaptador artesanal: mismos síntomas que una velocidad incorrecta — «avrdude: stk500_getsync ... not in sync»; el FTDI Basic se conecta directamente, un cable de hilos exige el cruce.
- Enviar una cadena de configuración al abrir el puerto: el bootloader intercepta los primeros bytes tras el reset por DTR; siempre esperar el mensaje de listo en la placa.
- Olvidar la masa (GND) común entre el adaptador y la placa: no pasa ningún carácter, aunque TX/RX sean correctos.
- Alimentación VCC por el adaptador: los 5 V del adaptador van a VCC (modelo de 5 V) — en el modelo de 3,3 V, nunca enviar 5 V a VCC, el pin VCC evita el regulador y alimenta directamente el circuito.
- Baudrate incorrecto en el PC: desfilan caracteres ilegibles; 57600 corresponde a la velocidad del bootloader de fábrica.
Otros tutoriales para esta placa
Ejemplos de código para esta placa
clignotante.inoArduinobouton-poussoir.inoArduinopwm-fade.inoArduinocapteur-lumiere-ldr.inoArduinoservo-balayage.inoArduinoruban-neopixel.inoArduino