Que tal amigos, espero que me puedan echar un poco la mano. La verdad nunca antes había intentado hacer una comunicación entre tarjetas de Arduino y esta es la primera vez que lo emplearé.
Lo que pasa es que pleneo comunicar un Arduino Mega como master y 2 Arduinos Uno como esclavos mediante I2C. Mi duda es, ¿puedo configurar los puertos RX/TX de la siguiente manera?
#include <SoftwareSerial.h>
// Hardwire serial #1: RX = pin digital 0, TX = pin digital 1
SoftwareSerial portOne(0, 1);
// Hardware serial #2: RX = pin digital 19 TX = pin digital 18
SoftwareSerial portTwo(19, 18);
void setup() {
// Abre la comunicacion serial y espera a que el puerto se abra:
Serial.begin(9600);
while (!Serial) {
; // Espera al puerto serial para conectar.
}
// Inicia cada puerto serial de software
portOne.begin(9600);
portTwo.begin(9600);
}
void loop() {
// Por default, el ultimo puerto inicializado es escuchado.
// Cuando se quiera leer un puesto en especifico, se selecciona:
portOne.listen();
Serial.println("Datos del Puerto 1:");
// Mientras hayan datos en camino, leerlos y enviarlos al puerto serial del hardware.
while (portOne.available() > 0) {
char inByte = portOne.read();
Serial.write(inByte);
}
Serial.println();
// Ahora lee el segundo puerto:
portTwo.listen();
// Mientras hayan datos en camino, leerlos y enviarlos al puerto serial del hardware.
Serial.println("Datos del Puerto 2:");
while (portTwo.available() > 0) {
char inByte = portTwo.read();
Serial.write(inByte);
}
// Paso de linea necesario para separar los datos de los dos puertos:
Serial.println();
}
Esperome puedan ayudar