Untuk menghubungkan Arduino Uno ke LCD 16x2 dengan modul I2C, Anda perlu mengubah rangkaian dan konfigurasi perangkat lunak karena komunikasi antara Arduino dan LCD menggunakan I2C (Inter-Integrated Circuit) yang hanya memerlukan dua kabel untuk data, yaitu SDA dan SCL. Berikut adalah panduan lengkap tentang cara melakukan konfigurasi ini.
Komponen yang Diperlukan:
- Arduino Uno (atau board Arduino lainnya)
- LCD 16x2 dengan Modul I2C
- Kabel Jumper
- Breadboard (opsional)
Skema Rangkaian Koneksi:
Modul I2C pada LCD 16x2 hanya memerlukan 4 kabel untuk terhubung ke Arduino. Berikut adalah sambungannya:
Pin Modul I2C ke Arduino Uno:
Pin Modul I2C | Pin Arduino Uno | Fungsi |
VCC | 5V | Catu daya 5V |
GND | GND | Ground |
SDA | A4 (Arduino Uno) | Data (Serial Data Line) |
SCL | A5 (Arduino Uno) | Clock (Serial Clock) |
Skema Rangkaian :
+
----------------------------+
| Arduino Uno |
|
----------------------------|
|
5V
--------------> VCC | (Catu daya untuk I2C LCD)
| GND
--------------> GND | (Ground)
| A4
--------------> SDA | (Data Line)
| A5
--------------> SCL | (Clock Line)
+
----------------------------+
I2C LCD
16x2
+
----------------------+
| |
| VCC
------------> 5V (Arduino)
| GND
------------> GND (Arduino)
| SDA
------------> A4 (Arduino)
| SCL
------------> A5 (Arduino)
+
----------------------+
Program untuk Menampilkan Teks di LCD menggunakan I2C:
Untuk menghubungkan LCD dengan I2C, kita perlu menggunakan library LiquidCrystal_I2C
yang memungkinkan komunikasi dengan LCD melalui I2C. Ikuti langkah-langkah berikut:
Langkah 1: Instalasi Library LiquidCrystal_I2C
- Buka Arduino IDE.
- Pilih Sketch > Include Library > Manage Libraries...
- Ketik
LiquidCrystal I2C
di kotak pencarian. - Temukan LiquidCrystal I2C dan klik Install.
Langkah 2: Program untuk Menampilkan Teks
Berikut adalah contoh program untuk menampilkan teks di LCD menggunakan I2C:
cpp
#include <Wire.h> // Library untuk komunikasi I2C
#include <LiquidCrystal_I2C.h> // Library untuk LCD dengan I2C
// Inisialisasi LCD I2C dengan alamat 0x27 (alamat I2C standar untuk LCD 16x2)
LiquidCrystal_I2C lcd(0x27, 16, 2);
// 0x27 adalah alamat I2C yang umum, 16 kolom dan 2 baris
void setup() {
lcd.
begin(
16,
2);
// Menginisialisasi LCD 16x2
lcd.
backlight();
// Menyalakan backlight LCD
lcd.
print(
"Hello, Arduino!");
// Menampilkan pesan pada baris pertama
lcd.
setCursor(
0,
1);
// Memindahkan kursor ke baris kedua
lcd.
print(
"I2C LCD Display");
// Menampilkan teks pada baris kedua
}
void loop() {
// Tidak ada yang perlu dilakukan di loop, teks sudah ditampilkan di setup
}
Langkah 3: Upload Program ke Arduino
- Hubungkan Arduino Uno ke komputer menggunakan kabel USB.
- Pilih Board > Arduino Uno di Tools > Board.
- Pilih port yang sesuai di Tools > Port.
- Klik tombol Upload (ikon panah kiri atas) di Arduino IDE.
- Setelah program berhasil di-upload, LCD akan menampilkan pesan "Hello, Arduino!" di baris pertama dan "I2C LCD Display" di baris kedua.
Menentukan Alamat I2C LCD:
Beberapa modul I2C untuk LCD 16x2 mungkin memiliki alamat I2C yang berbeda, seperti 0x3F, 0x27, atau lainnya. Jika LCD Anda tidak menampilkan teks dengan alamat 0x27, Anda perlu memeriksa alamat I2C menggunakan I2C Scanner.
I2C Scanner:
Untuk mencari alamat I2C dari modul LCD, Anda bisa menggunakan sketsa I2C Scanner berikut:
cpp
#include <Wire.h>
void setup() {
Serial.
begin(
9600);
Wire.
begin();
Serial.
println(
"I2C Scanner");
for (byte i =
8; i <
120; i++) {
Wire.
beginTransmission(i);
byte error = Wire.
endTransmission();
if (error ==
0) {
Serial.
print(
"I2C device found at address 0x");
if (i<
16) {
Serial.
print(
"0");
}
Serial.
println(i, HEX);
}
}
}
void loop() {
// Tidak ada yang perlu dilakukan di loop
}
- Upload kode ini ke Arduino Anda.
- Buka Serial Monitor di Arduino IDE (dengan baud rate 9600).
- Program akan menampilkan alamat I2C dari perangkat yang terhubung.
Jika alamat yang ditemukan adalah 0x3F atau alamat lainnya, ganti alamat 0x27 di kode sebelumnya dengan alamat yang sesuai.
Penutupan:
Dengan konfigurasi ini, Anda dapat menghubungkan Arduino Uno ke LCD 16x2 dengan modul I2C untuk menampilkan teks dengan lebih sedikit kabel dibandingkan dengan menggunakan antarmuka paralel. Modul I2C memungkinkan komunikasi yang lebih sederhana dan efisien, terutama jika Anda bekerja dengan banyak perangkat.
@jadi.update