🛠 Deux ports série : Serial (USB) et Serial1 (broches 0/1)
Objetivos
Aprovechar una de las grandes ventajas del Nano Every frente al Nano clásico: dos UART de hardware accesibles en el conector. Serial pasa por el módulo puente USB (monitor del PC), Serial1 corresponde a la USART del ATmega4809 en los pines 0 (RX) y 1 (TX) en TTL. Construimos un pasamano: todo lo que llega de uno sale por el otro.
Material
- 1 × Arduino Nano Every
- 1 × módulo TTL: GPS, HC-05/HC-06 (mediante adaptador 5 V→3,3 V si es necesario), convertidor USB-TTL secundario
- Cables de conexión, cable micro-USB
Código completo
// Passe-plat USB <-> UART broches 0(RX)/1(TX)
// Garde le moniteur USB libre pour le debogage pendant qu'un
// module (GPS, BLE...) parle sur Serial1.
void setup {
Serial.begin(115200); // USB (module pont embarque)
Serial1.begin(9600); // USART materielle sur broches 0/1
Serial.println(F("Passe-plat pret: PC <-> module"));
}
void loop {
if (Serial.available) Serial1.write(Serial.read); // PC -> module
if (Serial1.available) Serial.write(Serial1.read); // module -> PC
}
Verificación esperada
Conecte el módulo a los pines 0/1 (RX del módulo → pin 1, TX del módulo → pin 0, alimentado a 5 V o 3,3 V según el módulo). Abra el monitor serie a 115200: verá desfilar las tramas del módulo; lo que escriba desde el PC se envía al módulo. El puerto USB sigue siendo utilizable para la depuración en paralelo — imposible en el Nano clásico, que solo tiene una UART.
Errores frecuentes
> SIN VERIFICAR: identidad exacta del módulo puente (NINA-W102 según el manual de usuario) — verificar antes de cualquier procedimiento de recuperación.
- Cruzar los pines: el TX de la placa (pin 1) va al RX del módulo, y el RX de la placa (pin 0) al TX del módulo; conexión directa = no pasa nada.
- Olvidar la masa común placa/módulo: caracteres aleatorios.
- Nivel de 5 V en un módulo de 3,3 V: el 4809 usa lógica de 5 V en estos pines; un módulo de 3,3 V puede requerir un divisor de tensión en la línea que va hacia él.
- Dos velocidades diferentes:
Seriala 115200 ySerial1a 9600, cadabegincon su propia velocidad de transmisión. - La carga del programa pasa por el puente USB, no por los pines 0/1, pero un módulo que emite datos constantemente conectado a 0/1 puede saturar su código serie: desconéctelo en caso de duda.
- El módulo puente USB no es un segundo MCU programable: no intente reprogramarlo, ya que podría dañar la vía USB.
Otros tutoriales para esta placa
Ejemplos de código para esta placa
multi-serie.inoArduinoadc-filtre.inoArduinointerrupt-bouton.inoArduinonvm-consignes.inoArduinosommeil-every.inoArduinowatchdog-secours.inoArduino