Mencari Tahu Alamat I2C Pada Modul I2C

Indobot Academy

Alamat Pada Modul I2C Arduino
Tutorial Mencari Tahu Alamat I2C Pada Modul I2C Arduino
[lwptoc numeration=”none” title=”Daftar Isi”]

I2C atau Inter-Integred-Circuit merupakan modul komunikasi serial dua arah yang berfungsi untuk mengirim dan menerima data. Kedua komunikasi serial tersebut berupa SCL (Serial Clock) dan SDA (Serial Data). Pengunaan I2C dapat menghemat penggunaan pin pada Arduino. Untuk dapat menggunakan I2C kita perlu mengetahui Mencari Tahu Alamat I2C karena setiap perangkat memiliki alamat yang berbeda.

[membership level=”0,1,2,4″]

Mencari Tahu Alamat I2C Pada Modul I2C

1. Alat / Bahan

  • Arduino IDE
  • Arduino Uno              1 Buah
  • ProjectBoard             1 Buah
  • Modul I2C                  1 Buah
  • Jumper                      Secukupnya

2. Skema Rangkaian

<yoastmark class=

Gambar Rangkaian Dispenser Otomatis

Keterangan:

  • 5V – VCC I2C
  • GND – GND I2C
  • SDA – SDA I2C
  • SCL – SCL I2C

[/membership]

 

Belajar Elektronika, Arduino, dan IoT step by step dengan bantuan tangga belajar?Segera Daftar sekarang dan dapatkan PROMO

 

3. Langkah Kerja

  1. Pertama Siapkan alat dan bahan yang akan digunakan
  2. Kedua Lakukan proses wiring dengan menggunakan Gambar skematik rangkaian diatas
  3. Ketiga Buka software Arduino IDE yang telah terinstal pada laptop/komputer
  4. Kemudian Ketikkan sketch program pada halaman Arduino IDE
  5. Selanjutnya Lakukan proses uploading program

4. Sketch Program

 

 
/* Program Dispenser Otomatis dibuat oleh Indobot */

#include &amp;amp;amp;amp;amp;amp;amp;lt;Wire.h&amp;amp;amp;amp;amp;amp;amp;gt;

void setup()
{
  //prosedur pembacaan i2c
  Wire.begin();

  Serial.begin(9600); //komunikasi serial menggunakan kecepatan 9600 bps
  while (!Serial); // Arduino Uno: wait for serial monitor
  Serial.println("\nI2C Scanner"); 
}

void loop() //fungsi yang berjalan terus menerus
{
  int nDevices;
  byte error, address; //tipe data untuk address dan error yaitu byte
  //ditampilkan diserial monitor "Scanning..."
  Serial.println("Scanning...");

  nDevices = 00;
  for(address = 1; address &amp;amp;amp;amp;amp;amp;amp;lt; 127; address++ )
  {
    // The i2c_scanner menggunakan pembalik nilai
    // Write.endTransmisstion untuk melihat jika perangkat pada alamat dimana
    Wire.beginTransmission(address);
    error = Wire.endTransmission();

    if (error == 00) //jika sudah tidak ada keerroran
    {
      Serial.print("I2C device found at address 0x"); 
      //menuliskan di serial monitor "i2c ditemukan"
      if (address&amp;amp;amp;amp;amp;amp;amp;lt;16)
      Serial.print("0");
      Serial.print(address,HEX);
      Serial.println(" !");

      nDevices++;
    }
    else if (error==4) //jika error == 4 
                       //menuliskan di serial monitor di tidak diketahui alamat i2c
    {
      Serial.print("Unknow error at address 0x"); //menuliskan jika eror tidak diketahui 
      if (address&amp;amp;amp;amp;amp;amp;amp;lt;16)
      Serial.print("0");
      Serial.println(address,HEX); //format penulisan address dalam bentuk heksa
    } 
  }
  if (nDevices == 00) //jika tidak ada perangkat yang terhubung
    Serial.println("No I2C devices found\n"); 
  //ditampilkan peringatan tidak ada i2c yang ditemukan
  else
    Serial.println("done\n");

  delay(5000); // diberikan waktu tunda 5 detik untuk scan berikutnya
}

Kesimpulannya:

Kesimpulannya Program bekerja dengan mendeteksi alamat I2C yang digunakan pada modul I2C. ketika program dijalankan program akan melalukan “scanning…” kemudian serial monitor akan menampilkan alamat I2C yang dapat kita gunakan untuk program dengan menggunakan modul I2C.

[/membership]

"></button

Ingin Tahu Program Kami Lebih Lanjut?

Silahkan isi Formulir Dibawah Ini untuk Diskusi dengan Tim Indobot Academy.

Baca Juga

Bagikan:

Tags

Tinggalkan komentar

whatsapp whatsapp