// WRITER code
#include <Wire.h>
#define SLAVE_1_ADDRESS 1 // Dirección I2C del primer esclavo
#define SLAVE_2_ADDRESS 2 // Dirección I2C del segundo esclavo
void setup() {
Wire.begin(); // Iniciatw comunication I2C with writer
}
void loop() {
// Enciende el primer esclavo (dirección 1) con color púrpura (1)
sendMessage(SLAVE_1_ADDRESS, 1);
// Espera un momento
delay(1000);
// Apaga el primer esclavo (dirección 1) con color azul (0)
sendMessage(SLAVE_1_ADDRESS, 0);
// Espera un momento
delay(1000);
// Enciende el segundo esclavo (dirección 2) con color púrpura (1)
sendMessage(SLAVE_2_ADDRESS, 1);
// Espera un momento
delay(1000);
// Apaga el segundo esclavo (dirección 2) con color azul (0)
sendMessage(SLAVE_2_ADDRESS, 0);
// Espera un momento
delay(1000);
}
void sendMessage(int address, byte value) {
Wire.beginTransmission(address); // Inicia la transmisión hacia el esclavo con la dirección dada
Wire.write(value); // Envía el valor al esclavo
Wire.endTransmission(); // Finaliza la transmisión
}