Dos Arduinos que se hablan
Conecta dos Arduino Uno en Tinkercad y envía un mensaje de uno a otro por un solo cable.
Qué vas a construir
Dos Arduino Uno conectados con dos cables. Uno envía un mensaje cada segundo y el otro lo muestra en su monitor serial.
Lo que aprendes
- Qué es un enlace de comunicación entre dos dispositivos.
- Por qué el transmisor (TX) de uno va al receptor (RX) del otro.
- Cómo usar la librería
SoftwareSerialpara crear un canal extra. - Por qué los dos dispositivos deben compartir la misma tierra (GND).
Idea clave
Una red empieza con un cable, un emisor y un receptor. El emisor envía bits en orden y el receptor los junta para formar el mensaje. Si las velocidades no coinciden, el mensaje llega como texto sin sentido.
Materiales en Tinkercad
- Dos Arduino Uno R3
- Cables
Paso 1: Conecta los dos Arduinos
Usa el pin 11 como transmisor y el pin 10 como receptor en ambas placas:
| Arduino emisor | Arduino receptor |
|---|---|
| Pin 11 (TX) | Pin 10 (RX) |
| GND | GND |
Conecta también las dos GND. Sin tierra común, las señales no tienen referencia y el receptor lee basura.
Paso 2: Código del emisor
#include <SoftwareSerial.h>
SoftwareSerial enlace(10, 11); // RX, TX
void setup() {
enlace.begin(9600);
}
void loop() {
enlace.println("hola");
delay(1000);
}
Paso 3: Código del receptor
#include <SoftwareSerial.h>
SoftwareSerial enlace(10, 11); // RX, TX
void setup() {
Serial.begin(9600); // monitor serial de la computadora
enlace.begin(9600); // mismo valor que el emisor
}
void loop() {
if (enlace.available()) {
String mensaje = enlace.readStringUntil('\n');
Serial.println(mensaje);
}
}
Paso 4: Ejecuta la simulación
Inicia la simulación con los dos circuitos y abre el monitor serial del receptor. Debe aparecer “hola” una vez por segundo.
Cómo sabes que lo lograste
- El monitor serial del receptor muestra “hola” cada segundo.
- Puedes explicar por qué el TX del emisor va al RX del receptor.
- Cambiaste el mensaje en el emisor y el receptor lo muestra igual.
Qué salió mal
El receptor muestra caracteres raros. Las velocidades no coinciden. Ambos deben usar 9600.
No llega nada. Revisa que el cable vaya de 11 a 10, no de 11 a 11, y que las dos GND estén conectadas.
El emisor funciona pero el receptor no. Confirma que el receptor usa SoftwareSerial con los mismos pines (10 y 11).
Siguiente clase
En la siguiente clase vas a darle forma al mensaje para que el receptor sepa dónde empieza y dónde termina.