Sekarang LCD lebih dipilih daripada dot matriks, seven-segment LED atau Multisegment LED untuk tampilan, disebabkan oleh selain harganya murah, LCD sudah mampu menampilkan huruf, angka bahkan grafik sekalipun serta dalam memprogramnya lebih mudah.
Berikut tabel deskripsi pin pada LCD :
Pin | Simbol | I/O | Deskripsi |
1 | VSS | -- | Ground |
2 | VCC | -- | + 5 V power suplay |
3 | VEE | -- | Power suplay source to control contrast |
4 | RS | I | Register select: RS = 0 to select instruksi. Command register; RS =1 to selsct data reg. |
5 | R/W | I | Read/Write: R/W =0 for write, R/W= 1 for read |
6 | E | I | Enable |
7 | DB0 | I/O | The 8-bit data bus |
8 | DB1 | I/O | The 8-bit data bus |
9 | DB2 | I/O | The 8-bit data bus |
10 | DB3 | I/O | The 8-bit data bus |
11 | DB4 | I/O | The 8-bit data bus |
12 | DB5 | I/O | The 8-bit data bus |
13 | DB6 | I/O | The 8-bit data bus |
14 | DB7 | I/O | The 8-bit data bus |
Sekarang kita akan membuat Program Menampilkan kata “Pengenalan Pemograman ATMEGA32 Dengan BASCOM-AVR” dimana kata kata tersebut tampil satu persatu pada LCD dengan delay 1 detik dan kemudian digeser kesebelah kiri sebanyak 40 kali dan kemudian disusul dengan tampilnya kata “BY Meri Wardana” berikut programnya :
$regfile = "m32def.dat"
$crystal = 8000000
Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 , E = Portc.2 , Rs = Portc.0
Config Lcd = 20 * 4
Dim X As Byte
Do
Cls
Locate 1 , 1
Lcd "Pengenalan"
Waitms 100
Locate 2 , 1
Lcd "Pemograman"
Waitms 100
Locate 3 , 1
Lcd "ATMEGA8535"
Waitms 100
Locate 4 , 1
Lcd "Dengan BASCOM-AVR"
Waitms 100
For X = 1 To 40
Shiftlcd Left
Waitms 50
Next
Cls
Locate 1 , 1
Lcd "BY"
Locate 2 , 1
Lcd "Meri"
Locate 3, 1
Lcd "Wardana"
Waitms 100
Loop
Pembahasan Program :
$regfile = "m32def.dat" library yang menyatakan bahwa mikrokontroller yang kita pakai adalah atmega32,
$crystal = 8000000 meyatakan bahwa clock oscillator yang kita pakai sebesar 8Mhz,
Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 , E = Portc.2 , Rs = Portc.0 inisialisasi pin-pin pada LCD sendiri,
Config Lcd = 20 * 4 LCD yang kita pakai adalah LCD berukuran 20*4,
Dim X As Byte = pendeklarasian bahwa variable X adalah tipe byte dimana rangenya adalah 0-255,
Do-loop = perintah perulangan,
Cls = LCD dibersihkan terlebih dahulu
Locate 1 , 1 = menyatakan huruf atau angka yang akan ditampilkan pertama kali akan keluar pada kolom 1 baris 1,
Lcd "Pengenalan" = kata yang akan ditampilkan pada LCD adalah “pengenalan”
Waitms 100 = delay waktu 100 milisecond
Begitu seterusnya hingga For X = 1 To 40-Next = yang menyatakan perulangan 40 kali,
Shiftlcd Left = menggeser kata-kata yang kita tampilkan tadi ke kiri
Waitms 50 = delay waktu 50 milisecond
Selamat mencoba…!