
Pernah bingung mencari alamat perangkat I2C saat menggunakan Arduino? Tenang, kamu nggak sendirian! Protokol I2C (Inter-Integrated Circuit) memang super praktis buat komunikasi antar perangkat, tapi langkah awalnya adalah tahu alamat perangkat I2C yang terhubung. Kalau nggak tahu, bisa bikin frustrasi karena perangkat nggak bakal merespons.
Nah, untungnya ada cara gampang buat cari tahu alamat perangkat I2C kamu. Artikel ini bakal jelasin langkah-langkahnya dengan santai. Yuk, kita mulai!
Apa Itu I2C?
I2C adalah protokol komunikasi serial yang sering dipakai buat menghubungkan mikrocontroller ke perangkat seperti sensor, layar, atau modul lainnya. Protokol ini cuma butuh dua kabel utama: SDA (data) dan SCL (clock).
Masalahnya, setiap perangkat I2C punya alamat unik, dan kalau nggak tahu alamatnya, perangkat nggak bisa dikendalikan. Jadi, gimana cara nemu alamatnya?
Menggunakan I2C Scanner
Arduino punya alat ampuh bernama “I2C Scanner” yang bisa ngebantu kamu cari alamat perangkat I2C dengan cepat. Alat ini sebenarnya adalah kode sederhana yang memindai seluruh rentang alamat I2C dan memberi tahu perangkat mana saja yang merespons.
Langkah-Langkahnya:
-
Hubungkan perangkat I2C ke Arduino Pastikan perangkat kamu terhubung dengan pin SDA dan SCL di Arduino. Cek board Arduino kamu, karena lokasi pin SDA dan SCL bisa berbeda (contohnya, di Arduino Uno biasanya di pin A4 dan A5).
Bagi kamu yg menggunakan ESP8266 bisa cek pinout nya disini -
Buka Arduino IDE Pastikan kamu sudah install Arduino IDE di komputer. Kalau belum, download di sini.
-
Masukkan kode I2C Scanner Copy-paste kode berikut ke Arduino IDE:
#include <Wire.h>
void setup() {
Wire.begin();
Serial.begin(9600);
while (!Serial); // Tunggu serial port siap
Serial.println("Memindai perangkat I2C...");
}
void loop() {
byte error, address;
int perangkat = 0;
for (address = 1; address < 127; address++) {
Wire.beginTransmission(address);
error = Wire.endTransmission();
if (error == 0) {
Serial.print("Perangkat ditemukan di alamat 0x");
if (address < 16) Serial.print("0");
Serial.println(address, HEX);
perangkat++;
} else if (error == 4) {
Serial.print("Kesalahan pada alamat 0x");
if (address < 16) Serial.print("0");
Serial.println(address, HEX);
}
}
if (perangkat == 0) {
Serial.println("Tidak ada perangkat I2C yang ditemukan\n");
} else {
Serial.println("Pemindaian selesai\n");
}
delay(5000); // Tunggu 5 detik sebelum scan ulang
}
-
Upload kode ke Arduino Klik tombol upload, dan tunggu hingga proses selesai.
-
Buka Serial Monitor Tekan Ctrl+Shift+M atau klik ikon “Serial Monitor” di pojok kanan atas Arduino IDE. Pastikan baud rate-nya diatur ke 9600.
-
Lihat hasilnya Arduino akan mulai memindai perangkat I2C dan menampilkan alamatnya di Serial Monitor. Alamat biasanya dalam format heksadesimal, seperti 0x3C atau 0x27.

Apa Selanjutnya?
Setelah tahu alamat perangkat I2C, kamu bisa mulai berkomunikasi dengannya menggunakan library yang sesuai. Misalnya, kalau kamu pakai modul OLED, library Adafruit SSD1306 bisa jadi pilihan yang tepat.
Tips dan Trik
-
Pastikan kabel SDA dan SCL terhubung dengan benar, dan cek ulang jika perangkat nggak terdeteksi.
-
Kalau masih nggak berhasil, coba tambahkan resistor pull-up pada SDA dan SCL (biasanya 4.7kΩ ke VCC).
-
Beberapa perangkat mungkin nggak langsung merespons. Cek dokumentasi perangkat buat memastikan alamat default-nya.
Penutup
Mencari alamat perangkat I2C di Arduino ternyata nggak sesulit yang dibayangkan, kan? Dengan kode scanner ini, kamu bisa menghemat banyak waktu dan frustrasi. Jadi, kapan lagi mulai eksplorasi lebih jauh dengan perangkat I2C? Selamat mencoba!