Arduino Part 15. Running teks LCD 2X16 dengan modul I2C
Membuat running text menggunakan LCD 2X16 yang dikontrol oleh Arduino Uno. LCD diberi tambahan modul Inter Integrated Circuit (IIC atau I2C) agar supaya bisa lebih hemat penggunaan kabel.
Jika menggunakan I2C + LCD maka cukup 4 buah kabel saja yang terhubung ke arduino, bandingkan dengan cara pemasangan LCD di artikel Arduino Part 14. Cara memprogram LCD 16X2 yang membutuhkan kabel sebanyak 12 buah kabel. Jauh berbeda bukan?- Arduino Uno
- Modul I2C
- LCD 2X16
- Komputer PC/Laptop
Bentuk LCD bisa
dilihat pada gambar di bawah ini:
Harga modul I2C tidak
terlalu mahal, kalau anda mencari di belanja online harga modul I2C sekitar Rp.
7.000,- Jika ingin satu set LCD+I2C harganya sekitar Rp.30.000 – Rp.40.000.
Gambar dibawah ini saat LCD sudah dipasang modul I2C
Sebelum kita membuat sketch program maka silahkan tambah dulu library arduinonya. Caranya anda download file library I2C dalam bentuk zip. Linknya : Library I2C. Lalu anda tambahkan library tersebut dengan cara pilih menu : Sketch >> Include Library >> Add.ZIP Library, lalu carilah file library I2C yang telah anda download tadi.
Setelah selesai menambahlan library, maka saatnya anda ujicoba rangkaian dengan membuat sketch program arduino seperti dibawah ini :
// LCD display (2X16) dgn modul I2C
// Oleh : Hendry Kurniawan,S.Pd
// hubungkan pin A4 arduino uno ke SDA I2C
// dan pin A5 arduino uno ke SCL I2C
// pin +5 volt arduino uno ke VCC I2C
// pin GND arduino uno ke GND I2C
//-----------------------------------------------
#include <LiquidCrystal_I2C.h> // Memasukkan library untuk I2C
{
lcd.init(); // inisialisasi lcd
}
{
lcd.clear(); //menghapus layar LCD
lcd.setCursor(0, 0); // Set posisi di kolom 0 baris ke-0
lcd.print("Arduino LCD 2X16");
lcd.setCursor(0, 1); // Set posisi di kolom 0 baris ke-1
lcd.print("--Elektronika--");
delay(2000);
lcd.clear();
lcd.setCursor(4, 0); // Set posisi di kolom 4 baris ke-0
lcd.print("Hendry. K");
lcd.setCursor(5, 1); // Set posisi di kolom 5 baris ke-1
lcd.print("Blogger");
delay(2000);
}
Hasilnya bisa dilihat pada video ini :
EFEK SCROLLING KE-1
Animasi teks LCD bisa di scroll atau digulirkan dari
arah kiri atau dari arah kanan. Perintahnya adalah :
scrollDisplayLeft (); untuk menggeser seluruh teks
ke kiri satu kolom
scrollDisplayRight (); untuk menggeser seluruh teks
ke kanan satu kolom
Silahkan anda coba sketch program dibawah ini :
//
-----------------------------------------------------
// Animasi Scrolling Teks LCD dgn modul I2C
// baik ke kiri maupun ke kanan
// menggunakan scrollDisplayLeft() dan
// scrollDisplayRight()
//
-----------------------------------------------------
#include
<LiquidCrystal_I2C.h> //
Memasukkan library untuk I2C
LiquidCrystal_I2C
lcd(0x27,16,2); // Alamat default I2C =
0x27 dgn LCD 16x2
void setup()
{
lcd.init(); // inisialisasi lcd
lcd.backlight(); // Menyalakan lampu belakang
lcd.clear();
//menghapus layar LCD
lcd.setCursor(0, 0); // Set posisi di kolom 0
baris ke-0
lcd.print("0123456789-Angka");
lcd.setCursor(0, 1); // Set posisi di kolom 0
baris ke-1
lcd.print("ABCDEFGHIJ-Huruf");
delay(2000);
}
void loop()
{
// Gerak ke kiri
for (int j = 1; j <= 16; j++)
{
lcd.scrollDisplayLeft();
delay(500);
}
// Gerak ke kanan
for (int j = 1; j <= 16; j++)
{
lcd.scrollDisplayRight();
delay(500);
}
delay(2000); // Untuk menunda tampilan
}
Hasil program ini bisa di lihat pada video dibawah
ini :
EFEK SCROLLING KE-2
Silahkan dicoba efek scrolling lainnya dengan 2 teks
yang berbeda. Seketch Programnya sebagai berikut :
//
-----------------------------------------------------
// Animasi ke-2 Scrolling Teks LCD dgn modul
I2C
// baik ke kiri maupun ke kanan
// menggunakan scrollDisplayLeft() dan
// scrollDisplayRight()
//
-----------------------------------------------------
#include
<LiquidCrystal_I2C.h> //
Memasukkan library untuk I2C
LiquidCrystal_I2C
lcd(0x27,16,2); // Alamat default I2C =
0x27 dgn LCD 16x2
void setup()
{
lcd.init(); // inisialisasi lcd
lcd.backlight(); // Menyalakan lampu belakang
}
void loop()
{
// Informasi pertama
lcd.home();
lcd.clear();
lcd.setCursor(0, 0); // Set posisi di kolom 0
baris ke-0
lcd.print("Arduino LCD 2X16");
lcd.setCursor(0, 1); // Set posisi di kolom 0
baris ke-1
lcd.print("--Elektronika--");
delay(5000);
// Gerak ke kiri
for (int j = 1; j <= 16; j++)
{
lcd.scrollDisplayLeft();
delay(100);
}
// Informasi kedua
lcd.home();
lcd.clear();
lcd.setCursor(4, 0); // Set posisi di kolom 4
baris ke-0
lcd.print("Hendry. K");
lcd.setCursor(5, 1); // Set posisi di kolom 5
baris ke-1
lcd.print("Blogger");
delay(5000);
// Gerak ke kanan
for (int j = 1; j <= 16; j++)
{
lcd.scrollDisplayRight();
delay(100);
}
}
Hasil program ini bisa dilihat pada video dibawah ini :
RUNNING TEXT
Silahkan ujicoba sketch dibawah ini guna menampilkan
teks berjalan (running text).
//
-----------------------------------------------
// Running Text untuk
menampilkan tulisan yang panjang
// dan berkesan
tergulir
// menggunakan LCD
dengan modul I2C
// Oleh : Hendry
Kurniawan
//-----------------------------------------------
#include
<LiquidCrystal_I2C.h> //
Memasukkan library untuk I2C
LiquidCrystal_I2C
lcd(0x27,16,2); // Alamat default I2C =
0x27 dgn LCD 16x2
// Definisikan string
String teks =
"Selamat mempelajari cara memprogram LCD Display. ";
int indeks = 0;
void setup()
{
lcd.init(); // inisialisasi lcd
lcd.backlight(); // Menyalakan lampu belakang
lcd.clear();
lcd.print("Info untuk Anda:");
// Bentuk string yang panjang
teks = teks +
"Cobalah semua contoh di
www.elektronikahendry.com - " +
"Kemudian, Anda bisa
mengembangkannya sendiri " +
"sesuai dengan ide Anda. Sekali
lagi, selamat belajar " +
"dan sukses selalu!";
}
void loop()
{
char st[17];
// String dengan maksimal 16 karakter
st[16] = 0;
// Akhir string
// Bentuk string
for (int j = 0; j < 16; j++)
if (indeks + j < teks.length())
st[j] = teks[indeks + j];
else
st[j] = 32; // Spasi
// Tampilkan di baris kedua
lcd.setCursor(0, 1);
lcd.print(st);
// Peroleh indeks berikutnya
indeks++;
if (indeks == teks.length() - 1)
indeks = 0;
delay(600);
}
Hasil dari program di atas bisa dilihat pada video
ini :
Demikianlah cara membuat animasi dan running text pada LCD menggunakan modul I2C dan Arduino uno.
Saya coba program yg paling bawah tp error terus knp ya?
BalasHapusApa yg salah?🙏🙏🙏