LCD 16×2 HD44780

Tutorial program LCD 16×2 menggunakan CVAVR 3, ATMega16

menggunakan LCD HD44780 dengan ATMega16

Tuturial ini dibagi menjadi beberapa bagian:

  1. Setting CVAVR dan menampilkan angka & huruf LCD 16×2 <halaman ini>
  2. Menampilkan karakter ke LCD 16×2
  3. Menampilkan angka dari variabel ke LCD 16×2
  4. Custom Karakter pada LCD 16×2

Dalam CodeVision AVR sudah terdapat berbagai macam library perangkat elektronika diantaranya adalah LCD 16×2. Dengan adanya library ini dapat mempermudah pemakaian dan penulisan kode program yang lebih sedikit. Berikut program sederhana dan setting CVAVR3 untuk pemrograman LCD

  1. rangkaian mikrokontroler ATMega16 dengan LCD HD44780

2. Kode Program

#include <io.h>
 
// Alphanumeric LCD functions
#include <alcd.h>
 
void main(void)
{
 
lcd_init(16);
 
while (1)
    {
    // Please write your application code here
    lcd_gotoxy(0,0);
    lcd_puts("hallo 1234567890");
 
    lcd_gotoxy(0,1);
    lcd_puts("ABCD");
    lcd_gotoxy(5,1); 
    lcd_puts("EFGHIJK");
    }
}

Setelah membuat project baru dan menuliskan program diatas, kemudian perlu beberapa setting pada CVAVR. Setting ini cukup dilakukan 1 kali. Berikut langkah langkahnya:

klik Project-> Configure

Klik C Compiler -> Libraries -> Alphanumeric LCD -> beri tanda centang pada Enable Alphanumeric LCD Support, setting port yang akan digunakan(contoh di atas PORTC) dikoneksikan ATMega dengan LCD. Setelah selesai Klik OK.

Klik Build All -> masukkan program ke dalam IC/simulasikan dalam proteus -> selesai

3. Pembahasan

3.1. lcd_init(16);

lcd_init = meng-inisialisasi jumlah karakter perbaris, LCD HD44780 bisa menampilkan sejumlah 16 karakter perbaris maka perlu dituliskan 16 didalam kurung (16).

3.2. lcd_gotoxy(0,0);

lcd_gotoxy = kita bisa menunjuk secara spesifik dimana karakter akan dituliskan pada LCD dengan perintah ini, Caranya tuliskan perintah ini diikuti dengan koordinat x dan y dalam kurung. (0,0) = (posisi x, posisi y). posisi x = 0 artinya paling kiri, posisi y = 0 artinya baris pertama. Sedangkan jika dinginkan menampilkan baris kedua posisi y diisi dengan 1.

3.3. lcd_puts("hallo 1234567890");

lcd_puts = perintah untuk menampilkan karakter. untuk karakter apa yang akan ditampilkan ditulis didalam kurung dan diberi tanda petik (“hallo 1234567890”) .

Semoga berhasil 🙂