Kamis, 23 September 2010

Menampilkan karakter Unik pada LCD


Meneruskan posting sebelumnya tentang Interfacing LCD degan Mikrokontroller, sekarang saya akan berbagi tentang bagaimana menampilkan karakter unik pada LCD. Tetap masih menggunakan LCD M1632...

OK sekarang kita meninjau lebih dalam tentang bagaimana LCD bekerja menampilkan sebuah karakter..

LCD M1632 adalah modul LCD yang digunakan sebagai antarmuka antara pengguna dan sistem mikrokontroler dengan tampilan 2 baris dan 16 kakakter. LCD ini dikendalikan oleh mikrokontroler HD 44780 yang memiliki DDRAM (Display Data Access Memory) sebagai memori tempat karakter yang ditampilkan berada, CGRAM (Character Generator Random Access Memory) sebagai memori untuk menggambarkan pola karakter dan CGROM (Character Generator Read Only Memory) sebagai tempat penyimpanan karakter yang telah permanen dan tidak dapat dihapus. 





Jadi jika kita ingin menampilkan karakter khusus pada LCD ini kita harus mengoprek-oprek bagian CGROM dan DDRAM ini, untuk lebih jelasnya mengenai apa saja karakter yang dapat ditampilkan serta bagaimana mensetting agar tampilan unik itu bisa keluar lihat tabel dibawah ini.


Jika kita ingin menampilkan karakter unik diatas kita tinggal mengisi aja nilai data sesuai dengan tabel diatas. Nah yang jadi pertanyaannya data tersebut bagaimana cara mengisinya???
Sekarang marilah kita meninjau isi dari fungsi LCD.H jika kita buka isi dari header lcd tersebut kira-kira isinya seperti ini

//--------------------header lcd--------------------
#ifndef _LCD_INCLUDED_
#define _LCD_INCLUDED_

#pragma used+

void _lcd_ready(void);
void _lcd_write_data(unsigned char data);
// write a byte to the LCD character generator or display RAM
void lcd_write_byte(unsigned char addr, unsigned char data);
// read a byte from the LCD character generator or display RAM
unsigned char lcd_read_byte(unsigned char addr);
// set the LCD display position  x=0..39 y=0..3
void lcd_gotoxy(unsigned char x, unsigned char y);
// clear the LCD
void lcd_clear(void);
void lcd_putchar(char c);
// write the string str located in SRAM to the LCD
void lcd_puts(char *str);
// write the string str located in FLASH to the LCD
void lcd_putsf(char flash *str);
// initialize the LCD controller
unsigned char lcd_init(unsigned char lcd_columns);

#pragma used-
#pragma library lcd.lib

#endif
//--------------------------------------------------------------------



Nah sekarang pada isi header lcd diatas ada fungsi yakni :
void lcd_write_byte(unsigned char addr, unsigned char data);
Nah fungsi itulah yang kita gunakan untuk menampilkan karakter lcd. Kita tinggal mengisikan perintah 

Contoh :
misalkan kita ingin menampilkan tanda seru (!) 
maka kita isikan nilai data yakni  = 00100001 dan jika kita konversi ke desimal yakni 33 dan untuk  addr yakni 2 (lihat tabel diatas bagian CGRAM)

lcd_write_byte(2, 33);
  
Semoga artikel ini dapat membantu anda dalam berkreasi dengan LCD.. Selamat Mencoba!!

Nb: pembaca yang baik selalu meninggalkan komentar... thanks 




Stumble
Delicious
Technorati
Twitter
Facebook

3 Comments:

wira said...

:c: nice gan...

Anonim said...

Trims gan

Anonim said...

boleh juga ditulis //lcd_putchar(0x21)

Posting Komentar

Entri Populer

 

Menanam Ilmu Copyright © 2010 LKart Theme is Designed by Lasantha