1 Praktek 6 Display Data Pada LCD Tujuan: Mahasiswa mengerti cara membuat program C pada mikrokontroller AVR untuk melakukan pemrograman pada modul LCD Peralatan yang digunakan: modul AVR Modul LCD Deskripsi/ Dasar Teori: Gambar 1. Rangkaian Modul AT Mega 128
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
1
Praktek 6
Display Data Pada LCD
Tujuan:
Mahasiswa mengerti cara membuat program C pada mikrokontroller AVR untuk
melakukan pemrograman pada modul LCD
Peralatan yang digunakan:
modul AVR
Modul LCD
Deskripsi/ Dasar Teori:
Gambar 1. Rangkaian Modul AT Mega 128
2
Gambar 2. LCD Karakter 20x2
3
Gambar 3. Daftar Kode Karakter yang bisa ditampilkan di LCD karakter
4
PERCOBAAN 1 #include <mega128.h>
#include "lcd.h"
void main(void)
{
PORTA=0xff; // semua bit jadi output
DDRA=0xff;
lcd_init();
lcd_putchar('s');
lcd_putchar('t');
while(1)
{}
}
Hasilnya:
PERCOBAAN 2 #include <mega128.h>
#include "lcd.h"
void main(void)
{
PORTA=0xff; // semua bit jadi output
DDRA=0xff;
lcd_init();
lcd_putchar('s');
lcd_gotoxy(5,0); //untuk meletakkan karakter yang ada di baris
// berikutnya
lcd_putchar('t');
lcd_gotoxy(3,1);
lcd_putchar('t');
while(1)
{}
}
5
Hasilnya:
PERCOBAAN 3
#include <mega128.h>
#include "lcd.h"
void main(void)
{
PORTA=0xff; // semua bit jadi output
DDRA=0xff;
lcd_init();
lcd_putchar('s');
lcd_putchar(0x30);
lcd_putchar(' ');
lcd_putchar(0xc0);
lcd_putchar(65);
while(1)
{}
}
Hasilnya:
6
PERCOBAAN 4 #include <mega128.h>
#include <delay.h>
#include "lcd.h"
void main(void)
{
PORTA=0xff; // semua bit jadi output
DDRA=0xff;
lcd_init();
lcd_putsf("hallo");
delay_ms(1000);
lcd_clear();
lcd_putsf("apa kabar..");
while(1)
{}
}
PERCOBAAN 5 Animasi garis yang berputar.
#include <mega128.h>
#include <delay.h>
#include "lcd.h"
void main(void)
{
PORTA=0xff; // semua bit jadi output
DDRA=0xff;
lcd_init();
lcd_putsf ("Loading.. ");
while (1)
{
lcd_gotoxy(10,0);
lcd_putchar('-');
delay_ms(100);
lcd_gotoxy(10,0);
lcd_putchar('|');
delay_ms(100);
lcd_gotoxy(10,0);
lcd_putchar('/');
delay_ms(100);
};
}
7
Hasilnya:
D7
14D
613
D5
12D
411
D3
10D
29
D1
8D
07
E6
RW
5R
S4
VS
S1
VD
D2
VE
E3
LCD1LM032L
PERCOBAAN 6 Bandingkan dengan percobaan 5 diatas:
#include <mega128.h>
#include <delay.h>
#include "lcd.h"
void main(void)
{
PORTA=0xff; // semua bit jadi output
DDRA=0xff;
lcd_init();
lcd_putsf ("Loading.. ");
lcd_cursoroff();
while (1)
{
lcd_gotoxy(10,0);
lcd_putchar('-');
delay_ms(100);
lcd_gotoxy(10,0);
lcd_putchar('|');
delay_ms(100);
lcd_gotoxy(10,0);
lcd_putchar('/');
delay_ms(100);
};
}
Hasilnya:
8
PERCOBAAN 7 #include <mega128.h>
#include <delay.h>
#include "lcd.h"
void main(void)
{
int a;
PORTA=0xff; // semua bit jadi output
DDRA=0xff;
lcd_init();
lcd_cursoroff();
while (1)
{
lcd_putsf ("Loading.. ");
lcd_gotoxy(0,1);
for (a=1;a<=20;a++)
{
lcd_putchar(0xff);
delay_ms(300);
}
lcd_gotoxy(0,0);
lcd_putsf ("Process Complete. ");
delay_ms(2000);
lcd_clear();
};
}
Hasilnya:
9
PERCOBAAN 8
Menampilkan angka desimal dari 0 sampai 199 dan berulang.