🛠 Passerelle série sur les 4 UART matériels

Arduino Mega 2560 (Rev3) · intermediaire · Schéma : IMG-mega-2560-intermediaire-2-passerelle-4-uart.svg — Arduino Mega 2560 reliant le PC (USB/Serial), un module GPS sur Serial1 (19/18), un module sur Serial2 (17/16) et un bus RS-485 sur Serial3 (15/14)

Objetivos

Realizar el montaje insignia de la Mega 2560: hablar con cuatro dispositivos serie al mismo tiempo gracias a sus 4 UART de hardware — algo que un Uno no puede hacer (una sola UART). Asignación oficial de pines: Serial (0 RX / 1 TX, compartido con USB), Serial1 (RX 19 / TX 18), Serial2 (RX 17 / TX 16), Serial3 (RX 15 / TX 14). Escribirás un enrutador no bloqueante byte a byte.

Material

Respeta el cruce TX→RX/RX→TX entre la Mega y cada módulo, así como la masa común. Atención: la conexión USB-CP es gestionada por el ATmega16U2; si el PC escribe mucho sin que nadie lea, el flujo puede bloquear la placa (comportamiento CDC documentado).

Código completo

// Passerelle 4 UART — PC + GPS + modem + RS-485
void setup {
  Serial.begin(115200);    // console USB (broches 0/1)
  Serial1.begin(9600);     // GPS typique
  Serial2.begin(115200);   // modem typique
  Serial3.begin(9600);     // transceiver RS-485
  while (!Serial && millis < 3000) {}  // attend l'USB CDC
}

void loop {
  // Routage non bloquant, octet par octet :
  if (Serial1.available) Serial.write(Serial1.read);    // GPS -> PC
  if (Serial.available)  Serial2.write(Serial.read);    // PC -> modem
  if (Serial2.available) Serial3.write(Serial2.read);   // modem -> RS-485
  if (Serial3.available) Serial.write(Serial3.read);    // RS-485 -> PC
}

Verificación esperada

El monitor serie a 115200 baudios muestra continuamente las tramas NMEA del GPS. Lo que escribes en el monitor se envía a Serial2; la respuesta del módem se reenvía a Serial3. No se pierde ningún byte a las velocidades habituales porque cada loop vacía los cuatro búferes.

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales