1. 1
RUNNING TEXT LCD MENGGUNAKAN
MIKROKONTROLLER ATMEGA8535
TUGAS INDIVIDU
Laporan ini dibuat dan diajukan untuk memenuhi tugas individu pengganti UAS
Diploma IV Politeknik Manufaktur Negeri Bangka Belitung
Disusun Oleh:
CHARDIAN ARGUTA
POLITEKNIK MANUFAKTUR NEGERI
BANGKA BELITUNG
JANUARY 2016
2. 2
RUNNING TEXT LCD
MENGGUNAKAN MIKROKONTROLLER ATMEGA8535
1.1 Pengenalan LCD
LCD (Liquid Crystal Display) adalah suatu jenis media tampil yang
menggunakan kristal cair sebagai penampil utama. LCD sudah digunakan
diberbagai bidang misalnya alal–alat elektronik seperti televisi, kalkulator,
ataupun layar komputer. LCD berfungsi sebagai penampil yang nantinya akan
digunakan untuk menampilkan status kerja alat.
LCD bisa memunculkan gambar atau tulisan dikarenakan terdapat banyak
sekali titik cahaya (piksel) yang terdiri dari satu buah kristal cair sebagai sebuah
titik cahaya. Walau disebut sebagai titik cahaya, namun kristal cair ini tidak
memancarkan cahaya sendiri. Sumber cahaya di dalam sebuah perangkat LCD
adalah lampu neon berwarna putih di bagian belakang susunan kristal cair tadi.
Titik cahaya yang jumlahnya puluhan ribu bahkan jutaan inilah yang
membentuk tampilan citra. Kutub kristal cair yang dilewati arus listrik akan
berubah karena pengaruh polarisasi medan magnetik yang timbul dan oleh
karenanya akan hanya membiarkan beberapa warna diteruskan sedangkan warna
lainnya tersaring.
Gambar 1.1 Tampilan LCD 2 x 16
LCD yang digunakan pada perancangan ini merupakan LCD dengan tipe
character 2 x 16 yang artinya LCD ini mempuyai lebar display 2 baris dan 16
kolom dengan 16 pin konektor.
3. 3
Dibawah ini merupakan konfigurasi Pin LCD:
Gambar 1.2 Diagram Pin LCD
Tabel 1 : Konfigurasi Pin LCD
Berikut ini merupakan blok diagram hardware dan software yang dibuat
untuk menampilkan teks berjalan pada LCD :
Gambar 1.3 Blok diagram hardware running text pada LCD 2 x 16
Mikrokontroller
ATMega8535
Liquid Crystal Display
(LCD)
4. 4
Gambar 1.4 Blok diagram software running text pada LCD 2 x 16
Berdasarkan spesifikasi dari LCD 2 x 16, untuk menampilkan tulisan di
baris dan kolom pertama pada LCD dapat menggunakan fungsi lcd_gotoxy(0,0)
sedangkan untuk menampilkan tulisan berjalannya / running text di baris kedua
dan kolom pertama menggunakan fungsi lcd_gotoxy(0,1).
1.2 Simulasi Running Text pada LCD
Simulasi tampilan running text pada LCD 2 x 16 ini menggunakan software
ISIS Proteus 7.4. Program kontrol yang digunakan dalam simulasi berdasarkan
blok diagram hardware dan software pada gambar 1.2 dan gambar 1.3. Berikut
desain rangkaian simulasi pada proteus dapat dilihat pada gambar 1.5 dibawah ini.
Gambar 1.5 Desain rangkaian simulasi running text pada software ISIS Proteus
7.4
Tampilkan running text pada
LCD
Pembacaan data / variabel
yang akan ditampilkan
Proses Output
PORT A
5. 5
Pada rangkaian simulasi di atas hanya terdapat IC mikrokontroller
ATMega8535 dan output berupa Liquid Cyrstal Display (LCD) yang dihubungkan
ke PORT A. Rangkaian simulasi yang dibuat pada proteus tersebut nantinya akan
sama dengan rangkaian kontrol pada hardware jadi yang dibuat.
Program pengontrolan untuk menampilkan running text ini menggunakan
fungsi strlen() pada file header string LCD yang berfungsi untuk menghitung
jumlah karakter yang berada di variabel yang sudah ditentukan dan proses running
text akan bermulai dari awal kembali setelah karakter yang berada di variabel
tersebut selesai dikerjakan. Berikut ini merupakan flowchart pembuatan program
running text pada LCD.
Gambar 1.6 Flowchart program running text pada LCD
Tidak
Tidak
Ya
Ya
Mulai
Inisialisasi LCD dan data / variabel
Setting data / karakter running text
Membaca dan menampilkan karakter running text
Jumlah karakter text sama
dengan karakter LCD?
Menampilkan running text pada LCD
Jumlah karakter yang
ditampilkan sama dengan jumlah
karakter yang diinput?
Selesai
Geser karakter ke kiri
6. 6
Berikut listing program untuk menampilkan running text pada LCD 2 x 16:
#include <mega8535.h>
#include <stdio.h>
#include <alcd.h>
#include <string.h>
#include <delay.h>
#define habis NULL
unsigned char baris1[16];
char counter=0,a=15,count=0;
char tulisan[]="Polman Negeri Babel";
void main(void)
{
//menghitung jumlah huruf pada variabel tulisan
//strlen()=string length
unsigned int jumlah_kata=strlen(tulisan);
PORTA=0x00;
DDRA=0x00;
PORTB=0x00;
DDRB=0x00;
PORTC=0x00;
DDRC=0x00;
PORTD=0x00;
DDRD=0x00;
// Alphanumeric LCD initialization
// Connections are specified in the
// Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
// RS - PORTA Bit 0
// RD - PORTA Bit 1
// EN - PORTA Bit 2
// D4 - PORTA Bit 4
// D5 - PORTA Bit 5
// D6 - PORTA Bit 6
// D7 - PORTA Bit 7
// Characters/line: 16
lcd_init(16);
start:lcd_clear();
a=15;counter=0;count=0;
while (1)
{
for(a=15;a>=1;a--)
{
lcd_gotoxy(a,1);
for(count=0;count<=16;count++)
{
lcd_putchar(tulisan[count]);
delay_ms(25);
}
7. 7
delay_ms(25);
}
for(a=0;a<=jumlah_kata;a++)
{
lcd_gotoxy(0,1);
for(counter=0;counter<=15;counter++)
{
if(tulisan[a+counter]==habis)
{
delay_ms(25);
goto start;
}
if(tulisan[a+counter]!=habis)
{
lcd_putchar(tulisan[a+counter]);
delay_ms(25);
}
}
delay_ms(25);
}
}
}
Program diatas memanfaatkan fungsi perulangan untuk menggeser karakter
satu persatu, serta untuk menggeser posisi kursor penulisan karakter pada LCD.
Dengan memanipulasi posisi kursor dari kana ke kiri, yakni mulai dari koordinat
15 ke 0 maka tampilan akan muncul dari bagian kanan LCD ke bagian kiri. Ketika
perulangan dari 15 ke 0 tercapai dilanjutkan dengan perulangan penggeseran
karakter dengan menggunakan fungsi strlen().
Fungsi strlen terdapat pada library string.h yang memang dikhususkan
untuk memanipulasi string atau karakter. Fungsi strlen digunakan untuk
menghitung panjang karakter dari karakter yang dimasukkan. Dengan
menggunakan fungsi strlen, karakter yang digeser dari kanan ke kiri akan bergeser
sebanyak hasil pembacaan dari fungsi strlen() atau sebanyak karakter yang
diinput.
Berikut ini merupakan beberapa sampel data hasil pergerakan tampilan
running text pada LCD :
8. 8
Gambar 1.7 Simulasi tampilan running text pergeseran karakter dari kiri ke
kanan
Gambar 1.8 Simulasi tampilan running text pergeseran karakter dari kiri ke
kanan
9. 9
1.3 Uji Coba Running Text pada LCD
Hasil uji coba didasarkan pada hasil simulasi menggunakan ISIS Proteus
7.4. Berikut ini merupakan beberapa gambar hasil uji coba running text
menggunakan LCD.
Gambar 1.9 Tampilan running text pergeseran karakter dari kiri ke kanan
Pada hasil uji coba untuk menampilkan running text pada LCD, karakter /
tulisan bergerak dari kiri ke kanan dengan nilai tunda waktu/delay yang diberikan.
Tampilan tulisan pada LCD akan menyelesaikan proses akhir dari karakter /
tulisan tersebut dan mengulang dari awal kembali.
1.4 Kesimpulan
Berdasarkan hasil pengujian dan analisa tampilan running text pada LCD
ini, maka dapat ditarik kesimpulan sebagai berikut:
1. Karakteristik Modul LCD diantaranya adalah terdapat 16 X 2 karakter huruf
yang bisa ditampilkan dan Setiap huruf terdiri dari 5 X 7 dot-matrix cursor,
2. Untuk menyimpan data tulisan berjalan yang akan ditampilkan pada LCD,
dapat menggunakan File Header String dengan fungsi strlen untuk membaca
dan menghitung seluruh karakter yang akan ditampilkan,
3. Untuk melakukan proses pergeseran tulisan / karakter pada LCD
menggunakan fungsi for (pengulangan) sesuai dengan kolom yang terdapat
pada spesifikasi LCD yang digunakan.