i
TUGAS AKHIR
PENAMPIL TULISAN BERJALAN MENGGUNAKAN
DOT MATRIK DENGAN KEYBOARD SEBAGAI
INPUT DATA
Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Elektro
Oleh :
TOMI IRSAWAN
NIM : 065114035
PROGRAM STUDI TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
ii
FINAL PROJECT
RUNNING TEXT VIEWER USING DOT MATRIX
WITH PC KEYBOARD AS DATA INPUT MEDIA
Presented as Partial Fulfillment of the Requitments To Obtain the Sarjana Teknik Degree In Electrical Engineering Study Program
TOMI IRSAWAN
NIM : 065114035
ELECTRICAL ENGINEERING STUDY PROGRAM
SCIENCE AND TECHNOLOGY FACULTY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
vi
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP
MOTTO :
Orang yang sukses adalah orang yang berfikir dan berbicara
POSITIF.
Lakukan sekarang atau tidak sama sekali
Kupersembahkan Karya ini :
Untuk Sahabatku Tuhan Yesus Kristus
viii INTISARI
Saat ini keyboard PC PS/2 sudah biasa digunakan untuk meng-input-kan informasi atau karakter yang diinginkan. Namun penggunaan keryboard PC masih sering tergantung dengan PC (Personal Computer) dan monitor komputer, sehingga masih sering kesulitan dalam menampilkan informasi atau karakter yang diinginkan.
Penampil tulisan berjalan menggunakan dot matrik dengan keyboard sebagai input
data adalah suatu alat yang dirancang untuk menyalakan LED pada dot matrik menggunakan sistem scanning kolom dan pengambilan data menggunakan sistem
scanning code keyboard. Untuk menampilkan karakter yang di-input-kan dari keyboard
PC, maka diperlukan mikrokontroler untuk menghubungkan keyboard dan display dot matrix. Sebagai driverkolom digunakan IC (Integrated Circuit) shift register 74HC595.
Alat yang dibuat sudah berhasil menampilkan karakter yang sesuai dengan penekan pada keyboard.
ix ABSTRACT
Current PC keyboard PS / 2 is commonly used for inputting the information or the desired character. However, used of a PC keyboard is still often depends with PC (Personal Computer) and computer monitor, so there are often difficulties in displaying the desired information or character.
Displaying to walk using a dot matrix text with the keyboard as the input data is a tool designed to power the LEDs in dot matrix using column scanning and a data retrieval system using the keyboard scanning code. To display the characters what entered from the keyboard PC, it needed a microcontroller to connect a keyboard and dot matrix display. IC ( Integrated Circuit ) shift register 74HC595 is used as column driver.
The tool was successfully created that displays the character corresponding to the pressure on the keyboard.
x
KATA PENGANTAR
Puji syukur penulis panjatkan kepada Tuhan Yesus Kristus atas segala kasih
karunia, anugerah, dan berkat-Nya, sehingga penulis dapat menyelesaikan penulisan tugas
akhir ini dengan baik.
Penulis menyadari bahwa dalam penulisan tugas akhir ini, penulis mendapatkan
banyak bantuan dan dorongan dari berbagai pihak. Oleh karena itu, pada kesempatan ini
dengan segala kerendahan hati dan penuh hormat, penulis ingin mengucapkan terima kasih
yang sebesar-besarnya kepada:
1. Ibu Paulina Heruningsih Prima Rosa, S.Si., M.Sc. selaku Dekan Fakultas
Teknik Universitas Sanata Dharma Yogyakarta.
2. Ibu Bernadeta Wuri Harini, S.T.,M.T. selaku Ketua Jurusan Teknik Elektro
Universitas Sanata Dharma Yogyakarta.
3. Ibu Ir. Th. Prima Ari Setiyani, M.T. selaku dosen pembimbing akademik
angkatan 2006 yang telah memberikan semangat untuk selalu rajin kuliah dan
menyelesaikan tugas akhir.
4. Bapak Martanto, S.T, M.T selaku pembimbing atas segala pemikiran, waktu
dan tenaganya dalam membimbing dan mengarahkan penulis dari awal hingga
akhir.
5. Seluruh dosen di Fakultas Teknik Elektro yang tidak dapat di sebutkan satu
persatu, yang telah mendidik dan membimbing penulis dalam memperdalam
dunia Teknik Elektronika.
6. Seluruh Staf & Laboran Teknik Elektro Universitas Sanata Dharma: Mas
Mardi, Mas Suryono, Mas Hardi, Mas Broto yang sudah memberikan bantuan
selama proses pembuatan karya tugas akhir ini.
7. Kedua orang tua penulis yang telah memberikan doa, dorongan moril maupun
material, kasih dan kesabaran yang tak pernah putus sehingga penulis dapat
menyelesaikan tugas akhir ini.
8. Ayuk Ivon, adikku Yesi dan sherlly, Emmanuel yang telah memberi doa dan
pengharapan dalam menyelesaikan tugas akhir ini. Terima kasih atas
xi
9. Teman-teman Kost Damai : Charles, Totok, Teo, Yoga, Hari, Nyawa, Flori,
Tombol, terima kasih atas canda, tawa dan segalanya Teman. Tetap jaga
keamanan kos.
10. Teman-teman yang sudah membantu : mas Siswoyo, Adi (TE07), Teo (TE06),
Luwi (TE06). Jangan menyerah !!
11. Keluarga besar EL-Asah, : Om Sam, Te Siany, mas Yongky, pemuda/i dan
jemaat yang sudah mendukung dalam doa.
12. Mas Agung dan Mbak Santi yang sudah menerima penulis dan berhubungan
baik dengan penulis selama di kos Damai.
13. Teman-teman mahasiswa jurusan Teknik Elekro dan semua pihak yang tidak
dapat disebutkan satu persatu atas setiap bantuannya.
Penulis menyadari bahwa masih banyak kelemahan dan kekurangan dari
penulisan tugas akhir ini. Oleh karena itu segala kritik dan saran yang bersifat
membangun sangat penulis harapkan.
Akhir kata penulis berharap agar skripsi ini dapat bermanfaat bagi penulis
maupun pembaca semuanya.
Yogyakarta, 11 Juni 2012
xii
xiii
BAB II PERANCANGAN ... 18
3.1 Perancangan Sistem ………. 18
3.2 Perancangan Perangkat Keras ………. 19
3.2.1 Rangkaian Keyboard PC PS/2 ………. 19
3.2.2 Rangkaian Mikrokontroler ……….. 19
3.2.2.1 Rangkaian Osilator ……….. 20
3.2.2.2 Rangkaian Reset ……….. 20
3.2.3 Rangkaian pengendali / Driver ……….. 21
3.2.3.1 Rangkaian Pengendali Baris ……… 21
3.2.3.2 Rangkaian Pengendali Kolom ………. 22
3.3 Perancangan Perangkat Lunak ………. 23
3.3.1 Perangkat lunak pengambilan Data Keyboard PC PS/2 ………… 24
3.3.2 Perangkat Lunak Dot Matrik Display... 26
BAB IV HASIL DAN PEMBAHASAN ……… 29
4.1 Pengujian masukan data melalui Keyboard PS/2 dengan tampilan LCD .. 29
4.2 PengujianDisplay Dot Matrik ……….. 31
4.3 Pengujian Driver ……….. 35
4.4 Pengujian Sistem Secara Keseluruhan ………. 36
BAB V KESIMPULAN DAN SARAN ………. 38
5.1 Kesimpulan ……….. 38
5.2 Saran ……… 38
DAFTAR PUSTAKA ………. 39
xiv
DAFTAR GAMBAR
Gambar 1.1 Diagram Blok tulisan berjalan ………. 3
Gambar 2.1 Pin ATmega8535 ……….. 5
Gambar 3.12 Diagram Alir Tampilkan Karakter ke Dot Matrik ……….. 27
xv
Gambar 4.8 Pengaruh penekanan tombol shift yang diikuti tombol “t” ... 33
Gambar 4.9 Error yang terjadi setelah penekanan tombol shift untuk karakter “t” … 33
Gambar 4.10 Erroryang terjadi setelah penekanan tombol shift untuk karakter “1” . 33
Gambar 4.11 Erroryang terjadi setelah penekanan tombol shift untuk tombol fungsi shift
dan backspace……….. 34
Gambar 4.12 Pengetikan kata “test” ……… 34
Gambar 4.13 Pengaruh penekan tombol backspace satu kali untuk kata “test” menjadi kata
“tes” ………. 35
Gambar 4.14 Susunan IC shift register……… 35
Gambar 4.15 Karakter yang tampil saat data “0 , 65 , 127 , 65 , 0” dikirim ke shift register
……… 35
Gambar 4.16 Pengetikan karakter selamat ……….. 36
Gambar 4.17 Tampilan yang mucul saat karakter mendekati karakter terakhir …….. 37
xvi
DAFTAR TABEL
1
BAB I
PENDAHULUAN
1.1Latar Belakang
Kebutuhan akan informasi yang cepat memang semakin dibutuhkan disetiap kalangan.
Agar info yang di berikan cepat dibaca dan mudah dilihat oleh pembaca, maka media
penyampaian harus diletakan ditempat yang pas dan gampang untuk dilihat. Tidak hanya
menyajikan tulisan yang biasa tapi mampu membuat pembaca tertarik pada tampilannya.
Jika dulu media penyampaian hanya terbatas pada selembaran atau penulisan di papan
pengumuman, namun sekarang ini telah masuk ke media elektronik. Salah satunya adalah
media yang saat ini banyak digunakan adalah tulisan berjalan (running text).
Tulisan berjalan adalah suatu peraga/display dinamis yang dapat menampilkan teks
atau animasi yang bertujuan untuk menarik perhatian karena sifatnya yang atraktif [1].
Terbuat dari titik/pixel lampu LED yang disusun membentuk matrik baris dengan baris dan
kolom yang bervariasi sesuai dengan tipenya [2].
Penerapan running textbermanfaat dalam dunia informasi karena dapat menampilkan
tulisan berupa huruf berjalan pada displaydot matrik. Displaydot matrik dapat digunakan
untuk membuat tampilan karakter sesuai keinginan. Sangat beda dengan spanduk yang
sifatnya hanya non-permanen (karena cepat rusak). Tulisan berjalan ini bisa diubah
tampilannya. Alat ini dapat diletakan di dalam maupun di luar ruangan.
Dengan melihat keunggulan media ini dibandingkan dengan media-media yang lain
seperti spanduk ataupun selembaran maka penulis tertarik untuk melakukan penelitian dan
pembuatan alat tersebut, yaitu alat yang mampu menampilkan tulisan berjalan pada
display dot matrik dengan masukkan data dari keyboard.
Piranti yang digunakan pada alat ini adalah mikrokontroler ATMega8535 sebagai
prosesornya (pengontrol masukan dan keluaran dari alat tersebut). Dot matrik 5x7
sebanyak 7 blok yang dapat menampilkan karakter berupa huruf maupun angka dan
karakter yang lain sesuai dengan program yang dibuat. Display dot matrik disusun secara
sejajar supaya karakter mudah diapahami. Karakter yang akan ditampilkan pada penampil
diinputkan melalui keyboard PC PS/2 . Penggunaan keyboard disini yaitu mempermudah
useruntuk mengganti karakter tanpa harus terhubung pada komputer. Sehingga pengguna
1.2 Tujuan dan Manfaat
Tujuan penelitian ini adalah untuk membuat penampil tulisan berjalan menggunakan
dot matrik yang bisa digunakan sebagai media informasi yang praktis .
Manfaat penelitan adalah mempermudah penyampaian suatu informasi melalui
penampil dot matrik.
1.3 Batasan Masalah
Batasan masalah dari penelitian ini adalah :
1. Tampilan menggunakan dot matrik 5x7 sebanyak 7 blok
2. Masukkan data menggunakn keyboard PC PS/2
3. Menggunakan mikrokontroler ATmega32
4. Menggunakan IC shift register supaya LED mampu bergeser sesuai dengan
program.
5. Menggunakan bahasa pemograman C.
6. Karakter yang ditampilkan huruf besar dan kecil, tanda baca, dan angka.
7. Karakter yang ditampilkan bergeser ke arah kiri.
1.4 Metodologi Penelitian
Untuk dapat merealisasikan alat ini maka ada beberapa hal yang dilakukan yaitu :
1. Mencari data lengkap tentang alat yang akan dibuat, mengenai ATmega 8535,
baris dan kolom, perancangan PCB menggunakan software ORCAD.
4. Perancangan dan pembuatan program menggunakan bahasa C.
5. Pengambilan data yaitu dilakukan dengan menekan tombol pada keyboard dan
melihat karakter pada dot matrik, pergeseran karakter pada dot matrik, dan
pengujian pengoperasian alat.
6. Analisa dan kesimpulan terhadap alat yang dibuat. Analisa dilakukan dengan
sesuai dengan tombol yang ditekan pada keyboard dan arah pergesaran karakter
kearah kiri. Kesimpulan dilihat dari kinerja driver kolom (IC 74HC595) dan
driver baris dalam menggeser setiap nyala LED yang ada pada dot matrik
sehingga LED menyala secara bergantian dan membentuk karakter yang
berbeda-beda.
Gambar 1.1 Diagram Blok tulisan berjalan
ATmega 8535 Keyboard
PC PS/2
Driver baris
Dot matrik (5x7)X7
4
BAB II
DASAR TEORI
2.1
Mikrokontroler AVR ATmega8535 [3]
Mikrokontroler adalah IC yang dapat diprogram berulang kali, baik ditulis ataupun
dihapus. Seiring perkembangan elektronika, mikrokontroler dibuat semakin kompak
dengan bahasa pemograman yang juga ikut berubah. Salah satunya adalah mikrokontroler
AVR (Alf and Vegard’s Risc processosr) untuk aplikasi standar yang memiliki fitur yang
memuaskan ialah ATmega32 adalah ATmega8535 yang menggunakan teknologi RISC
(Reduce Instruction Set Computing) dimana program berjalan lebih cepat karena hanya
membutuhkan satu siklus clock untuk mengeksekusi satu intruksi program. Mikrontroler
AVR ATmega8535 memiliki fitur yang cukup lengkap. Mikrokontroler AVR
ATmega8535 telah dilengkapi dengan ADC internal, EEPROM internal, Timer/Counter,
PWM, analog comparator, dll.
2.1.1 Arsitektur ATmega8535 [4]
Mikrokontroler ATmega8535 memiliki arsitektur sebagai berikut :
a. Saluran I/O sebanyak 32 buah, yaitu Port A, Port B, Port C, dan Port D.
b. ADC 10 bit sebanyak 8 saluran
c. Tiga buah Timer/Counter dengan kemampuan pembanding.
d. CPU yang terdiri dari atas 32 buah register.
e. Watchdog Timer denga osilator internal.
f. SRAM sebesar 512 byte.
g. Memori Flash sebesar 8kb dengan kemapuan dengan kemapauan Read
While Write.
h. Unit interupsi internal dan eksternal
i. Port antarmuka SPI (Serial Pheriperal Interface).
j. EEPROM sebesar 512 byte yang dapat deprogram saat operasi.
k. Antarmuka komparator analog.
l. Port USART (Universal shynchronous Ashynchronous Receiver
2.1.2 Fitur ATmega8535
Kapabilitas detail dari ATmega8535 adalah sebagai berikut :
a. sistem mikoprosesor 8 bit berbasis RISC (Redeced Intruction Set Computer)
dengan kecepatan 16 Mhz.
b. kapabilatas memori flash 8 KB, SRAM sebesar 512 byte, dan EEPROM
(Electrically Erasable Programmable Read Only Memory) sebesar 512
byte.
c. ADC internal serial (USART) dengan kecepatan maksimal 2,5 Mbps.
d. Enam pilihan mode sleep menghemat penggunaan daya listrik.
2.1.3 Konfigurasi Pin ATmega8535
Gambar 2.1 Pin ATmega8535
Konfigurasi pin ATmega8535 pada gambar 2.1 dapat dijelaskan secara
fungsional sebagai berikut :
a. VCC merupakan pin yang berfungsi sebagai pin masukkan catu daya.
b. GND merupkan pin ground.
c. Port A (PA0..PA&) merupakan pin I/O dua arah dan pin masukan ADC.
d. Port B (PB0..PB7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu
Timer/Counter, komparator analog, dan SPI.
e. Port C (PC0..PC7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu
f. Prot D (PD0..PD7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu
komparator analog, interupsi eksternal, dan komunikasi serial.
g. RESET merupakan pin yang digunakan untuk me-reset mikrokontroler.
h. XTAL1 dan XTAL2 dan merupakan pin masukan tegangan untuk ADC.
i. AVCC merupakan pin masukan tegangan untuk ADC.
j. AREF merupakan pin masukan tegangan refrensi ADC.
2.1.4 Peta Memori
Gambar 2.2 Peta memori ATmega8535
AVR ATMega8535 memiliki ruang pengalamatan memori data dan memori
program yang terpisah Memori data terbagi menjadi 3 buah bagian, yaitu 32 buah register
umum, 64 buah register I/O, dan 512 byte SRAM Internal. Register keperluan umum
menempuh space data pada alamat terbawah, yaitu $00 sampai $1F. Sementara itu, register
khusus untuk menangani I/O dan kontrol terhadap mikrokontroler menempati 64 alamat
berikutnya, yaitu mulai dari $20 hingga $5F. Register tersebut merupakan register yang
khusus digunakan untuk mengatur fungsi terhadap berbagai peripheral mikrokontroler,
seperti kontrol register, timer/counter, fungsi-fungsi I/O, dan sebagainya. Alamat memori
Memori SRAM adalah memori yang digunakan untuk menyimpan data sementara (memori
kerja). Semua memori “biasa” akan ditempatkan dalam SRAM [5].
Memori program yang terletak dalam flash PEROM tersusun dalam word atau 2 byte
karena setiap instruksi memiliki lebar 16-bit atau 32 bit. AVR ATMega8535 memiliki
4Kbyte x 16-bit Flash PEROM dengan alamat mulai dari $000 sampai $FFF. AVR
tersebut memiliki 12-bit Program Counter (PC) sehingga mampu mengalamati isi Flash.
Memori Flash adalah salah satu jenis ROM yang cara penulisan dan penghapusannya
secara elektrik. Memori ini diguunakan untuk menempatakan kode-kode program yang
akan dieksekusi oleh cpu. Namun memori ini juga dapat digunakan untuk menyimpan
angka-angka / data konstan atau table, string yang ketika chip running tidak pernah diubah
[5]. Selain itu, AVR ATMega8535 juga memiliki memori data berupa EEPROM 8-bit
sebanyak 512 byte. Alamat EEPROM dimulai dari $000 sampai $1FF. Memori EEPROM
dapat digunakan untuk menyimpan data pada saat chip running dan tidak dapat terhapus
meskipun catu daya mati (non volatile) [5].
2.1.5 Status Register (SREG)
Status Register adalah register berisi status yang dihasilkan pada setiap operasi
yang dilakukan ketika suatu instruksi dieksekusi.
a. Bit 7-I: Global Interrupt Enable
Bit harus diset untuk mengaktifkan interupsi. Setelah itu, anda dapat mengaktifkan
interupsi mana yang akan anda gunakan dengan cara meng-enable bit kontrol
register yang bersangkutan secara individu. Bit akan di-clear apabila terjadi suatu
interupsi yang dipicu oleh Hardware, dan bit tidak akan mengizinkan terjadinya
interupsi, serta akan diset kembali oleh instruksi RETI.
b. Bit 6-T: Bit Copy Storage
Instruksi BLD dan BST menggunakan bit-T sebagai sumber atau tujuan dalam
operasi bit. Suatu bit dalam sebuah register GPR dapat disalin ke bit T
menggunakan instruksi BST, dan sebaliknya bit-T dapat disalin kembali ke suatu
bit dalam register GPR menggunakan instruksi BLD.
c. Bit 5-H: Half Carry Flag
Bit-S merupakan hasil operasi EOR antara flag-N (Negatif) dan flag V
(Komplemen dua overflow).
e. Bit 3-V: Two’s Complement Overflow Flag
Bit ini berguna untuk mendukung operasi aritmatika.
f. Bit 2-N: Negative Flag
Apabila operasi menghasilkan bilangan negatif, maka flag-N akan diset.
g. Bit I-Z: Zero Flag
Bit akan diset bila hasil operasi yang diperoleh adalah nol.
h. Bit 0-C: Carry Flag.
Apabila suatu operasi menghasilkan carry, maka bit akan diset.
2.1.6
Timer / counter
[5]
Timer / counter0 adalah sebuah timer / counter yang dapat mencacah sumber pulsa
/ clock baik dari chip (timer) ataupun dari luar chip (counter) dengan kapasitas 8-bit atau
Timer / counter1 adalah sebuah timer / counter yang mempunyai kapasitas cacahan
16-bit (65535) baik pulsa / clock internal maupun eksternal yang dilengkapi prescaler
sumber pulsa / clock hingga 10-bit (1024).
Dapat digunakan :
a. Timer / Counter biasa
b. Clear Timer on Compare Match (Auto Reload )
c. Counter pulsa eksternal
d. Capture Unit (unit penangkap isi TCNT1akibat trigger pin ICP1/PB0)
e. Generator frekuensi biasa
2.2 Dot Matrik
Display dot matrix pada dasarnya adalah susunan beberapa LED, memiliki dua
buah kaki, yaitu Anoda dan Katoda yang befungsi untuk mengaktifkan LED. Anoda
diberi VCC dan katoda dihubungkan ke Ground. Disusun membentuk matrix baris dengan
baris dan kolom yang bervariasi sesuai dengan tipenya. Teknik menggunakan display dot
matrix ini dapat dikendalikan dengan teknik multiplexing. Dimana ada control terpisah
antara kendali jalur kolom dan baris dari display dot matrix tersebut . display dot matrix
bisa menampilkan tidak hanya angka, tetapi juga huruf angka atau bahkan gambar (grafik).
Susunan nomor pin bisa bervariasi sesuai dengan ukuran display dan pabrik pembuat [2].
Gambar 2.3 Dot matrik
Dot matrik 5 x7 memilki arti bahwa 1 dot matrik berukuran 5 kolom x 7 baris
susunan LED. Jadi 1 dot matrik terdapat 35 buah LED. Prinsip kerja dot matrik sebenarnya
menggunakan system Scanning kolom [6]. Scanning kolom adalah pada satu waktu dari
sekian banyak kolom hanya satu kolom yang menyala. Karena proses pengulangan
penyalaan kolom dari antara kolom begitu cepat dan berulang-ulang maka karakter tampak
nyala bersamaan. Proses scanning kolom yang cepat menipu mata atau penglihatan
manusia sehingga mata menangkap karakter seolah-olah menyala secara bersamaan.
Apabila proses scanning kolom dipelankan sampai mata dapat melihat, maka pergeseran
penyalaan kolom akan terlihat satu persatu. Tentu saja mikrokontroler harus terus-menerus
mengirimkan data kolom atau baris ke display agar display tetap menampilkan data dengan
benar [2]. Untuk mengoptimalkan nyala LED pada dot matrik maka arus harus berkisar
antara 15 sampai 20 mA. Sedangkan tegangan berkisar antara 1,5 sampai 2,5 V.
Kemudian untuk mempermudah kontrol dan menghemat pin maka diperlukan
proses scanning, biasanya pada kolom sedangkan pada baris diberikan bit sesuai
menghidupkan LED ke (x,x) dibutuhkan kombinasi tegangan antara pin baris dan kolom.
Scanning kolom yang dimaksud adalah dengan cara memberikan ’1’ atau high (untuk
common katoda) atau ’0’ untuk common anoda, begitu selanjutnya sampai kolom yang
terakhir dari rangkaian dot matrik dan berulang dari depan lagi. Proses ini dilakukan sangat
cepat sehingga mata melihatnya tetap sebagai suatu karakter yang diam.
Sebagai contoh akan menampilkan huruf A, secara umum digambarkan sebaggai
berikut :
Gambar 2.4 Contoh karakter “A” pada dot matrik
Maka logikanya adalah sebagai berikut, saat kolom pertama (scan kolom) sama dengan
‘1’(high) maka bit yang diberikan pada baris berupa ‘1110000’, sehingga jika sama-sama
diberi logika ‘1’(high) tidak ada arus yang mengalir, maka LED akan mati, sedangkan
pada saat logika ‘1’(high) bertemu dengan logika ‘0’(low) maka arus mengalir dan LED
akan menyala. Begitu juga untuk kolom kedua, pada saat diberi tegangan maka pada baris
bit yang diberikan adalah ‘1101011’. Dan seterusnya, ketika kolom telah mencapai pada
kolom terkahir maka akan diulang kembali pada kolom pertama.
2.3
Keyboard
PC PS/2
Keyboard merupakan sebuah papan yang terdiri dari tombol-tombol untuk
mengetikan kalimat dan simbol-simbol khusus lainnya pada komputer. Jumlah seluruh
tombol pada keyboard ada 101 tombol. Antarmuka keyboard standard adalah hubungan
komunikasi serial, yang menandakan bahwa data dikirim satu bit pada suatu waktu tertentu
pada satu jalur tunggal. Serial komunikasi dipilih untuk antara muka keyboardkarena hal
ini simple dan mudah diterapkan, dan tidak banyak data per detik yang harus dikirimkan
pada antar muka keyboard. Ada empat jalur yang menghubungkan keyboard dan PC. Dua
rangkaian keyboard [10]. Dua
-bit data dan perintah yang akan dikirimkan ke sistem
kan sinyal clock regular, dengan suatu nilai yang berosilasi
“0” dengan pola yang teratur. Tujuan dari sinyal clock
mensinkronisasi keyboard dan sistem, sehingga selalu bekerja
menunjukkan kode scan yang menandai tombol individu.
bagian bawah dari tombol. Contoh kode scan untuk tombol
scan ditunjukkan dalam Hexa.
Gambar 2.5 Frame pengiriman data dan clock
Kode scan ditandai dengan kode yang random. Pada beberapa kasus, cara yang paling
mudah untuk menerjemahkan kode scan ke ASCII adalah dengan menggunakan metode
look up table. Transmisi data, dari keyboard ke sistem, dilakukan dengan frame 11 bit. Bit
pertama adalah bit start ( logika 0 ), diikuti dengan 8 bit data ( LSB first ), satu bit paristas
( paritas ganjil ) dan bit stop ( logika 1 ). Setiap bit harus dibaca pada sisi turun dari clock.
frame pengiriman data dan cloknya, ditunjukan pada gambar 2.5.
Gambar 2.7 konektor keyboard ps/2
Cara kerja keyboard PC PS/2 [11]:
Adalah dengan cara setiap kali salah satu tombol keyboard PC ditekan atau dilepas,
keyboard akan mengirim kode ke host (host adalah mikrokontroler kalau keyboard
dihubungkan ke peralatan berbasis mikrokontroler). Kode tersebut dinamakan sebagai scan
code.Frekuensi sinyal clock biasanya berkisar dari 20 sampai 30 KHz.
Misalkan Scan code tombol adalah ’S’ (angka decimal setara dengan angka biner
00011011). Ketika tombol ‘S’ dtekan, keyboard akan mengirim 1B berikutnya terus
menerus, sampai ada tombol lain yang ditekan atau tombol ‘S’ tadi dilepas. Keyboard PC
juga mengirim kode saat ada satu tombol yang dilepas. Kodenya adalah berupa F0 (angka
heksadesimal setara dengan angka biner 11110000). Jadi kalau tombol ‘S’ tadi dilepas,
keyboardakan mengirim F0 dan 1B.
Kode-kode tersebut dikirim keyboard secara seri, artinya dikirim satu bit demi satu
bit. Misalnya 1B dikirim dengan cara : mula-mula dikirim ‘1’, sesat kemudian ‘1’ lagi dan
menyusul ‘0’ sampai akhirnya terkirim sebanya 8 bit yang berbentuk 00011011 (dikirim
Kode-kode tersebut dikirim keyboard secara seri, artinya dikirim satu bit demi satu bit.
Misalnya 1B dikirim dengan cara : mula-mula dikirim ‘1’, sesat kemudian ‘1’ lagi dan
menyusul ‘0’ sampai akhirnya terkirim sebanya 8 bit yang berbentuk 00011011 (dikirim
mulai dari yang paling kanan kemudian bergeser satu persatu sampai yang paling kiri).
Masing-masing tombol punya scan code sendiri, termasuk tombol ‘shift’, tombol
‘ctrl’ dan lain-lain, jadi kia tombol, jadi jika tombol ctrl ditekan bersamaan dengan ‘S’,
maka scan codeyang dikirim adalah 14 (scan code untuk ’ctrl’) dan 1B (scan code untuk
‘S’). terserah host untuk mengintepretasikan scan code itu sebagai apa, berasrti merupakan
tugas program dalama mikrokontroler untuk mengenal scan code.
Komunikasi antar keyboard dan host adalah komunikasi dua arah, keyboard
mengirim scan code ke host, host bisa mengirim perintah untuk mengatur kerja dari
keybord. Kode perintah untuk keyboard tidak sebanyak scan code, berikut ini daftar kode
perintah untuk keyboard dalam hexadecimal) :
ED : perintah untuk me-nyala/padam-kan lampu indicator di keyboard, setelah menerima
perintah ED dari host, keyboardakan menjawab dengan FA sebagai tanda perintah itu telah
dikenali (ACK-acknowledge) dan menunggu 1 byte perintah lagi dari host untuk
menentukan lampu indikator mana yang perlu di-nyala/padam-kan. 1 byteperintah susulan
tersebut akan diartikan sebagai berikut:bit 0 dipakai untuk mengatur lampu indikator Scroll
Lock, bit 1 untuk Num Lock dan bit 2 untuk Caps Lock, bit-bit lainnya diabaikan.
menjawab dengan FA sebagai tanda perintah itu telah dikenali (ACK – acknowledge) dan
host menjawab 1 byte yang dikirmkan nilainya 0, keyboard akan menjawab dengan nomr
set scan code yang saat itu dipakai.
F3 : dipakai utnuk mengatur kecepatan tanggapan keyboard (Typematic Repeat Rate).
Setelah menerima perintah F3 dari host, keyboard akan menjawabdengan FA sebagai tanda
perintah itu telah dikenali (ACK –acknowledge) dan host menjawab 1 byte nilai kecepatan
F4 : dipakai untuk mengaktifkan kembali keyboard, stelah menerima perintah ini,
keyboard akan menjawab dengan FA (ACK –acknowledge).
F5 : dipakai untuk menonaktifkan keyboard. Setelah menerima perintah ini, keyboard akan
menjawab dengan FA (ACK –acknowledge).
FE : dipakai meminta keyboard mengirim ulang scan codeterakhir yang dikirim.
FF : perintah untuk me-reset keyboard.
Selain perintah dari host, keyboard PC juga mempunyai kode-kode lain (selain scan
code yang dikirimkan ke host), sebagai berikut :
FA : berarti ACK (acknowledge), yaitu jawaban dari keyboard PC bahwa perintah dari host
sudah dikenali dengan baik.
AA : berarti keyboard PC selesai memeriksa diri dan siap bekerja setelah diberi catu daya.
FE : artinya minta host mengulang perintah terakhir yang dikirim
FF/00 : berarti terjadi kesalahan di keyboard PC
2.4 Driver Baris dan Kolom
Untuk menyalakan dot matrik ada beberapa tahapan yang harus di perhatikan
karena dot matrik pada dasarnya adalah sejumlah LED yang disusun dalam kolom dan
baris. Hanya ada satu jalusr kolom yang rendah pada satu waktu, sedangkan jalur-jalur
lainnya harus tetap tinggi. Jalur yang ini disebut sebagai kolom aktif. Berbeda dengan jalur
kolom, jalur baris yang bisa bernilai tinggi atau rendah tanpa harus memperhatikan
jalur-jalur baris lainnya. Oleh karena itu terdapat dua driver untuk menyalakan dot matrik
supaya mampu membentuk suatu karakter. Utnuk member tegangan pada bagain baris
tidak bisa secara langsung menyambungnya ke port. Hal ini disebabkan oleh kebutuhan
arus listrik yang cukup besar. Oleh arena itu, bagian baris diberi catu daya yang
menggunakan transistor PNP. Dengan cara seperti ini, untuk membuat agar jalur baris bisa
memberi arus pada LED, maka basis diberi kondisi rendah’0’. Sedangkan jika basis diberi
kondisi tinggi, maka jalur baris justru tidak bisa memberikan arus untuk LED.
Sama pada bagian baris, bagian kolom juga tidak bisa dikendalikan secara langsung
menggunakan port. Oleh karena itu harus menggunakan IC yang mampu mengatur nyala
dari kolom. Seperti yang telah dijelaskan sebelumnya bahwa hanya ada satu kolom saja
Untuk mengetahui berapa besar arus yang dibutuhkan oleh dot matrik maka harus
cukup dengan mengetahui berapa besar arus yang dibutuhkan untuk menyalakan satu buah
LED yaitu berkisar 20 mA. Untuk mengurangi arus LED pada saat proses scanning maka
transistor tersebut harus bekerja secara switch, yaitu supaya arus yang mengalir adalah arus
jenuh.
2.4.1 Transistor
Transistor merupakan salah satu semikondukor yang dapat digunakan untuk
perataan arus, menahan sebagian arus, menguatkan arus, membangkitkan frekuensi rendah
maupun frekuensi tinggi.
Gambar 2.8 Transistor PNP
Gambar 2.9 Transistor NPN
Secara analog, transistor dapat dinyatakan dua buah dioda yang dihubungkan
bertolak belakang. Ada dua macam jenis transistor, yaitu transistor silikon dan transistor
germanium. Transistor yang banyak dipergunakan dalam teknik elektronika antara lain
transistor PNP dan transistor NPN. Biasanya transistor terdiri dari 3 buah kaki yang
masing-masing diberi nama kolektor, basis dan emitor. Jika ada kaki keempat , dinamakan
kaki sasis. Umumnya pabrik-pabrik yang memproduksi transistor memberi tanda pada
badan transistor untuk memudahkan penentuan salah satu kaki transistor tersebut. Pada
perancangan ini menggunakan transistor PNP 2N3906 sebagai pengendali baris. Transistor
dan sebaliknya. Transistor dalam kondisi saturasi seperti saklar yang sedang menutup (on),
maka berlaku RB minimum,IB maksimum, VCE = Vmindan VRC = Vmax = VCC. Sedangkan
transistor dalam kondisi cut off seperti saklar sedang membuka (off), maka berlaku RB
besar, IB minimum, VCE = VCC, dan VRC = 0 [7].
Gambar 2.10 transistor 2N3906
Hitungan transistor sebagai saklar [8]
IB = Ic
ℎܨ ܧ 2.2
RB=
Vb−Vbe
Ib 2.3
2.4.2 IC 74HC595 [9]
74HC595 adalah IC CMOS kecepatan tinggi dan pin-pinnya kompatibel dengan
Schotty TTL daya rendah. Selain itu 74HC959 juga disebut sebagai IC shift register
dengan latches. Fitur yang ada pada 74HC595 adalah :
a. 8-bit serial input
b. 8-bit serial or parallel output
c. Storages register with 3 states output
d. Shift register with direct clear
e. 100 MHz (typical) shift out frequency
Shift register mempunyai satu serial input (DS) dan satu serial standart output ( Q7’)
untuk tambahan IC. Dalam hal ini, IC 74HC595 berfungsi sebagai pengatur kolom pada
Gambar 2.11 PIN IC 74HC959
2.5 Map ASCII
Kode Standar Amerika untuk Pertukaran Informasi atau ASCII (American
Standard Code for Information Interchange) merupakan suatu standar internasional dalam
kode huruf dan simbol seperti Hex dan Unicode tetapi ASCII lebih bersifat universal,
contohnya 124 adalah untuk karakter "|". Digunakan oleh komputer dan alat komunikasi lain untuk menunjukkan teks. Kode ASCII sebenarnya adalah bilangan biner sebanyak 8 bit,
dimulai dari 0000 0000 hingga 1111 1111. Total kombinasi yang dihasilkan sebanyak 256,
18
BAB III
PERANCANGAN
Dalam bab ini akan dibahas mengenai peracangan perangkat keras dan perangkat
lunak.
3.1 Perencanaan Sistem
Dalam perencanaan sistem ini akan dibahas tentang kebutuhan-kebutuhan yang
harus dipenuhi, agar alat ini dapat bekerja sesuai dengan apa yang direncanakan, yaitu
penampilan tulisan berjalan menggunakan dot matrik display denga keyboard PC PS/2
sebagai input. Yang menjadi inti permasalahan adalah bagaimana menghubungkan antara
keyboard dengan dot matrik agar dapat menampilkan informasi yang di-input-kan oleh
keyboard. Maka diantara keduanya perlu diberikan mikrokontroler untuk menghubungkan
keduanya agar dapat saling berkomunikasi. Mikrokontroler ATmega8535 dipilih untuk
menghubungkan keyboard dengan dot matrik.
3.2 Perencanaan Perangkat Keras
Berdasarkan perencaan di atas maka akan dijelaskan perencanaan perangkat keras
utuk sistem ini,yang meliputi rangkain keyboard PC PS/2 yang digunakan sebagai input,
rangkaian mikrokontroler dan rangkaian dot matrik display.
3.2.1 Rangkaian
Keyboard
PC PS/2
Rangkaian ini berfugsi untuk mengambil data karater dari keyboard PC PS/2 dan
mengirimkannya ke port ATmega8535 dalam bentuk ASCII. Struktur dan kinerja dari
keyboard dapat dilihat pada bagian bab 2 Dasar Teori.
Gambar 3.2 Rangkain Keyboard PC PS/2
3.2.2 Rangkaian Mikrokontroler
Rangkain mikrokontroler akan mengolah data input dari keyboard PC PS/2 dan
mengirimkan ke dot matrik display. Dapat dikatakan bahwa mikrokontroler ini merupakan
otak dari keseluruhan sistem. Struktur dan kinerja dari mikrokontroler ATmega8535 dapat
dilihat pada bab 2 Dasar Teori. Beberapa bagian dari perancangan mikrokontroler
3.2.2.1 Rangkaian Osilator
Rangkain osilator berfungsi untuk membangkitkan sinyal clock untuk menjalankan
mikrokontroler. Untuk rangkaian osilator digunakan crystal dengan frekuensi 11,0,592
Gambar 3.3 Rangkaian Osilator ATmega8535
MHz dan menggunakan kapasitor 30pf pada pin XTAL 1 dan XTAL 2 di mikrokontroler.
Pemberian kapasitor bertujuan untuk memperbaikikestabilan frekuensi kestabilan
frekuensi yang diberikan oleh osilator eksternal.
3.2.2.2 Rangkaian
Reset
Gambar 3.4 Rangkaian Reset ATmega8535
Rangakain reset dibuat untuk me-reset mikrokontroler sehingga proses bias
dijalankan mulai dari awal.saat tombol reset ditekan maka mikrokontroler mendapat input
Fungsi resistor dan kapasitor adalah untuk tunda waktu tegangan yang masuk ke
reset. Perancangan penggunaan port sebagai input dan output pada ATmega8535
disesuaikan dengan kebutuhan yaitu dapat dilihat seperti gambar 3.5.
Gambar 3.5 Sistem Minimun ATmega8535
3.2.3 Rangkaian Pengandali /
Driver
Rangkaian pengendali terdiri dari resistor dan transistor. Resistor ini berfungsi
sebagai pembatas arus dan untuk menurunkan tegangan input lampu LED dot matrik. Dan
juga digunakan sebagai pembatas arus basis sehingga arus yang masuk ke basis tidak
terlalu besar.
3.2.3.1 Rangkain Pengendali Baris
Dot matrik membutuhkan arus 20 mA supaya dapat menyala. Menggunakan 7 blok
dot matrik yang terdiri dari 5 kolom dan 7 baris dengan ukuran 35 x 7. Untuk
Rangkaian driver baris menggunakan IC sebesar 20 mA dengan nilai hfe100. Maka
dengan ini didapatkan Ib :
Ib = Ic /hfe
Ib = 20.10-3 /100 = 0.2 mA
Maka dengan demikian dapat dicari Rb
Rb = (VCC– VBE - VB) / Ib
Rb = (5 – 0.85) / 0,2.10-3
Rb = 4,15 / 0,2.10-3
Rb = 20750Ω
Gambar 3.6 Rangkaian Pengendali Baris
3.2.3.2 Rangkain Pengendali Kolom
Perancangan ini menggunakan shift register 74HC595 sebanyak lima IC. Tiap IC
akan mengontrol nyala kolom pada dot matrik. Sehingga nyala tiap LED seakan
membentuk karakter yang telah di-input-kan melalui keyboard. Karena IC 74HC595
mempunyai pengaturan delapan bit sedangkan setiap kolom yang diatur pada dot marik ada
lima maka pin IC yang lain dihubungkan ke pin kolom dot matrik selanjutnya, demikian
Gambar 3.7 Pengendali Kolom
3.3 Perancangan Perangkat Lunak
Untuk berkomunikasi dengan keyboard PC PS/2 dan dot matrik display diperluan
perintah-perintah yang dikenali oleh mikrokontroler ATmega8535 yang kemudian diolah
menjadi data yang akan dikirim kepada mikrokontroler. Pada gambar dibawah ini dapat
dilihat diagram alir perangkat lunak seraca umum.
3.3.1 Perangkat Lunak Pengambilan Data
Keyboard
PC PS/2
Diagram alir pada Gambar 3.7 merupakan program utama dari keyboard PC PS/2 .
Sebelum merancang program, diperlukan pengenalan bentuk data yang dikirimkan oleh
keyboard PC PS/2. Sinyal data dari keyboard PC PS/2 dikirim dalam bentuk sinyal data
dan clock. Pengiriman satu paket data selalu diawali dengan start bit berlogika 0 diikuti
sinyal clock, dilanjutkan dengan 8 bit data yang dimulai dari bit 0 hingga bit ketujuh dan
diakhiri dengan bit parity serta sebuah stop bit berlogika 1. Setiap pengiriman start bit,8
data, parity dan stop bit selalu diikuti dengan sebuah sinyal clock yang digunakan bagi
bagian penerima bahwa satu bit data telah dikirim. Setiap bit dibaca pada sisi turun dari
clock.
Setelah bentuk data dikenali, kemudian dilanjutkan dengan pengenalan
bentuk-bentuk kode (scan code) yang digunakan pada komunikasi data keyboard PC PS/2.
Kemudian perancangan program dapat dimulai dengan merancang diagram alir dari
subroutine pengambilan sebuah scan code dari keyboard PC PS/2. 8 bit yang masuk
melalui PC.1 digeser ke akumulator melalui bit carry satu persatu (setiap sinyal clock
berubah dari logika 1 ke logika 0).
Penekanan tombol pada keyboard PC PS/2 tidak hanya menghasilkan sebuah scan
code saja, namun dapat terdiri atas tiga atau bahkan lebih scan code. Jika sebuah tombol
ditekan maka scan code akan terkirim terus menerus (hingga pada saat tombol tersebut
dilepas). Scan code F0 dan scan code tombol itu sendiri akan dikirim sebagai tanda tanda
bahwa tombol telah dilepas.
Gambar 3.10 Penampilan Data dariKeyboardke Dot Matrik
Ada dua bagian proses secara garis besar, yaitu proses deteksi scan code saat
tombol ditekan dan deteksi scan code saat tombol dilepas. Pada masing-masing proses,
scan code berupa shift tombol dilepas dan scan code berupa caps lock untuk tombol
ditekan.
Jika tombol shift ditekan, kondisi shift di-komplemen. Dengan demikian, karakter
pada penekanan selanjutnya akan di ubah menjadi huruf besar (jika sebelumnya adalah
huruf kecil). Sebaliknya, menjadi huruf kecil (jika sebelumnya adalah huruf besar). Jika
tombol Caps Lock yang ditekan, scan code dikonversi sesuai dengan table keyboard.
Shift di-komplemen lagi pada saat tombol shift dilepas, sehingga karakter pada
penekanan selanjutnya akan diubah menjadi huruf besar (jika sebelumnya adalah huruf
kecil). Sebaliknya menjadi huruf kecil, jika sebelumnya adalah huruf besar. Sedangkan
pada saat bukan tombol shift yang ditekan pada maka kondisi tidak berubah dari kondisi
sebelumnya. Ditunjukkan pada gambar 3.9.
3.3.2 Perangkat Lunak Dot Matrik
Display
Perangkat lunak ini dirancang untuk mengontrol bagian kolom dot matrik display, atau sering disebut dengan scanning kolom. Untuk dapat mengoperasikan scanning kolom, mikrokontroler memanfaatkan Interrupt Timer . Secara umum, diagram alir perangkat lunak dot matrik LED display dapat dilihat pada Gambar 3.11.
Geser text
Posisi sudah lewat
Posisi awal (1) sebelah kanan
Text > jumlah kolom
Text terakhir Kembali ke kolom
yang paling kanan Posisi awal -1
Nilai awal +1
Posisi terakhir -1
Nilai terakhir +1
kembali tidak
ya
tidak
ya
tidak ya
ya
29
BAB IV
HASIL DAN PEMBAHASAN
Pada bab ini dibahas mengenai hasil pengujian alat yang sudah dibuat. Selain itu
juga untuk mengetahui apakah alat yang dibuat sudah sesuai dengan perancangan. Alat
ini mempunyai fungsi sebagai penampil tulisan berjalan, dot matrik sebagai display dan
masukan data menggunakan keyboard PS/2. Display dot matrik akan menampilkan
karakter-karakter berupa huruf, angka, dan tanda baca ketika ada penekanan tombol
melaluikeyboard PS/2. Setelah pengetikan karakter selesai, dengan menekan tombol Enter
di keyboard PS/2 tulisan akan berjalan (running) ke kiri. Karakter di display dot matrik
akan running terus sampai supply di off-kan. Ada beberapa tahap pengujian yang dilakukan
untuk mengetahui tingkat keberhasilan alat yang dibuat yaitu:
1. Pengujian masukan data melalui Keyboard PS/2 dengan tampilan LCD.
2. Pengujian display dot matrik.
3. Pengujian driver.
4. Pengujian secara keseluruhan.
Gambar 4.1 Sistem keseluruhan
4.1 Pengujian Masukan Data Melalui
Keyboard
PS/2 dengan Tampilan
LCD
Pengujian dilakukan dengan cara menghubungkan keyboard PS/2 ke LCD melalui
ditampilkan di LCD, karakter yang ditampilkan sama dengan tombol yang di tekan pada
keyboard PS/2. Beberapa karakter yang diketikkan secara acak pada saat pengujian
ditunjukan pada tabel 4.1.
Tabel 4.1 Tabel hasil beberapa penekanan tombol keyboard dan tampilan pada
LCD
Shift menekan tombol shiftbersamaan dengan tombol yang lain maka
akan mengubah karakter
Penekanan tombol shiftbersamaan dengan tombol lain dapat mengubah huruf kecil
menjadi huruf kapital dan angka menjadi tanda baca. Jika tombol shift tidak ditekan maka
setiap pengetikan akan ditampilkan di LCD sebagai huruf kecil atau hanya berupa angka.
Karakter yang ditampilkan di LCD tidak berupa kalimat tetapi hanya berupa karakter
tunggal. Setiap ada pengetikan karakter maka yang ditampilkan di LCD hanya satu
karakter, sedangkan karakter sebelumnya diganti dengan karakter yang baru. Karakter
yang ditampilkan tidak berjalan (running). Pengujian dilakukan untuk mengetahui apakah
Beberapa bentuk karakter yang ditampilkan di LCD ditunjukan pada gambar 4.2, gambar
4.3, gambar 4.4, dan gambar 4.5.
Gambar 4.2 Tampilan karakter “s” ditekan bersamaan dengan shiftdi LCD
Gambar 4.3 Tampilan karakter “s” di LCD
Gambar 4.4 Tampilan karakter “1” di LCD
Gambar 4.5 Tampilan karakter “1” ditekan bersamaan dengan shift di LCD
Dalam pengujian ini komunikasi antara keyboard mikrokontroler sudah berjalan
dengan baik yaitu mampu membaca penekanan tombol dari keyboard. Hal ini dibuktikan
4.2 Pengujian
Display Dot Matrik
Dalam pengujian dot matrik hampir sama dengan pengujian menggunakan LCD,
yaitu keyboard PS/2 dan dot matrik dihubungkan melalui mikrokontroler. Namun
pengujian ini untuk mengetahui apakah proses scanning sudah sesuai atau belum, maka
dalam pengujian dilakukan beberapa penekanan tombol yaitu tombol “k” dan “t” yang ada
di keyboard. Hasil dari penekan tombol ditunjukan pada gambar 4.6 dan gambar 4.7.
Gambar 4.6 Karakter “k”
Gamba 4.7 Karakter ‘t”
Dari hasil pengujian di dapatkan hasil bahwa semua karakter yang ditampilkan pada dot
matriksudah sesuai dengan penekanan tombol di keyboard. Ini menunjukan bahwa proses
scanning pada display dot matrik sudah berhasil dilakukan. Kemudian setelah dilakukan
pengujian tombol karakter maka dilakukan juga pengujian untuk tombol-tombol fungsi,
yaitu tombol shift untuk menampilkan huruf kapital dan tombol backspace untuk
menghapus karakter. Untuk mengetahui apakah tombol shift sudah berfungsi atau belum,
maka dilakukan pengujian dengan cara menekan tombol shift terlebih dahulu, baru tombol
karakter yang diinginkan ditekan. Dalam pengujian ini karakter yang ditekan adalah huruf
“t”. Ketika tombol shift ditekan kemudian diikuti dengan tombol “t” maka yang muncul
pada gambar 4.8. Hal ini menunjukan bahwa fungsi dari tombol shift sudah sesuai, jika
hanya difungsikan sebagai penampil huruf kapital. Karena penekanan tombol shift tersebut
akan menyebabkan error untuk penekan tombol selanjutnya. Jika yang ditekan tombol
huruf maka huruf kecil tidak bisa ditampilkan meskipun tombol shift dilepas, seperti yang
ditunjukan pada gambar 4.9.
Gambar 4.8 Pengaruh penekanan tombol shift yang diikuti tombol “t”
Gambar 4.9 Error yang terjadi setelah penekanan tombol shift untuk karakter “t”
karakter yang muncul merupakan huruf kapital semua dan lambang tanda baca, misalkan
ditekan tombol “1” maka yang ditampilkan adalah “!”,meskipun tombol shift sudah
dilepas, seperti tunjukkan pada gambar 4.10.
Kemudian untuk setiap penekanan tombol backspace dan shift yang ditampilkan
adalah karakter sebelumnya. misalkan karakter yang ditekan sebelumnnya “r” maka ketika
shift dan backspace ditekan yang ditampilkan adalah huruf “r r r” lagi. Hasil error dari
pengujian ditunjukan pada gambar 4.11. Error ini disebabkan karena program yang dibuat
untuk mengatur fungsi tombol shift belum sempurna seperti tampilan di LCD sehingga
setelah tombol shift ditekan maka fungsi tombol shift ikut dibaca pada penekan tombol
selanjutnya
Gambar 4.11 Error yang terjadi setelah penekanan tombol shift untuk tombol fungsi shift
dan backspace
.
Gambar 4.12 Pengetikan kata “test”
Sedangkan untuk pengujian tombol backspace, terlebih dahulu dilakukan pengetikan
karakter, yang bertujuan untuk menampilkan karater yang akan dihapus. Setelah itu baru
dilakukan penekan tombol backspace. Karakter yang diketikan dalam pengujian adalah
“test”,dilihatkan pada gambar 4.12. Hasil dari penekan tombol backspace satu kali
karakter yang paling kanan akan hilang, hal ini menunjukan bahwa tombol backspace
sudah berfungsi dengan baik.
Gambar 4.13 Pengaruh penekan tombol backspace satu kali untuk kata “test” menjadi kata
“tes”
4.3 Pengujian
Driver
Gambar 4.14 Susunan IC shift register
Rangkaian driver berfungsi untuk menggeser data yang dimasukan melalui
keyboard. Rangkaian ini terdiri dari lima IC shift register tipe 74HC595 yang terhubung ke
sumber tegangan 5 volt dan outputterhubung ke dot matrik.
Untuk melihat apakah rangkaian shift register ini berfungsi maka dilakukan
pengujian dengan mengirimkan data tertentu dari keyboard yaitu karakter “A” dan untuk
mengaktifkan kolom dot matrik maka harus di beri data “0 , 65 , 127 , 65 , 0” untuk
menampilkan karakter I tersebut. Dengan demikian pengujian bisa dilihat dari nyala LED
di dot matrik yang harus sesuai dengan data yang dikirim pada IC shift register. LED yang
aktif saat data dimasukan membentuk karakter I dengan demikian rangkaian shift register
yang digunakan untuk menggeser data sudah sesuai dengan perancangan . Untuk tampilan
pada dot mtrik ditunjukan pada gambar 4.15
4.4 Pengujian Sistem Secara Keseluruhan
Pengujian secara keseluruhan merupakan tahap akhir dari pengujian. Semua bagian
dari alat dihubungkan dan dalam pengujian ini dapat diketehui hasil dari tulisan berjalan.
supaya setiap komponen pendukung dapat saling berkomunikasi program keseluruhan di
download ke mikrokontroler terlebih dahulu. Program dibuat menggunakan software
Bascom. Pengujian dilakukan dengan cara mengetikan beberapa karakter melalui keyboard
PS/2. Karakter yang diketikan adalah “selamat” dan langsung ditampilkan di dot matrik,
ditunjukan pada gambar 4.16. Setelah pengetikan karakter dilakukan, tombol enterditekan
maka karakter-karakter yang telah diketikan akan berjalan dari kanan kekiri, terus bergeser
sampai karakter terkahir. Setelah karakter terakhir yang diketikkan tampil, maka karakter
awal akan muncul kembali, demikian terus running. Pada saat tulisan sedang running,
tidak dapat dilakukan pengetikan atau pun penghapusan karakter ke dalam display dot
matrikdan tampilan tidak dapat dihentikan atau di perlambat pergeserannya.
Gambar 4.16 Pengetikan karakter selamat
Pada saat running ada beberapa error yang muncul di dot matrik yaitu tanda “ - “ di
karakter yang terakhir. Tanda ini selalu muncul jika jumlah karakter yang running sudah
saat alat di hidupkan terkadang akan muncul “V”,seperti gambar 4.18. Karakter yang
muncul tersebut akan ikut ditampilkan pada saat tulisan running. Hal ini disebabkan data
F0 pada keyboard ikut terbaca oleh mikrokontroler, karena keyboard akan selalu
mengirimkan data F0 sebagai tanda bahwa tidak ada penekan atau pun saat keyboardaktif
untuk pertama kali. Pembacaan data F0 ini yang dibaca oleh mikrokontroler sebagai data
yang dikirim meskipun tidak ada penekan tombol di keyboard.
Karakter maksimal yang bisa running sebanyak 36 karakter. Jika jumlah karakter
yang running melebihi 36, akan terjadi error yaitu tulisan tetap berjalan namun hanya
beberapa karakter terakhir, dan hanya berkedip-kedip pada bagian dot matrik yang paling
kanan. Sedangkan maksimal karakter yang bisa diketikan adalah 51. Dengan demikian
sistem belum bekerja maksimal yang harusnya mampu menampilkan 66 karakter.
Gambar 4.17 Tampilan yang mucul saat karakter mendekati karakter terakhir
Gambar 4.18 Error yang tampil saat awal pengetikan muncul karakter “V”
Alat dapat menampilkan tulisan berjalan dengan masukan data dari keyboard PS/2
meskipun masih terdapat error sehingga meyebabkan beberapa proses tidak sesuai dengan
perancangan. Error yang terjadi disebabkan algoritma yang masih kurang sempurna.
Karena dalam pengujian perbagian alat sudah berjalan dengan baik. Namun pada saat
program keseluruhan digabung ada beberapa error terjadi. Karena itulah disimpulkan
38
BAB V
KESIMPULAN DAN SARAN
5.1 Kesimpulan
setelah pengujian alat maka didapatkan kesimpulan tentang sistem ini, diantaranya adalah :
1. Alat sudah berhasil menampilkan karakter yang sesuai dengan penekan pada
keyboard.
2. Karakter maksimal yang bisa diketikkan pada dot matrik adalah sebanyak 51
karakter.
3. Karakter yang berjalan hanya berjumlah 36 karakter. Jika lebih dari 36 karakter
maka tampilan pada display akan berkedip dan karakter yang running hanya
beberapa karakter terakhir.
4. Penekan tombol shift akan menyebabkan tombol backspace tidak berfungsi sebagai
penghapus karakter.
5. Pada saat alat dihidupkan terkadang akan muncul “V”.
6. Pada saat tulisan sedang berjalan tidak dilakukan penghapusan karakter atau pun
penambahan karakter
7. Alat dapat menampilkan tulisan berjalan dengan masukan data dari keyboard PS/2
meskipun masih terdapat error pada saat tulisan berjalan.
5.2 Saran
Untuk pengembangan selanjutnya yaitu penyempurnaan algoritma program agar pada saat
tulisan berjalan tidak terjadi error. Masukkan data dilakukan dengan dua cara yaitu bisa
39
DAFTAR PUSTAKA
[1] http://www.mughniledmediainformatika.com/, diakses 14 juli 2011.
[2] Usman, 2008, Teknik Antarmuka + Pemograman Mikrokontroler AT89S52, 1St ed,
C.V ANDI OFFSET, Yogyakarta.
[3] Agus Bejo, 2007, C&AVR Rahasia Kemudahan Bahasa C untuk Mikrokontroler
ATMega8535, 1sted, Graha Ilmu, Yogyakarta.
[4] Lingga Wardhana, 2006, Belajar Sendiri Mikrokontroler AVR Seri ATMega8538,
1St ed, C.V ANDI OFFSET, Yogyakarta.
[5] Ardi Winoto, 2010, Mikrokontroler AVR ATmega8/16/32/8535 dan
Pemogramannyadengan BAHASA C pada WinAVR, 2nd ed, Informatika Bandung,
Bandung.
[6] http://www.toko-elektronika.com/tutorial/smartdotmatrix.htm, diakses 28 agustus
2011.
[7] http://dewey.petra.ac.id/jiunkpe_dg_5710.html, diakses 12 oktober 2011.
[8] Wasito S, 1990, Vademekum Elektronika, 5th ed, PT Gramedia Pustaka Utama,
Jakarta.
[9] ---, 1998, Data Sheet IC 74HC595, Philips.
[10] http://www.mytutorialcafe.com/mikrokontroller%20keyboard.htm diakses 28
agustus 2011
[11] http://iddhien.com/index.php?option=com_content&task=view&id=28&Itemid=106
40
1
2
1
-Dim Str_temp As String * 1 , Reeks(250) As Byte , Str_text As String * 50 , Str_len As Integer , Col_len As Byte , R As Byte
Dim Tempmsb As Byte , Templsb As Byte , Tempstr As String * 2 , Str_char As String * 1
Config Keyboard = Pind.2 , Data = Pind.4 , Keydata = Keydata $serialinput = Kbdinput
'$crystal = 20000000
Goto Main
'****************
Toggle Portc.2 'latch 1x
Str_text = Str_text_sementara Str_len = Len(str_text)
Return
Data "F9" , "" , "F5" , "F3" , "F1" , "F2" , "F12" , "" , "F10" , "F8" Data "F6" , "F4" , "TAB" , "`" , "" , "" , "LAlt" , "LSh" , "" , "LCtr" , "q" Data "1" , "" , "" , "" , "z" , "s" , "a" , "w" , "2" , ""
Data "0" , "." , "2" , "5" , "6" , "8" , "ESC" , "NumLck" , "F11" , "+" Data "3" , "-" , "*" , "9" , "ScrLck" , "" , "" , "" , "" , "F7"
Data ""
Data "F9" , "" , "F5" , "F3" , "F1" , "F2" , "F12" , "" , "F10" , "F8" Data "F6" , "F4" , "TAB" , "~" , "" , "" , "LAlt" , "LSh" , "" , "LCtr" , "Q" Data "!" , "" , "" , "" , "Z" , "S" , "A" , "W" , "@" , ""
Data "V" , "F" , "T" , "R" , "%" , "" , "" , "N" , "B" , "H"