Tutorial Arduino Menampilkan Text Text Di Lcd 16x2

Ditulis oleh ibnu hamzah ditanggal

Tutorial Arduino Menampilkan Text Text Di Lcd 16x2

Basa Basi Dulu

Pada tutorial kali ini gue akan membahas bagaimana caranya untuk menampilkan text dari arduino ke lcd 16x2 i2c.

terus i2c itu apa ya, i2c adalah Inter Integrated Circuit Intinya, dengan menggunakan modul I2C, pin Arduino yang digunakan untuk menyalakan LCD sangat sedikit yaitu hanya 2 pin: SDA (Serial Data) dan SCL (Serial Clock). Kalau di Arduino UNO itu pin A4 untuk SDA dan pin A5 untuk SCL.

jika kita tanpa menggunakan modul i2c maka pin yang akan digunakan akan lebih banyak, sangat merepotkan bukan, jadi temen temen usahain beli lcd yang sudah ada modul i2c nya ya.

nah itu diatas adalah modul i2c nya, jadi biasanya spaket dengan lcd.

Hal yang harus dipersiapkan

hardware

untuk hardware nya ya kita perlu arduino, bisa nano, uno, mega atau mikrokontroller lainnya.

tapi gue disini menggunakan arduino uno ya.

sofware

menginstal library LiquidCrystal.

alamat lcd i2c Modul I2C ini memiliki alamat I2C nya sendiri yang nantinya digunakan untuk sketch pemrograman. Biasanya ada alamat I2C yaitu 0x3F , 0x27, 0x26 tetapi untuk lebih pastinya masukan kodingan ini aja kedalam arduino ide temen temen.

jika alamat lcd i2c sala biasanya gambar tidak tampil apa apa di lcd.

//mencari addres lcd i2c 
#include <Wire.h>
void setup()
{
Wire.begin();
Serial.begin(9600);
while (!Serial); // Leonardo: wait for serial monitor
Serial.println("nI2C Scanner");
}
void loop()
{
byte error, address;
int nDevices;
Serial.println("Scanning...");
nDevices = 0;
for(address = 1; address < 127; address++ )
{
Wire.beginTransmission(address);
error = Wire.endTransmission();
if (error == 0)
{
Serial.print("I2C device found at address 0x");
if (address<16)
Serial.print("0");
Serial.print(address,HEX);
Serial.println(" !");
nDevices++;
}
else if (error==4)
{
Serial.print("Unknown error at address 0x");
if (address<16)
Serial.print("0");
Serial.println(address,HEX);
}
}
if (nDevices == 0)
Serial.println("No I2C devices found");
else
Serial.println("done");
delay(5000); // wait 5 seconds for next scan
}

tahap instalasi perkabelan

lcd arduino i2c mempunyai 4 pin yang dihubungkan dengan pin arduino:

  1. VCC dihubungkan denngan PIN 5V
  2. GND dihubungkan dengan PIN GND
  3. SDA dihubungkan dengan PIN A4(analog 4)
  4. SCL dihubungkan dengan PIN A5(analog 5)

tahap pemrograman

#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,2,1,0,4,5,6,7,3, POSITIVE);
void setup() {
  lcd.begin(16,2);
}

void loop(){
  lcd.setCursor(0,0);
  lcd.print("how to hack nasa");
  lcd.setCursor(0,1);
  lcd.print("with arduino");

  
}

PENJELASAN KODE

  • libary atau pustaka kamus

    #include <LiquidCrystal_I2C.h>

    jika temen temen pernah belajar dasar pemrograman c++ maka kata include sudah tidak asing lagi ditelinga temen temen, yap include itu berfungsi sebagai libary.

    itu gunanya kalian menginstal libary diawal.

    kenapa harus menggunakan library?

    libary atau pustaka kamus berisi kode kode dan sekumpulan fungsi fungsi yang dapat memudahkan kita dalam memprogram jauh lebih cepat efesien dan kita tidak perlu membuatnya dari 0 lagi karna sudah disediakan didalam libary tersebut.

    kita tinggal pakai dan panggil saja contohnya seperti fungsi untuk menampilkan karakter atau tulisan kedalam lcd kita hanya cukup memanggilnya seperti ini lcd.print(“belajar arduino pemula”) dengan kode tersebut dapat meringkas pekerjaan kita bukan.

  • bare minimum

    void setup() dan void loop() merupakan sebuah fungsi default yang harus ada disebut dengan bare minimum, fungsi setup akan dieksekusi sekali ketika arduino dinyalakan, sedengan fungsi loop akan selalu diulang terus menerus.

    jika kalian ingin membuat program yang hanya dieksekusi sekali saja, taruh program tersebut didalam fungsi setup, jika program sebaliknya ingin diproses secara berulang taruh didalam fungsi loop.

  • lcd.setCursor()

    lcd.setCursor(0,0) kode ini merupakan sebuah fungsi untuk menset letak text yang akan ditampilkan, lcd 16x2 mempunyai 16 baris dan 2 kolom, dalam fungsi lcd.setCusrsor(ini baris, ini kolom) jadi jika ditulis (0,0) artinya text kita akan ditulis dimulai dari baris 0 kolom 0.

    jika ditulis (0,1) maka text akan ditulis mulai dari baris 0 kolom 1.

  • lcd.print()

    lcd.print("") kode ini berfungsi untuk mencetak tulisan ke lcd dengan batas 16 karakter perbaris, spasi juga dihitug ya.

  • lcd.begin() berfungsi untuk menentukan dimensi dari lcd yang akan di gunakan lcd.begin(baris ,kolom);

jika sudah silakan dicompail program diatas maka akan muncul tampilan seperti ini menandakan temen temen berhasil yippy (っ^▿^)💨

kesimpulan dan penutupan

dalam tutorial kali ini gue sendiri mengalami kendala text nya tampil karakter kotak jika temen temen mengalami itu coba puter potensio dibelakang modul i2c, untuk mengatur sensitivitas modul.

jika tampilan text tidak muncul coba cek alamat lcd apa sudah benar atau belum, jika bertemu kendala lainnya silakan komentar aja ya hehe.

mungkin sekian tutorial kali ini semoga membantu babayyy≧◠‿◠≦✌

Ibnu Hamzah

Hanya seorang pengembara kode, yang suka sekali naik gunung dan berpetualang dialam.


Postingan Terkait