#include <Wire.h>
void setup()
{
Wire.begin();
Serial.begin(115200);
}
void loop()
{
byte error, Direcc, DispositivosI2C;
Serial.println("Buscando dispositivos I2C|...");
DispositivosI2C = 0;
for (Direcc = 1; Direcc < 127; Direcc++)
{
Wire.beginTransmission(Direcc);
error = Wire.endTransmission();
if (error == 0)
{
Serial.print("Se encontraron dispositivos I2C en la direccion 0x");
if (Direcc < 16)
{
Serial.print('0');
}
Serial.println(Direcc, HEX);
DispositivosI2C++;
}
else
if (error == 4)
{
Serial.print("Error desconocido en la direccion Ox");
if (Direcc < 16)
{
Serial.print('0');
}
Serial.println(Direcc, HEX);
}
} // Fin cilco for
if (DispositivosI2C == 0)
{
Serial.println("No se encontraron dispositivos I2C|");
}
else
Serial.println("*****\n");
delay(2000);
} // Fin loop