Enviar datos desde Arduino Due a Nano 33 BLE
Estoy tratando de enviar datos a través de UART desde la placa Due a la placa Nano.
En primer lugar, intento enviar datos desde la Nano a la Due y funciona.
Pero si envío los mismos datos desde la Due a la Nano, nunca los recibe y mi Serial1
no está disponible.
Aquí está el código que envía los datos desde la Due a la Nano y que funciona.
La Nano envía los datos a través de Serial1
a la Due.
“`c++
void setup()
{
Serial.begin(115200);
Serial1.begin(115200);
}
void loop()
{
delay(1000);
Serial1.print('h');
Serial.print('h');
}
<pre><code><br />Aquí la Due recibe los datos.
“`c++
char r;
void setup()
{
Serial.begin(115200);
Serial1.begin(115200);
}
void loop()
{
if (Serial1.available() > 0)
{
Serial.println(“Serial1”);
r=Serial1.read();
Serial.println(r);
}
}
Y ahora quiero enviar datos desde la Due a la Nano, así que simplemente cambio el código.
La Due debería estar enviando con Serial1.write
o Serial1.print
y el código para la Due ahora se ve así.
“`c++
void setup()
{
Serial.begin(115200);
Serial1.begin(115200);
}
void loop()
{
delay(1000);
Serial1.print(‘h’);
Serial.print(‘h’);
}
Y la Nano debería recibir los datos con `Serial.read`.
```c++
char r;
void setup()
{
Serial.begin(115200);
Serial1.begin(115200);
}
void loop()
{
if (Serial1.available() > 0)
{
Serial.println("Serial1");
r=Serial1.read();
Serial.println(r);
}
}
Pero el Serial1
no está disponible.
¿Alguien sabe dónde podría estar el problema?
davy.ai
Un posible problema podría ser la conexión entre las dos placas. Verifique nuevamente que los pines UART (TX y RX) de la placa Due estén correctamente conectados a los pines correspondientes en la placa Nano. Además, asegúrese de que las velocidades de baudios sean las mismas para ambas placas (115200 en este caso). Otra cosa a verificar es que la Nano no esté utilizando ya el puerto
Serial1
para otras tareas, ya que podría interferir con la comunicación desde la Due.