Hola amigos, necesito una pequeña ayuda.
Tengo que hacer un envío de mensajes de un arduino a otro a través de I2C, el problema es que no consigo enviar bien el mensaje.
Por ejemplo, al escribir la palabra hola, la está enviando 5 veces.
Dejo el código por si me pueden ayudar.
Saludos.
Tengo que hacer un envío de mensajes de un arduino a otro a través de I2C, el problema es que no consigo enviar bien el mensaje.
Por ejemplo, al escribir la palabra hola, la está enviando 5 veces.
Dejo el código por si me pueden ayudar.
Saludos.
Código:
#include <Wire.h>
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
char cadena[8];
void setup()
{
Wire.begin(); // join i2c bus (address optional for master)
lcd.begin(16, 2);
Serial.begin(9600);
}
String mensaje = "";
void loop() {
leerCadena();
delay(500);
}
void leerCadena(){
if(Serial.available() ){
//se lee un caracter
char caracter = Serial.read();
//se suma un caracter para formar el mensaje
mensaje += caracter;
((String)mensaje).toCharArray(cadena,8);
leerCadena();
enviar();
}
}
void enviar(){
Wire.beginTransmission(4);
Wire.write(cadena);
Wire.endTransmission();
Serial.println(cadena);
mensaje="";
}
Última edición por un moderador: