pont-uart.ino
La GIGA aligne 4 UART matériels : Serial1 sur D0/D1 sert de passerelle vers le monde TTL. Le pont bidirectionnel configure un module à la volée depuis le moniteur série.
Matériel requis
Une Arduino GIGA R1 WiFi (STM32H747, module radio 1DX : Wi-Fi b/g/n + BLE, antenne u.FL fournie), alimentée par USB-C. 1 module UART 3,3 V (GPS, LoRa, RS-485…) + adaptateur si besoin.
Branchement
TX/RX croisés entre D0/D1 et le module, masses communes, niveaux 3,3 V. Attention : D0/D1 sont aussi les broches Serial classiques sur d'autres cartes.
Fonctionnement
Deux FIFOs et deux while : chaque flux est vidé à chaque tour. La GIGA tenant 4 UART + USB, le pont peut devenir routeur multi-modules. Dans l'Arduino IDE, plateforme « Arduino Zephyr-based Boards », carte « Arduino Giga R1 » ; montez l'antenne u.FL avant d'utiliser le radio, puis Téléverser.
Pour aller plus loin
Ajoutez le parsing de trames (préfixe/terminateur) et la redirection vers le CAN.
pont-uart.ino
// Pont Serial USB <-> Serial1 (D0 RX / D1 TX) a 9600 bauds.
// Exemple typique : GPS, module LoRa, convertisseur RS-485.
void setup() {
Serial.begin(115200); // console USB
Serial1.begin(9600); // D0/D1 : le module
Serial.println("Pont USB <-> Serial1 actif");
}
void loop() {
while (Serial1.available()) // module -> console
Serial.write(Serial1.read());
while (Serial.available()) // console -> module (config AT)
Serial1.write(Serial.read());
}