Buenas tardes alguno de ustedes ha intentado hacer o utilizar la comunicacion i2c entre un Arduino y un PIC , anteriormente he podido hacer la comunicacion entre dos Arduinos, y entre dos PICs pero al momento de que intento utilizar la comunicacion entre pic y Arduino simplemente no me funciona.
El codigo del pic:
#USE I2C(multi_master,Fast=100000, SDA=pin_B0, SCL=pin_B1, force_sw)
void envioI2C() // OK
{
bit_set(leda,0);
i2c_start();
i2c_write(0x09);
i2c_write(0);
i2c_write(0x0F);
i2c_stop();
delay_us(50);
bit_clear(leda,0);
}
y este es el codigo del arduino:
void setup(void) {
Wire.begin(9);
Wire.onReceive(receiveEvent);
Serial.begin(9600);
u8g2.begin();
}
void receiveEvent(int num) {
//Serial.println("entre");
Serial.println("entre2");
char c = Wire.read(); // lee el byte como caracter
Serial.println(c); // imprime el caracter
datos = c;
if (datos != "%"){
cadena = cadena+c;
}
Serial.println(cadena);
int x = Wire.read(); // lee el byte como un entero
//Serial.println(x); // imprime el entero
}
Ambos codigos me sirven si intento hacer la comunicacion ya sea PIC-PIC o Arduino-Arduino si alguno me puede ayudar a poder visualizar mi error mejor se los agradecería muchisimo