Puente entre dos Serial, compatible Arduino y Maple (STM32)

Mientras trasteo con las WiFi he creado un pequeño loop para poder probar cosas en el ESP directamente sin desconectarlo del microcontrolador. Para ello uso el Serial conectado al USB del Maple (Serial o Serial1) para ver el resultado de la WiFi (Serial2).

Si deseáis usarlo en un Arduino sencillo necesitaréis un conversor USB->Serial TTL compatible (5V o 3.3V, según funcione vuestro microcontrolador) y usar SoftwareSerial, como en el código comentado.


#define EXTSERIAL_BAUDS 9600
#define INTSERIAL_BAUDS 9600

//Arduino
//#define EXTSERIAL_DEV Serial
//SoftwareSerial INTSERIAL_DEV(10, 11); // RX, TX

//Maple
#define EXTSERIAL_DEV Serial2
#define INTSERIAL_DEV Serial



void setup() {
delay(4000);
INTSERIAL_DEV.begin(INTSERIAL_BAUDS);
EXTSERIAL_DEV.begin(EXTSERIAL_BAUDS);

}

void loop() {
char c;
while (Serial.available()) {
c = INTSERIAL_DEV.read();
EXTSERIAL_DEV.print(c);
}
while (EXTSERIAL_DEV.available()) {
c = EXTSERIAL_DEV.read();
INTSERIAL_DEV.print(c);
}

}