Senin, 13 Juli 2009

Tips n Trik Coding LCD karakter

.
Jika anda menggunakan program CoViAVR maka untuk LCD karakter 16x2, tidak perlu repot-repot memikirkan mode komunikasi 4 bit atau 8 bit dan konfigurasinya, cukup jalankan CodeWizzardAVR lihat konfigurasinya, lihat rangkaian referensi lainnya diinternet kemudian buat Hardware-nya.
Hanya ada satu cara untuk mengetahui apakah rangkaian anda benar atau tidak, yaitu dengan langsung memprogramnya untuk menampilkan kalimat tertentu.










Baca dulu : LCD karakter
  • Jalankan CoviAVR dan pada CodeWizzardAVR atur seperti gambar.
  • Cek dengan menampilkan berberapa kalimat seperti pada gambar.
Jika tampilan tersebut dapat terlihat berarti hardware berhasil tetapi jika tidak terdapat tampilannya, bisa saja karena pengaturan kontras LCD yang belum benar. Coba putar potensiometer (VR - Variabel Resistor) sehingga terlihat tampilannya.

Beberapa perintah umum yang sering digunakan pada LCD yaitu :
  • lcd_clear : untuk menghapus tampilan LCD baris 1, baris 2, atau baris lainnya dan secara otomatis posisi cursor berada pada x,y(0,0).
  • lcd_gotoxy : untuk mengatur posisi awal karakter yang akan ditampilkan dengan x=kolom dan y=baris. Posisi awal dimulai dari 0 bukan 1.
  • lcd_putchar : untuk menampilkan nilai-nilai unsigned char (range 0 - 255) bisa berupa huruf, angka, simbol, dan nilai ASCII. Hal yang perlu diingat adalah beberapa nilai ASCII pada LCD tidak sesuai dengan standar ASCII yang sebenarnya.
  • lcd_puts : menampilkan kalimat berupa string yang telah tersimpan di memori RAM.
  • lcd_putsf : menampilkan kalimat berupa string yang telah tersimpan di memori FLASH.

ASCII LCD karakter dengan backlight putih.
ASCII LCD karakter dengan backlight hijau.
ASCII link I.
ASCII link II.

Sekarang saya akan membahas tips dan trik coding LCD karakter.

Tips n Trik
Jika menggunakan LCD pada CoViAVR umumnya seperti dibawah ini :
lcd_clear();
lcd_putsf("Program Membaca");
lcd_gotoxy(0,1);
lcd_putsf("Menampilkan ADC")
delay_ms(2000);

data_ADC = read_adc(0); // baca adc channel 0
lcd_clear();
lcd_putsf("Data ADC chnl 0 ");
sprintf(buff_adc,"Nilai : %d",data_ADC);
lcd_gotoxy(0,1);
lcd_puts(buf_adc);
Sekarang saya akan membuat fungsi untuk menampilkan data seperti pada lcd_puts dan lcd_putsf dengan nama mylcd_puts dan mylcd_putsf.
Program pada gambar adalah salah satu trik untuk mempersingkat penulisan program untuk menampilkan tulisan dan nilai data pada LCD.

Lumayan menghemat baris kan ;)

Topik yang Populer