«

»

Aug 08

I2C Scanner

Bila kita memiliki sebuah divais – I2C Slave, yang tidak kita ketahui alamatnya, maka sketch Arduino / NS.One berikut dapat membantu menemukan alamat divais I2C slave yang bersangkutan:

#include <Wire.h>

void setup() {
  Serial.begin (9600);
  Serial.println ("I2C scanner. Scanning ...");
  byte count = 0;

  Wire.begin();
  for (byte i = 1; i < 120; i++)
  {
    Wire.beginTransmission (i);
    if (Wire.endTransmission () == 0)
    {
      Serial.print("Found address: ");
      Serial.print(i, DEC);
      Serial.print(" (0x");
      Serial.print(i, HEX);
      Serial.println(")");
      count++;
      delay (1); 
    } 
  } 
  Serial.println ("Done.");
  Serial.print ("Found ");
  Serial.print (count, DEC);
  Serial.println (" device(s).");
}  

void loop() {}

Sumber: http://www.gammon.com.au/forum/?id=10896