Scanning Dot Matrix Dan Keypad (Praktikum Iii)
I. TUJUAN PRAKTIKUM
- Mampu menggunakan pivot I/O AVR secara bi-directional (sebagai input dan output)
- Mampu membuat acara untuk menampilkan suatu karakter pada LCD (Liquid Crystal Display) melalui pivot I/O AVR
II. PENGANTAR
Modul LCD memiliki controller untuk menampilkan karakter (angka, huruf, atau simbol) pada display. Modul LCD yang digunakan berukuran 8 karakter x two baris dengan controller HD44780 atau persamaannya. Modul LCD membutuhkan inisialisasi terlebih dahulu sebelum digunakan yang berfungsi untuk menentukan antar muka(interface) four chip atau 8 bit, jumlah baris display (1 baris atau two baris). Untuk keterangan lebih lengkap terdapat pada datasheet LCD. Karakter yang ditampilkan ke display disimpan di memori DDRAM (Display Data RAM).
III. PERCOBAAN
3.1 Alat dan Bahan
Alat dan Bahan | Gambar |
AVR Board | |
Kabel Power Supply | |
AVR Internet service provider (In System Programming) | |
Kabel (untuk di hubungkan ke PORT) | |
3.2 Prosedur Percobaan
Berikut ini prosedur percobaan praktikum IV:
- Persiapkan alat dan bahan, pastikan semuanya mampu digunakan dengan baik
- Untuk membuat rangkaiannya perhatikan gambar dibawah ini:
Gambar. Menghubungkan PORT LCD dengan pivot Mikrokontroler AVR.
3.3 Rangkaian Percobaan
IV. HASIL dan PEMBAHASAN
1) Settingan LCD di Code Vision AVR
Berikut ini ialah settingannya:
(1) Jalankan aplikasi Code Vision kemudian pada hidangan file pilih new, nanti akan muncul jendela practise novel file pilih projection dan klik OK, akan muncul jendela confirm klik yes,,,Perhatikan gambar dibawah ini! Pilih Alphanumeric LCD kemudian ceklist Enable Alphanumeric LCD.
(2)Pilih Ports, Kemudian Data Dirction Pada Port Influenza A virus subtype H5N1 dibuat OUT semuanya .
(3)Selanjutnya Pilih Timers, pada Overflow Interrupt di Ceklist.
(4)Setelah pilih Generate Program Save dan Exit. Akan muncul jendela Save, Savelah kerja anda tersebut. Selanjutnya membuat Program untuk instruksi-instruksi berikut ini:
2)Membuat Program untuk menampilkan String dan Character pada LCD
(1) Program untuk menampilkan String (“halo.... CIZA”)
#include <mega8535.h>
#include <alcd.h> // Alphanumeric LCD Functions
void main(void){
// Untuk Inisialisasi MODUL LCD
PORTA=0x00;
DDRA=0xFF;
PORTB=0x00;
DDRB=0x00;
PORTC=0x00;
DDRC=0x00;
PORTD=0x00;
DDRD=0x00;
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;
MCUCR=0x00; // External Interrupt(s) initialization INT0-2 OFF
MCUCSR=0x00;
TIMSK=0x00; // Timer(s)/Counter(s) Interrupt(s) initialization
UCSRB=0x00; // USART initialization, USART Disabled
ACSR=0x80; // Analog Comparator initialization
SFIOR=0x00;
ADCSRA=0x00; // ADC initialization, ADC Disabled
SPCR=0x00; // SPI initialization. SPI Disabled
TWCR=0x00; // TWI initialization, Disabled
lcd_init(16); // sebagai initilizationArtinya ada 8karakter two baris
lcd_gotoxy(0,0); // kursor KOLOM DAN BARIS maksudnya kolom 0 baris 0
lcd_putsf ("halo...."); // nilai string yang ditampilkan
lcd_gotoxy(0,1); // Tampilan pada kolom 0 baris 1
lcd_putsf("CIZA"); // nilai string yang ditampilkan
while (1)
{
}
}
Hasilnya menyerupai gambar dibawah ini:
2) Program untuk menampilkan Character Influenza A virus subtype H5N1 dan Huruf Jepang
lcd_init(16); // Artinya ada 8 karakter two baris
lcd_gotoxy(3,0); // kursor baris dan kolom
lcd_putchar(0xf41); // huruf A konversi heksimal posisinya pada kolom ke iii baris 0
lcd_gotoxy(2,1 ); // Kursor baris dan kolom
lcd_putchar(0xB2);// huruf jepang yang hanya ada di dalam retention LCD untuk posisinya di kolom two baris 1
Hasilnya menyerupai gambar dibawah ini:
Catatan : untuk inisialisasinya sama menyerupai acara untuk menampilkan String, bedanya pada apa yang ingin kita tampilkan untuk menampilkan string acara nya menyerupai acara 1 dan untuk menampilkan grapheme menyerupai acara 2.
3) Menampilkan String berjalan/bergerak
lcd_init(16); // Artinya ada xvi karakter maksudnya 8 karakter two baris
while (1)
{
for (i=0;i<8;i++) // Melakukan Looping(perulangan)
{
lcd_clear(); // untuk membersihkan perkolom
lcd_gotoxy(i,0); // kursor kolom dan baris
lcd_putsf("CITRA"); //nilai string yang ditampilkan pada kolom i (1)baris 0
delay_ms(1000); // memberikan jeda waktu one thousand ms
lcd_clear(); // untuk membersihkan perkolom
lcd_gotoxy(i,1); // kursor kolom dan baris
lcd_putsf("FIZA");// nilai string yang ditampilkan pada kolom i(2) baris 1
delay_ms(1000);// untuk memperlihatkan jeda waktu one thousand ms
}
}
}
Hasilnya menyerupai gambar dibawah ini:
Catatan : untuk acara ini inisialisasinya sama dengan acara 1 dan 2. Yang membedakannya untuk acara iii ini perintah-perintahnya di input sesudah piece (1).
V. KESIMPULAN
Modul LCD memiliki 8 karakter dan two baris maksudnya 8 kolom dan two baris untuk nilai baris 0 dan 1. Sebelum membuat program, Modul LCD membutuhkan inisialisasi terlebih dahulu sebelum digunakan yang berfungsi untuk menentukan antar muka(interface) four chip atau 8 bit, jumlah baris display (1 baris atau two baris). Untuk tanda/perintah yang digunakan pada LCD ini menyerupai lcd_init(16);berfungsi sebagai inisialisasi bahwa LCD memiliki 8 karakter dan two baris, lcd_gotoxy(3,0);berfungsi memperlihatkan posisi kursor pada kolom dan baris, lcd_putsf("CITRA"); berfungsi untuk transmisikan/mengirimkan nilai string , lcd_putchar(0xf41); berfungsi untuk transmisikan/mengirimkan nilai suatu character, lcd_clear(); berfungsi untuk membersihkan string/char perkolom, delay_ms(1000); berfungsi sebagai jeda waktu. Untuk tanda/perintah ini sudah ada dalam retention LCD.
Dibandingkan dengan Scanning (7 segment, Dot Matrix dan Keypad) menggunakan LCD ini lebih unproblematic alasannya yaitu ialah tidak membutuhkan banyak acara untuk menampilkan grapheme dan string sehingga lebih praktis dipahami.
Belum ada Komentar untuk "Scanning Dot Matrix Dan Keypad (Praktikum Iii)"
Posting Komentar