Jumat, 14 November 2008

PEMROGRAMAN LCD KARAKTER M1632 dengan CVAVR

Pemrograman LCD Karakter pada CVAVR relatif lebih mudah dibandingkan jika menggunakan software standar C, seperti WinAVR.
1. Inisialisasi LCD
Masuk ke CodeWizard AVR, caranya klik menu File>>New, Pilih Project, Yes, hingga muncul window CodeWizard AVR:

Pada menu tab, pilih LCD, kemudian pilih Port yang ingin dipakai sebagai koneksi ke LCD, misal pilih PORTA. Kemudian pilih menu File>>Generate, Save, and Exit, masukkan nama file, misal Tes.c, Tes.prj, Tes.cwp.
Setelah muncul editor pemrograman, berarti kita siap untuk melakukan pemrograman AVR. Pada editor tersebut muncul kode-kode program inisialisasi awal yang telah kita lakukan pada CodeWizard AVR. Inisialisasi LCD yang telah kita lakukan berada pada:

Baris 27-31 (±):

// Alphanumeric LCD Module functions // Menyatakan LCD yang digunakan //adalah LCD karakter
#asm // Awal syntax assembly
.equ __lcd_port=0x1B // LCD Port didefinisikan pada PORT 0x1B = PORTC
#endasm // Akhir syntax assembly
#include //Memanggil file header lcd.h

Baris 118(±)
lcd_init(16); // Inisialisasi LCD 16 karakter

2. Pemrograman LCD
a. Perintah-perintah CVAVR dalam pemrograman LCD
- Lcd_clear();// Menghapus layar LCD
- lcd_gotoxy(x,y); // perintah untuk menempatkan kursor pada posis (x,y)
- lcd_putsf(“character”); // Menampilkan karakter “character” pada flash
- lcd_putchar(x); // menampilkan karakter, dengan kode ASCII x
- lcd_puts(x); // Menampilkan karakter pada Static RAM
b. Contoh-contoh pemrograman
1. while (1)
{
lcd_gotoxy(0,0); // Menempatkan kursor LCD pada posisi (0,0)
lcd_putsf(“Latihan”); // Menulis kata “Latihan” dimulai dari baris (0,0)
lcd_gotoxy(0,1); // Menempatkan kursor LCD pada posisi(0,1)
lcd_putchar(65); // menulis karakter yang ber-ASCII 65, yaitu huruf “A”
// lebih jelasnya tentang karakter dapat dilihat pada menu insert>>symbol pada software Microsoft Word
}
2. Menampilkan nilai pada static RAM
While (1)
{
char lcd_buffer[8]; // Deklarasi memori buffer
int Angka = 1234; // Deklarasi variabel “Angka”
sprintf(lcd_buffer,"%i",Angka); // Simpan variable “Angka” pada memori // lcd_buffer
lcd_puts(lcd_buffer); // Tampilkan pada LCD

Tidak ada komentar: