Kamis, 28 September 2017
-membuat
rangkaian LCD menggunakan mikrokontroler ATMega8535 dengan software compiler
BASCOM AVR
-
Switch
-
LCD
-
Mikrokontroler ATMega8535
-
Button
-
Crystal
3.1
Pengertian LCD
Display elektronik adalah salah satu komponen
elektronika yang berfungsi sebagai tampilan suatu data, baik
karakter, huruf ataupun grafik. LCD (Liquid Cristal Display) adalah salah satu jenis display
elektronik yang dibuat dengan teknologi CMOS logic yang bekerja dengan
tidak menghasilkan cahaya tetapi memantulkan cahaya yang ada di sekelilingnya
terhadap front-lit atau mentransmisikan cahaya dari back-lit. LCD (Liquid Cristal
Display) berfungsi sebagai penampil data baik dalam bentuk
karakter, huruf, angka ataupun grafik.
Pengendali / Kontroler LCD (Liquid Cristal Display)
Dalam modul LCD (Liquid Cristal
Display) terdapat microcontroller yang berfungsi sebagai pengendali
tampilan karakter LCD (Liquid Cristal Display). Microntroller pada suatu
LCD (Liquid Cristal Display) dilengkapi dengan memori dan register.
Memori yang digunakan microcontroler internal LCD adalah :
·
DDRAM (Display
Data Random Access Memory) merupakan memori tempat karakter yang akan ditampilkan berada.
·
CGRAM (Character
Generator Random Access Memory) merupakan memori untuk menggambarkan pola sebuah karakter dimana
bentuk dari karakter dapat diubah-ubah sesuai dengan keinginan.
·
CGROM (Character
Generator Read Only Memory) merupakan memori untuk menggambarkan pola sebuah karakter dimana pola
tersebut merupakan karakter dasar yang sudah ditentukan secara permanen oleh
pabrikan pembuat LCD (Liquid Cristal Display) tersebut sehingga pengguna
tinggal mangambilnya sesuai alamat memorinya dan tidak dapat merubah karakter
dasar yang ada dalam CGROM.
Register control yang terdapat dalam
suatu LCD diantaranya adalah.
·
Register
perintah yaitu
register yang berisi perintah-perintah dari mikrokontroler ke panel LCD (Liquid
Cristal Display) pada saat proses penulisan data atau tempat status dari
panel LCD (Liquid Cristal Display) dapat dibaca pada saat pembacaan
data.
·
Register data yaitu register untuk menuliskan
atau membaca data dari atau keDDRAM. Penulisan data pada register akan
menempatkan data tersebut keDDRAM sesuai dengan alamat yang telah diatur
sebelumnya.
Pin, kaki atau jalur input dan kontrol
dalam suatu LCD (Liquid Cristal Display) diantaranya adalah :
·
Pin data adalah jalur untuk memberikan data
karakter yang ingin ditampilkan menggunakan LCD (Liquid Cristal Display)
dapat dihubungkan dengan bus data dari rangkaian lain seperti mikrokontroler
dengan lebar data 8 bit.
·
Pin RS (Register
Select) berfungsi
sebagai indikator atau yang menentukan jenis data yang masuk, apakah data atau
perintah. Logika low menunjukan yang masuk adalah perintah, sedangkan logika
high menunjukan data.
·
Pin R/W (Read
Write) berfungsi
sebagai instruksi pada modul jika low tulis data, sedangkan high baca data.
·
Pin E (Enable) digunakan untuk memegang data baik
masuk atau keluar.
·
Pin VLCD berfungsi mengatur kecerahan
tampilan (kontras) dimana pin ini dihubungkan dengan trimpot 5 Kohm, jika tidak
digunakan dihubungkan ke ground, sedangkan tegangan catu daya ke LCD sebesar 5
Volt.
Adapun fitur yang disajikan dalam LCD ini adalah :
a. Terdiri dari 16 karakter dan 2 baris.
b. Mempunyai 192 karakter tersimpan.
c. Terdapat karakter generator terprogram.
d. Dapat dialamati dengan mode 4-bit dan 8-bit.
e.
Dilengkapi dengan back light.
Spesifikasi Kaki
LCD 16 x 2
Pin
Deskripsi
1
Ground
2
Vcc
3
Pengatur kontras
4 “RS” Instruction/Register
Select
5
“R/W” Read/Write LCD Registers
6
“EN” Enable
7-14
Data I/O Pins
15
Vcc
16
Ground
3.3
Prinsip Kerja LCD
Pada aplikasi
umumnya RW diberi logika rendah “0”. Bus data terdiri dari 4-bit atau 8-bit.
Jika jalur data 4-bit maka yang digunakan ialah DB4 sampai dengan DB7.
Sebagaimana terlihat pada table diskripsi, interface LCD merupakan sebuah
parallel bus, dimana hal ini sangat memudahkan dan sangat cepat dalam pembacaan
dan penulisan data dari atau ke LCD. Kode ASCII yang ditampilkan sepanjang
8-bit dikirim ke LCD secara 4-bit atau 8 bit pada satu waktu. Jika mode 4-bit
yang digunakan, maka 2 nibble data dikirim untuk membuat sepenuhnya 8-bit
(pertama dikirim 4-bit MSB lalu 4-bit LSB dengan pulsa clock EN setiap
nibblenya). Jalur kontrol EN digunakan untuk memberitahu LCD bahwa
mikrokontroller mengirimkan data ke LCD. Untuk mengirim data ke LCD program
harus menset EN ke kondisi high “1” dan kemudian menset dua jalur kontrol
lainnya (RS dan R/W) atau juga mengirimkan data ke jalur data bus.
Saat jalur lainnya sudah siap, EN harus diset ke “0” dan tunggu beberapa saat (tergantung pada datasheet LCD), dan set EN kembali ke high “1”. Ketika jalur RS berada dalam kondisi low “0”, data yang dikirimkan ke LCD dianggap sebagai sebuah perintah atau instruksi khusus (seperti bersihkan layar, posisi kursor dll). Ketika RS dalam kondisi high atau “1”, data yang dikirimkan adalah data ASCII yang akan ditampilkan dilayar. Misal, untuk menampilkan huruf “A” pada layar maka RS harus diset ke “1”. Jalur kontrol R/W harus berada dalam kondisi low (0) saat informasi pada data bus akan dituliskan ke LCD. Apabila R/W berada dalam kondisi high “1”, maka program akan melakukan query (pembacaan) data dari LCD. Instruksi pembacaan hanya satu, yaitu Get LCD status (membaca status LCD), lainnya merupakan instruksi penulisan. Jadi hampir setiap aplikasi yang menggunakan LCD, R/W selalu diset ke “0”. Jalur data dapat terdiri 4 atau 8 jalur (tergantung mode yang dipilih pengguna), DB0, DB1, DB2, DB3, DB4, DB5, DB6 dan DB7. Mengirim data secara parallel baik 4-bit atau 8-bit merupakan 2 mode operasi primer. Untuk membuat sebuah aplikasi interface LCD, menentukan mode operasi merupakan hal yang paling penting.
Mode 8-bit sangat baik digunakan ketika kecepatan menjadi keutamaan dalam sebuah aplikasi dan setidaknya minimal tersedia 11 pin I/O (3 pin untuk kontrol, 8 pin untuk data). Sedangkan mode 4 bit minimal hanya membutuhkan 7-bit (3 pin untuk kontrol, 4 pin untuk data). Bit RS digunakan untuk memilih apakah data atau instruksi yang akan ditransfer antara mikrokontroller dan LCD. Jika bit ini di set (RS = 1), maka byte pada posisi kursor LCD saat itu dapat dibaca atau ditulis. Jika bit ini di reset (RS = 0), merupakan instruksi yang dikirim ke LCD atau status eksekusi dari instruksi terakhir yang dibaca.
5. Listing Program
[kembali]
$regfile = "m8535.dat" 'memanggil library ATmega 8535
$crystal = 16000000 'menentukan nilai crystal ATmega 8535
Config Lcdpin = Pin , Rs = Portc.0 , E = Portc.1 , Db4 = Portc.2, 'deklarasi pin LCD dan PORT yang digunakan untuk output
Config Lcdpin = Pin , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 'deklarasi pin LCD dan PORT yang digunakan untuk output
Config Portb = Input
Config Lcd = 16 * 2 'deklarasi Ukuran LCD yang dipakai, dua menandakan jumlah baris
'16 menandakan jumlah kolom pada LCD
Do
Cursor Off
Cls 'Jika PINB.0 bernilai 1 maka pada LCD akan tampil Tulisan
'pepi putri utami dan di baris berikutnya tulisan reno siska s
If Pinb.0 = 1 Then
Lcd "Pepi Putri Utami"
Lowerline
Lcd "Reno Siska S"
Waitms 100 ' waktu delay selama 100ms
Elseif Pinb.1 = 1 Then 'jika PINB.1 bernilai 1 maka LCD akan menampilkan tulisan Mikrokontroler
Lcd "Mikrokontroller" 'pada baris 1 dan mikroprosesor pada baris kedua
Lowerline
Lcd "Mikroprosessor"
Waitms 100
' jika semua port bernilai nol maka output nol, LCD dalam keadaan mati
Else
Portc = &B00000000
End If
Loop
End
File simulasi rangkaian =>>DOWNLOAD$regfile = "m8535.dat" 'memanggil library ATmega 8535
$crystal = 16000000 'menentukan nilai crystal ATmega 8535
Config Lcdpin = Pin , Rs = Portc.0 , E = Portc.1 , Db4 = Portc.2, 'deklarasi pin LCD dan PORT yang digunakan untuk output
Config Lcdpin = Pin , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 'deklarasi pin LCD dan PORT yang digunakan untuk output
Config Portb = Input
Config Lcd = 16 * 2 'deklarasi Ukuran LCD yang dipakai, dua menandakan jumlah baris
'16 menandakan jumlah kolom pada LCD
Do
Cursor Off
Cls 'Jika PINB.0 bernilai 1 maka pada LCD akan tampil Tulisan
'pepi putri utami dan di baris berikutnya tulisan reno siska s
If Pinb.0 = 1 Then
Lcd "Pepi Putri Utami"
Lowerline
Lcd "Reno Siska S"
Waitms 100 ' waktu delay selama 100ms
Elseif Pinb.1 = 1 Then 'jika PINB.1 bernilai 1 maka LCD akan menampilkan tulisan Mikrokontroler
Lcd "Mikrokontroller" 'pada baris 1 dan mikroprosesor pada baris kedua
Lowerline
Lcd "Mikroprosessor"
Waitms 100
' jika semua port bernilai nol maka output nol, LCD dalam keadaan mati
Else
Portc = &B00000000
End If
Loop
End
Langganan:
Posting Komentar (Atom)
Tidak ada komentar:
Posting Komentar