TUGAS AKHIR
Oleh :
GAGAP SURYO NEGORO
NPM. 0534010202
J URUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL "VETERAN" JATIM
S U R A B A Y A
Pembimbing II : Fetty Tri Anggraeny, S.Kom Penyusun : Gagap Suryo Negoro
ABSTRAK
Teknologi pemrograman melalui komputer pada masa sekarang ini mengalami
perkembangan pesat. Hal ini menunjukan suatu kecenderungan yang mengarah
kepada pengembangan suatu sarana teknologi yang lebih praktis, efisien dan
ekonomis untuk mempermudah dan mempercepat aktivitas manusia. Melalui
program Visual Basic 6.0 dapat membuat sistem aplikasi otomatis melalui
komputer sebagai sarana kontrol. Aplikasi yang dibuat oleh penulis yaitu berupa
sistem antrian.
Adapun tujuan dari penelitian ini adalah membuat sistem perangkat lunak
digunakan untuk mengatur atau mengontrol pengambilan dan pemanggilan nomor
antrian pada loket. Pembuatan aplikasi ini diharapkan dapat memberikan kemudahan
aktivitas dan efektifitas petugas loket antrian dalam melakukan pelayanan transaksi
(rekening listrik, rekening telepon, dan rekening PDAM, dan lain-lain) sehingga
antrian dapat berjalan tertib.
Dalam merealisasikan penulisan Tugas Akhir ini menggunakan metode
simulasi untuk menyelesaikan sistem antrian Perancangan perangkat lunak
menggunakan bahasa pemrograman Visual Basic 6.0 dan perangkat keras
mikrokontroler dengan mengunakan bascom untuk menterjemahkan input atau output,
kinerja simulasi sistem antrian untuk mengatur dan mengontrol pemanggilan nomer
antrian berdasar kan pada asas tata tertib “masuk pertama, keluar pertama” (FIFO =
First-In, First-Out), dengan menggunakan aplikasi sistem antrian ini membantu
petugas loket dalam melakukan pelayanan terhadap pengantri, pengantri tidak harus
berdiri mengantri di depan loket selain itu membantu petugas loket memberikan
pelayanan dengan cepat.
Dengan nama Allah SWT Yang Maha Pengasih dan Maha Penyayang. Segala puji bagi Allah SWT karena atas rahmat dan hidayahNya-lah penulis dapat
menyelesaikan Tugas Akhir yag berjudul “Sistem Antr ian Pembayar an Loket
Ber basis Mikr okontr oler ”. Shalawat dan salam atas junjungan besar kita Nabi
Muhammad S.A.W. beserta keluarga dan para sahabat sekalian. Tugas Akhir ini
disusun untuk memenuhi sebagian persyaratan memperoleh gelar Sarjana Teknik
di Jurusan Teknik Informatika Program Studi Teknik Informatik Fakultas Teknik
Industri Universitas Pembangunan Nasional Surabaya Jawa Timur.
Melalui kesempatan ini, penulis ingin menyampaikan rasa hormat dan
terima kasih penulis yang sebesar-besarnya kepada semua pihak yang telah
memberikan bantuan bantuan baik lahir maupun batin selama penulisan tugas
akhir ini. Oleh karena itu, pada kesempatan ini penulis ingin menyampaikan rasa
hormat dan terima kasih penulis kepada :
1. Kedua Orang Tua penulis (Budiyanto dan Saptowati) serta seluruh keluarga
yang senantiasa tiada henti hentinya memberikan do’a demi
terselesaikannya tugas akhir ini.
2. Bapak Ir. Sutiyono, MT selaku dekan FTI, UPN “Veteran”Jawa Timur.
3. Ibu Dr. Ir. Ni Ketut Sari, MT selaku ketua jurusan Teknik Informatika, FTI,
UPN “Veteran” Jawa Timur
4. Bapak Basuki Rahmat, S.Si., MT selaku dosen pembimbing 1 tugas akhir
6. Seluruh Dosen Teknik Informatika Upn atas kesediaan membagi ilmunya
kepada penulis.
7. Teman-temanku seperjuangan dan sependeritaan terima kasih atas segala
bantuannya selama menjadi mahasiswa.
8. Semua pihak yang tidak dapat penulis sebutkan satu per satu yang terlibat
baik secara langsung maupun tidak langsung demi terselesaikannya tugas
akhir ini.
Hanya doa yang bisa penulis berikan semoga Allah SWT memberikan
pahala serta balasan kebaikan yang berlipat ganda. Penulis menyadari bahwa
tugas akhir ini masih banyak kekurangan dan masih jauh dari sempurna. Untuk
itu, saran dan kritik yang membangun sangat penulis harapkan. Semoga tugas
akhir ini membawa manfaat bagi penyusun maupun pihak lain yang
menggunakannya.
Surabaya, Oktober 2011
ABSTRAK ...
i
KATA PENGANTAR ... ii
DAFTAR ISI ... iv
DAFTAR GAMBAR ... vii
DAFTAR TABEL ... ix
BAB I PENDAHULUAN ... 1
1.1
Latar Belakang ... 1
1.2
Perumusan Masalah ... 3
1.3
Batasan Masalah ... 3
1.4
Tujuan ... 4
1.5
Manfaat ... 4
1.6
Metode Penelitian ... 4
1.7
Sistematika Penulisan ... 5
BAB II TINJ AUAN PUSTAKA ... 7
2.1
Mikrokontroler AT89S52 ... 7
2.1.1
Konfigurasi Pin ... 10
2.1.2
Dasar Mikrokontroler ... 15
2.2
Bascom-8051 Sebagai Compiler Basic ... 21
2.2.1
Karakter Dalam Bascom ... 22
2.2.2
Tipe Data ... ... 23
2.2.3
Variabel ... 23
2.2.4
Alias ... 24
2.2.5
Konstanta ... 25
2.2.6
Array ... 26
2.2.7
Operasi-operasi Dalam Bascom ... 26
2.2.8.3 While End ... 30
2.2.8.4 Do Loop ... 30
2.2.8.5 For Next ... 30
2.2.8.6 Exit ... 31
2.3
Microsoft Access 2003 ... 31
2.4
Visual Basic 6.0 ... 33
2.4.1
Kelebihan Visual Basic 6.0 ... 34
2.4.2
Lingkungan Visual Basic 6.0 ... 35
2.4.3
Menjalankan IDE ... 36
2.4.4
Memilih Jenis Project ... 36
2.4.5
Jendela IDE ... 37
2.5
Kerangka Berpikir ... 43
BAB III ANALISIS DAN PERANCANGAN SISTEM ... 45
3.1
Analisis Sistem ... 45
3.2
Perancangan Sistem ... 47
3.2.1
Alur Umum sistem ... 48
3.2.2
Spesifikasi Peralatan ... 49
3.3
Perancangan Flowchart Program ... 50
3.3.1
Flowchart Input Data Antrian ... 51
3.3.2
Flowchart Baca Nomer Antrian ... 52
3.3.3
Flowchart Ulang Nomer Antrian ... 53
3.4
Perancangan Hardware ... 54
3.4.1
Blok Catudaya ... 55
3.4.2
Blok Pemberi Inputam ... 56
3.5
Perancangan Antar Muka Perangkat Lunak ... 57
3.5.1
From Utama ... 57
BAB IV IMPLEMENTASI SISTEM ... 59
4.1.
Lingkungan Implementasi ... 59
4.2.
Implementasi Data ... 60
4.3.
Implementasi Antar Muka ... 62
4.3.1.
Form Layar Utama ... 63
4.3.2.
Form User ... 65
4.3.3.
Form Pembuat Informasi ... 66
4.3.4.
Form Print Out Nomer Antrian ... 67
4.4.
Implementasi Hardware ... 67
4.4.1
Rangkaian Mikrokontroler ... 68
4.4.2
Pengisian Program Mikrokontroler ... 69
BAB V UJ I COBA DAN EVALUASI ... 72
5.1.
Uji Coba Perangkat Keras (Hardware) ... 72
5.2.1.
Uji Coba Rangkaian Mikrokontroler AT89S52 ... 72
5.2.2.
Koneksi Software Dengan USB Converter RS 232 ... 74
5.2.3.
Pengisian Program Mikrokontroler ... 74
5.2.
Uji Coba Aplikasi ... 76
5.2.1.
Uji Coba Form Layar Utama ... 76
5.2.2.
Uji Coba Form User ... 77
5.2.3.
Uji Coba Form Pembuat Informasi ... 80
5.3.
Uji Coba Komputer Mati Dinyalakan Lagi ... 82
5.4.
Uji Coba Ganti Hari dan Tanggal ... 83
BAB VI PENUTUP ... 85
6.1.
Kesimpulan ... 85
6.2.
Saran ... 85
Gambar 2.1. Blok Diagram Mikrokontroler ……….. 10
Gambar 2.2. Konfigurasi Pin ………. 11
Gambar 2.3. 256 byte RAM Internal Bagian Bawah (Lower) ………... 18
Gambar 2.4. 256 byte RAM Bagian Atas ………... 19
Gambar 2.5. Bit Latch Dan I/O Buffer ……….. 21
Gambar 2.6. Pendeklarasian Variabel Dalam BASCOM ……….. 24
Gambar 2.7. Tampilan pilihan program pada Visual Basic 6.0 ……… 36
Gambar 2.8. IDE Visual Basic 6.0 ……… 37
Gambar 2.9. Menubar ……… 38
Gambar 2.10. Toolbar ……….………... 38
Gambar 2.11. Toolbox Visual Basic 6.0 ……… 39
Gambar 2.12. Jendela Form ………... 41
Gambar 2.13. Project Explorer ……….. 42
Gambar 2.14. Jendela Propertis ………. 42
Gambar 2.15. Diagram Sistem Antrian Otomatis Menggunakan Komputer … 44
Gambar 3.1 Diagram sistem antrian loket ……… 48
Gambar 3.2 Flowchart Input Data Antrian …..……….. 51
Gambar 3.3 Flowchart Baca Nomor Antrian ……....………. 52
Gambar 3.4 Flowchart Ulang Nomor Antrian ..……… 53
Gambar 3.5 Gambar skema rangkaian mikrokontroler ... 54
Gambar 3.6 Skema Rangkaian Catudaya …...………. 56
Gambar 3.7 Skema rangkain saklar sebagai inputan …..……….. 56
Gambar 3.8 Gambar Form Utama ………. 57
Gambar 3.9 Gambar Form User ……...……….. 58
Gambar 3.10 Gambar Form Membuat Pesan ……….. 58
Gambar 4.1 Tabel Pengunjung ... 60
Gambar 4.5 Pseudocode menampilkan informasi pada layar utama ... 64
Gambar 4.6 Pseudocode menampilkan nomor antrian ... 64
Gambar 4.7 Pseudocode pengecekan nomor antrian ... 65
Gambar 4.8 Form User ... 65
Gambar 4.9 Pseudocode form user ... 66
Gambar 4.10 Form Pembuat Informasi ... 66
Gambar 4.11 Form Print Out Nomor Antrian ... 67
Gambar 4.12 Rangkaian Mikrokontroler... 68
Gambar 4.13 Microcontroller ISP software ... 70
Gambar 4.14 Memilih File HEX yang telah dibuat ... 70
Gambar 4.15 Pseudocode Bascom ... 71
Gambar 5.1 Pemasangan tombol push pada mikrokontroler ... 73
Gambar 5.2 Memilih file .HEX yang di simpan ... 75
Gambar 5.3 Program ISP... 75
Gambar 5.4 Form layar utama masih kosong ... 76
Gambar 5.5 Form Layar Utama yang menampilkan nomor antrian ... 77
Gambar 5.6 Form User ... 78
Gambar 5.7 Gambar layar utama untuk menampilkan nomor antrian ... 79
Gambar 5.8 Form pembuat informasi yang masih kosong ... 79
Gambar 5.9 Form pembuat informasi yang sudah terisi ... 80
Gambar 5.10 Informasi yang berhasil disimpan ... 81
Gambar 5.11 Layar utama tetap menampilkan informasi yang lama ... 81
Gambar 5.12 Gambar layar utama sebelum komputer dan aplikasi di matikan.. 82
Gambar 5.13 Gambar layar utama berjalan kembali ... 83
Gambar 5.14 Gambar layar utama nomor antrian terakhir sebelum ganti hari .. 84
Tabel 2.1. Fungsi Alternatif Port 1 ………. 12
Tabel 2.2. Fungsi Alternatif Port 3 ………. 13
Tabel 2.3. Karakter Dalam BASCOM-8051 ……….. 22
Tabel 2.4. Tipe Data ………... 23
Tabel 2.5. Operator Relasi ………. 27
Tabel 3.1 Port Mikrokontroler ……… 55
1.1 Latar Belaka ng
Teknologi perangkat kontrol mengalami perkembangan sangat pesat,
berkembang dari masa ke masa seiring dengan meningkatnya kemampuan dan
kebutuhan hidup manusia. Perangkat kontrol semakin banyak dibutuhkan untuk
mengendalikan berbagai peralatan yang digunakan untuk membantu manusia
dalam menjalankan tugasnya sehari-hari. Pada layanan umum banyak orang yang
harus dilayani dan kalau orang yang melayani kurang biasanya diminta untuk
mengantri atau berbaris satu-persatu untuk menunggu mendapatkan layanan,
sehingga setiap orang yang sedang melakukan antrian saling menyerobot ingin
cepat dilayani, maka membuat petugas loket antrian akan kesulitan dalam
menentukan orang pertama yang akan dilayani dalam antrian. Hal ini sering
orang lihat atau alami misalnya di bank, apotek, dokter praktek dan ditempat
layanan umum lainnya. Tentu hal ini kurang menyenangkan dan cenderung
memboroskan waktu.
Hal ini menunjukan suatu kencenderungan yang mengarah kepada
penciptaan maupun pengembangan suatu sarana teknologi otomatis yang lebih
praktis, efisien dan ekonomis untuk mempermudah dan mempercepat segala
aktivitas manusia. Peralatan otomatis banyak menggunakan komputer sebagai
sarana kontrol, sistem otomatis dengan batuan komputer tidak akan berjalan
apabila ada pemrograman atau perangkat lunak yang berfungsi sebagai perintah
banyak masalah kehidupan sehari-hari yang bisa diatasi, termasuk ke tidak
nyamanan karena harus mengantri. Komputer bisa mengakses peralatan eksternal
dengan perantaraan port masukan dan keluaran (port I/O). Karena keterbatasan
pin data pada port jenis ISA dengan memanfaatkan IC AT89S52 untuk menambah
jumlah pin ini menjadi 24 pin, terbagi menjadi 3 port yaitu port A, port B dan port
C dan bisa sebagai masukan ataupun keluaran. Dari 24 pin ini bisa mengatur IC
untuk driver display seven segmen, menerima masukan dari saklar tekan,
melakukan pencetakan pada printer dan mengaktifkan suara pada sound card. Ini
semua dilakukan dari komputer yang mengandung slot ISA bahasa pemrograman
yang di gunakan adalah Visual Basic 6.0.
Sistem antrian yang menggunakan program Visual Basic 6.0 sebagai
pembuat perintah pada komputer digunakan untuk mengontrol sistem antrian agar
lebih efisien dan efektif. Selanjutnya komputer tersebut menghasilkan nomor urut
antrian, bertujuan agar saat orang-orang melakukan antrian dapat berjalan dengan
tertib, sesuai dengan kertas nomor urutan yang didapatkan setelah menekan
tombol print out/cetak. Orang yang telah mengambil nomor antrian dari printer
tersebut tinggal menunggu pemanggilan nomor yang dimiliki untuk melakukan
transaksi pada loket antrian. Dengan menggunakan sistem ini diharapkan dapat
meningkatkan kenyamanan pelayanan, konsumen tidak perlu kelelahan berdiri
menunggu dibarisan antrian yang panjang dan mereka dapat dengan bebas
melakukan aktivitas sebelum nomor antrian mereka ditampilkan di display nomor.
Dari pihak pemakai sistem ini, petugas loket dapat memaksimalkan pelayanan
terhadap konsumen, dengan membuat atau melakukan evaluasi dari proses kerja
1.2 Per umusan Masalah
Berdasarkan latar belakang diatas, maka dapat dibuat suatu rumusan
masalah, yaitu :
a. Bagaimana membuat suatu program untuk mengendalikan proses
pengambilan dan pemanggilan nomor pada loket antrian dengan
berbasis mikrokontroler.
b. Bagaimana kinerja sistem antrian loket ketika masih menggunakan
sistem manual, setelah menggunakan sistem informasi antrian loket
ini dapat mempermudah petugas loket dalam melayani pengantri.
1.3 Batasan Masalah
Dalam pengerjaan tugas akhir ini, untuk mengatasi permasalahan yang ada
maka penyusun membatasi permasalahan sebagai berikut :
a. Area pengerjaan meliputi pengelolaan antrian pada loket
pembayaran.
b. Metode yang digunakan dalam analisis sistem antrian adalah metode
antrian dengan pelayanan FIFO ( First In First Out ) : pengantri
yang pertama datang yang pertama keluar.
c. Penggunaan nomor kartu antrian dibatasi oleh nomor kartu antrian
terbesar jika sudah mencapai batas nomor antrian maksimal maka
akan di kembalikan ke nomor antrian terkecil.
d. Aplikasi yang dibuat berbasis Dekstop dengan menggunakan bahasa
e. Ruang lingkup Tugas Akhir ini terbatas pada pengaplikasian (
software ) bahasa pemrograman Visual Basic 6.0.
f. Untuk simulasi display nomor antrian menggunakan komputer.
1.4 Tujuan
Tujuan dari tugas akhir ini adalah merancang dan membangun sistem
informasi antrian dengan menggunakan metode FIFO ( First In First Out ).
1.5 Manfaat
Manfaat yang dapat diraih dari pembuatan tugas akhir ini adalah memajukan
fasilitas pelayanan sistem antrian yang ada untuk mengatur atau mengontrol
pengambilan dan pemanggilan nomor antrian pada loket antrian.
1.6 Metode Penelitian
Metodologi yang digunakan dalam pembuatan skripsi ini meliputi beberapa
bagian, yaitu :
a. Mencari literatur atau data-data yang berhubungan dengan
mikrokontroler, Visual Basic 6.0, dan semua komponen yang
dipakai dalam pembuatan alat tugas akhir ini dan mempelajarinya.
b. Mempelajari tentang dasar teori yang digunakan dalam
menyelesaikan tugas akhir.
c. Mendesain dan membuat program untuk mencetak dan memanggil
nomor antrian dengan menggunakan program bahasa Visual Basic
d. Merancang serta menguji sistem minimal Mikrokontroler AT89S52
sebagai pengendali sistem secara keseluruhan.
e. Menguji kinerja sistem secara keseluruhan serta mengambil data
dari hasil perancangan.
f. Menganalisa hasil dan membuat kesimpulan.
1.7 Sistematika Penelitian
Dalam laporan tugas akhir ini, pembahasan disajikan dalam enam bab
dengan sistematika pembahasan sebagai berikut :
BAB I PENDAHULUAN
Bab ini berisikan tentang latar belakang masalah,
perumusan masalah, batasan masalah, tujuan, manfaat, dan
sistematika penulisan pembuatan tugas akhir ini.
BAB II TINJ AUAN PUSTAKA
Pada bab ini dijelaskan tentang teori-teori serta
penjelasan-penjalasan yang dibutuhkan dalam pembuatan Sistem
Antrian Loket Berbasis Mikrokontroller.
BAB III ANALISA DAN PERANCANGAN SISTEM
Bab ini dijelaskan tentang garis besar dan fokus dari
rancangan aplikasi, juga berisi tentang alur proses program
Flowchart, Data Flow Diagram (DFD), Entity Relational
Diagram (ERD), dan Desain Antar muka.
BAB IV IMPLEMENTASI SISTEM
Pada bab ini berisikan bagaimana implementasi aplikasi
yang telah dibuat berdasarkan desain sebelumnya yang telah
dibuat.
BAB V UJ I COBA DAN EVALUASI
Pada bab ini menjelaskan tentang pelaksanaan uji coba dan
evaluasi dari pelaksanaan uji coba dari program yang
dibuat. Uji coba program dapat dilakukan pada akhir dari
tahap-tahap analisa sistem, desain sistem dan tahap
penerapan sistem atau implementasi sistem. Sasaran dari uji
coba program adalah untuk menemukan
kesalahan-kesalahan dari program yang mungkin terjadi sehingga
dapat segera diperbaiki.
BAB VI PENUTUP
Bab ini berisi kesimpulan yang diperoleh dari hasil
penganalisaan data dalam bab-bab sebelumnya. Juga berisi
tentang saran-saran yang diharapkan dapat bermanfaat dan
sesuai dengan tujuan penelitian tugas akhir ini.
2.1 Mik r okontr oler AT89S52
Mikrokontroler adalah salah satu dari bagian dasar dari suatu sistem
komputer. Meskipun mempunyai bentuk yang jauh lebih kecil dari suatu
komputer pribadi dan komputer mainframe, mikrokontroler dibangun dari
elemen-elemen dasar yang sama. Secara sederhana, komputer akan menghasilkan output
spesifik berdasarkan inputan yang diterima dan program yang dikerjakan. Seperti
umumnya komputer, mikrokontroler adalah alat yang mengerjakan
instruksi-instruksi yang diberikan kepadanya. Artinya, bagian terpenting dan utama dari
suatu sistem terkomputerisasi adalah program itu sendiri yang dibuat oleh seorang
programmer. Program ini menginstruksikan komputer untuk melakukan jalinan
yang panjang dari aksi-aksi sederhana untuk melakukan tugas yang lebih
kompleks yang diinginkan oleh programmer.
Mikrokontroler adalah mikroprosessor mini yang dirancang khusus untuk
aplikasi kontrol, dan dilengkapi dengan ROM, RAM dan fasilitas I/O pada satu
chip. Dengan kata lain, mikrokontroler adalah suatu alat elektronika digital yang
mempunyai masukan dan keluaran serta kendali dengan program yang bisa ditulis
dan dihapus dengan cara khusus, cara kerja mikrokontroler sebenarnya membaca
dan menulis data. Mikrokontroler tipe AT89S52 buatan Atmel merupakan salah
satu tipe mikrokontroler yang mempunyai arsitektur mikrokontroler 8051.
Mikrokontroler dengan arsitektur 8051 merupakan salah satu jenis arsitektur
bersifat low cost dan low performance. Arsitektur ini dikeluarkan pertama kali
oleh Intel dan kemudian menjadi sangat populer. Pada Intel seri – seri
mikrokontroler berarsitektur 8051 tergabung dalam satu keluarga mikrokontroler
yaitu keluarga MCS-51.Mikrokontroler ber-arsitektur 8051 baik dari keluarga
intel MCS-51 maupun dari vendor-vendor lain seperti Atmel, Phillips maupun
Siemens memiliki beragam tipe dan fasilitas, namun semuanya memiliki
arsitektur yang sama, serta set instruksi yang relatif tidak berbeda.
Mikrokontroler yang digunakan didalam proyek akhir ini adalah AT89S52
dari ATMEL yang merupakan keluarga MCS 51 yang banyak berada di pasaran.
Mikrokontroler ini merupakan mikrokontroller 8 bit yang merupakan single chip
microcontroller, dimana semua rangkaian termasuk memori dan I/O tergabung
dalam satu pak IC. (Eko Putra Agfianto: 2003)
Mikrokontroler AT89S52 memiliki fasilitas antara lain:
a. 4K Bytes In-System Programmable (ISP) Flash Memori
b. Range operasi 4.0V ke 5.5V.
c. Operasi Secara penuh Statis: 0 Hz ke 33 MHZ.
d. Tiga Level Program Memori Lock.
e. 256 x 8-bit RAM Internal.
f. 32 jalur I/O Programmable.
g. Dua 16-bit Timer/Counters.
h. Enam Sumber Interrupt.
j. Low-Power Idle dan Power-Down Modes.
k. Interrupt Recovery dari Power-Down Modes.
l. Tahan hapus isi sampai 1000 kali
AT89S52 adalah 8 bit CMOS mikrokomputer yang dilengkapi dengan 4
Kb Flash Memory, yang bekerja pada tegangan rendah dengan kemampuan tinggi.
IC ini diproduksi oleh Atmel dengan teknologi kepadatan tinggi (high
density), dengan non-valatile memori yang dapat diisi dengan program yang
intruksinya kompatibel dengan keluarga MCS-51.
Mengombinasikan CPU 8 bit serbaguna dengan Flash Memory pada
sebuah chip monolitik, Atmel 89S52 adalah sebuah mikrokomputer handal yang
menghasilkan banyak aplikasi kontrol menjadi lebih fleksibel dan berbiaya
rendah.
AT89S52 menyediakan fitur standar: 4 Kb Flash Memory, 256 Byte RAM,
32 jalur I/O yang full duplex (dapat mengirim dan menerima secara bersamaan),
komparator tegangan analog yang presisi, oscilator, dan generator clock yang On
Chip (sudah tersedia di dalam chip).
Dengan tambahan AT89S52 yang didesain secara Static-Logic untuk
beroperasi hingga ke frekuensi nol dan mendukung dua software penghemat daya
yang dapat dipilih.
Idle Mode (mode dimana sistem tidak sedang bekerja) akan menghentikan
CPU, namun RAM, timer/counter, serial port dan interupsi tetap dibiarkan
berfungsi. Power Down Mode menyimpan isi RAM, namun menghentikan
oscilator dan menonaktifkan seluruh fungsi chip sampai sistem direset secara
Gambar 2.1 Blok Diagram Mikrokontroler
2.1.1 Konfigurasi Pin
Berikut akan dijelaskan tentang konfigurasi pin dari mikrokontroler
AT89S52. Masing-masing dari pin memiliki fungsi tersendiri. Satu kumpulan pin yang memiliki fungsi sama dan diwakili oleh sebuah register atau
alamat tersendiri pada internal CPU-nya disebut juga port. (Budiharto W,
Gambar 2.2 Konfigurasi Pin
Berikut adalah penjelasan dari konfigurasi pin pada Gambar 2.2 :
a. VCC
Tegangan sumber
b. GND
Ground/nol
c. Port 0
Sebuah port 8-bit yang dapat dipakai untuk akses I/O 2 arah, sebagai port
output tiap pinnya dapat menurunkan delapan TTL input dan pin-pinnya dapat
d. Port 1
Port 8-bit yang dapat dipakai untuk akses 2 arah I/O, buffer output port 1
dapat menurunkan empat TTL input. Jika 1s dituliskan maka dapat dinaikkan
internal pull-upsnya dan dapat dipakai sebagai inputan. Sebagai inputan, port 1
akan secara eksternal menurunkan arus sumber dikarenakan ada internal pull-ups.
Pada Tabel 2.1 adalah fungsi alternative port 1.
Tabel 2.1 Fungsi Alternatif Port 1
e. Port 2
Sama dengan port 1, port 2 dapat mengeluarkan pengalamatan byte sampai
high-order selama akses pengalamatan dari eksternal program memori dan akses
ke eksternal data memori yang panjang serta menggunakan alamat 16-bit (MOVX
@DPTR). Pada akses ke eksternal data memori yang menggunakan alamat 8-bit
(MOVX @R1), port 2 mengeluarkan isi dari P2 Special Function Register.
f. Port 3
Adalah sebuah port yang dapat dipakai sebagai input atau outputan dengan
internal pull-ups. Dapat menurunkan empat TTL input, sebagai input pin pada
Por t Fungsi alter native
P1.5 MOSI (digunakan untuk ISP)
P1.6 MISO (digunakan untuk ISP)
port 3 akan dapat secara eksternal diturunkan oleh arus sumber atau sebagai
peredam sinyal yang disebabkan oleh pull-ups.
Port 3 menerima beberapa sinyal kontrol untuk pemrograman dan
verifikasi. Juga dapat melayani fungsi dari macam-macam fitur spesial dari
AT89S52 seperti yang ditunjukkan pada Tabel 2.2.
Tabel 2.2 Fungsi Alternatif Port 3
g. RST
Reset input. Pin membutuhkan keadaan high untuk 2 siklus mesin sampai
oscilator mengerjakan reset pada alat. Sesudah Watchdog timer, pin membutuhkan
keadaan high selama 98 periode oscilator. Bit DISRTO dalam SFR AUXR
(alamat 8EH) dapat digunakan untuk menonaktifkan reset. Dalam kondisi default
state bit DISRTO, reset akan berada dalam keadaan high jika telah diaktifkan.
h. ALE/PROG
Por t Pin Fungsi Alter natif
P3.0 RXD (serial input port)
P3.1 TXD (serial output port)
P3.2 INT0 (eksternal interrupt 0)
P3.3 INT1 (eksternal interrupt 1)
P3.4 T0 (timer 0 eksternal input)
P3.5 T1 (timer 1 eksternal input)
P3.6 WR (eksternal data memori write
strobe)
P3.7 RD (eksternal data memori read
Address Latch Enable adalah pulsa output untuk mengunci low byte pada
alamat selama akses ke eksternal memori. Pin ini juga berfungsi sebagai inputan
pulsa program selama Flash Programming. Dalam operasi normal ALE
dikeluarkan secara konstan pada 1/6 frekwensi oscilator dan dimungkinkan
digunakan untuk perwaktuan secara eksternal atau dengan tujuan pewaktuan.
Bagaimanapun bahwa satu dari pulsa ALE akan diloncati selama tiap akses ke
eksternal data memori. Operasi pada ALE dapat dinonaktifkan dengan menyetting
bit 0 pada SFR dengan alamat 8EH. Dengan penyettingan bit, ALE hanya akan
aktif selama perintah MOVX atau MOVC. Dengan cara lain pin dengan bit
rendah akan di pull-high. Penonaktifan setting bit pada ALE tidak akan ada
hasilnya jika dieksekusi secara eksternal mode pada mikrokontroller.
i. PSEN
Program Store Enable berfungsi untuk membaca strobe yang menuju
memori eksternal program. Jika chip AT89S51 melakukan eksekusi kode dari
eksternal program memori, PSEN hanya dapat aktif dua kali tiap siklus mesin,
kecuali pengaktifa 2 PSEN dilompati selama tiap akses ke eksternal data memori.
j. EA/VPP
External Access Enable harus terhubung ke GND untuk mengaktifkan
perintah yang dimaksud dan mengambil kode dari lokasi eksternal program
memori yang dimulai dari 0000H sampai FFFFH. Bagaimanapun bila bit 1 telah
dikunci lewat program, EA akan secara internal terhubung ke reset. EA
seharusnya tersambung juga ke VCC untuk mengeksekusi internal program. Pin
ini juga menerima tegangan 12 volt untuk program pengaktifan tegangan (VPP)
k. XTAL1
Yaitu inputan oscilator pembalik dan inputan ke pengoperasian clock
internal pada sirkuit.
l. XTAL2
Outputan dari oscilator pembalik.
m. SFR
Sebuah peta pada chip memori area
2.1.2 Dasar Mikr okontr oler
Sebuah mikrokontroler memiliki beberapa perlengkapan dasar, antara lain
adalah CPU, Alamat, Data, Pengendali, Memori, RAM, ROM, Input/ Output.
a. Central Processing Unit (CPU)
Unit pengelola pusat (CPU) terdiri atas dua bagian yaiu unit pengendali
(CU) serta unit aritmatika dan logika (ALU). Fungsi utama unit pengendali adalah
untuk mengambil, mengkode, dan melaksanakan urutan instruksi pada sebuah
program yang tersimpan dalam memori. Sedangkan unit aritmatika atau
perhitungan bertugas untuk menangani operasi perhitungan maupun boolean
dalam program.
b. Alamat
Sistem berbasis mikroprosesor atau mikrokontroler pada umumnya
mempunyai lebih dari satu device / peripheral seperti memori, input output,
Analog to Digital Converter (ADC), dan lain-lain. Masing-masing device ini perlu
tiap-tiap rumah. Bayangkan apa yang terjadi kalau rumah-rumah itu tidak diberi
alamat, pasti kita akan kebingungan untuk menuju ke rumah tertentu. Demikian
pula dengan mikrokontroler, supaya dapat mengakses suatu device maka
mikrokontroler tersebut harus mengetahui alamat device yang akan diakses.
Address decoder akan memberikan alamat untuk tiap device.
c. Data
CPU mikrokontroler AT89S52 mempunyai lebar bus 8 bit. Pena data 8 bit
pada AT89S52 (D0, D7) ini terletak didalam chip karena jumlah pena luar pada
mikrokontroler terbatas. Pena untuk bus data di multipleks dengan alamat A0, A7
pada port 0, sehingga sering juga disebut AD0, AD7.
d. Pengendali
Selain bus alamat dan bus data mikroprosesor atau mikrokontroler
dilengkapi juga dengan bus pengendali (control bus), yang fungsinya untuk
menyerempakkan operasi mikroprosesor atau mikrokontroler dengan operasi
rangkaian luar. Contoh pena pengendali ini antara lain ALE, PSEN, WR, RD,
interupsi dan lain-lain.
e. Memori
“Kecanggihan” sebuah komputer atau kontroller ditentukan oleh program
yang kita buat. Memori digunakan sebagai tempat untuk menimpan program, data
dan stack. Pr ogr am adalah kumpulan instruksi untuk mengerjakan suatu
pekerjaan. Data adalah variabel-variabel yang dapat di ubah saat program
berjalan. Stack digunakan untuk menyimpan alamat kembali (return address) dan
tersedia 2 jenis memori yaitu ROM dan RAM (Read Only Memory) bersifat hanya
dibaca dan isinya tidak hilang bila catu daya dimatikan, digunakan untuk
menyimpan program. Sedangkan RAM (Random-Access Memory) bersifat bisa
dibaca dan ditulis tetapi isinya bisa hilang bila catu daya dimatikan, digunakan
untuk menyimpan data stack. Dengan berkembangannya teknologi batas antara
ROM dan RAM kini agak kabur. ROM sekarang bisa ditulisi untuk tipe flash atau
EEROM. RAM sekarang juga tidak kehilangaan isinya saat catu daya dimatikan
yaitu pada tipe NVRAM (Non-Volatile RAM).
Memori di dalam Mikrokontroler berukuran terbatas. Untuk itu dan harus
tahu persis berapa kebutuhan memori yang digunakan. Kekurangan memori
menyebabkan program anda tidak berjalan dengan benar, terlalu banyak memori
yang tidak dipakai juga menyebabkan cost yang sia-sia.
f. RAM
RAM (Random Access Memory) pada mikrokomputer bisa mencapai ukuran
sekian megabyte dan bisa di-upgrade ke ukuran yang lebih besar dan berlokasi di
luar chip CPU-nya, sedangkan RAM pada mikrokontroler ada di dalam chip
mikrokontroler yang bersangkutan dan ukurannya sangat minim, misalnya 128
byte, 256 byte dan seterusnya dan ukuran yang relatif kecil ini pun dirasa cukup
untuk aplikasi-aplikasi mikrokontroler.
Pada 256 byte bagian bawah, perhatikan Ga mbar 2.3. 32 byte pertama
(00h-1Fh) dikelompokkan menjadi 4 bank dari 8 register. Instruksi pada program
mengenalnya dengan sebutan R0 sampai R7. Dua bit pada Program Status Word
instruksi yang mengakses register akan menghemat kode mesin dibandingkan
dengan instruksi yang mengakses lokasi secara langsung (direct addressing).
16 byte diatas bank register yaitu pada alamat 20h sampai 2Fh merupakan
daerah yang dapat dialamati secara bit. Alamat bit-bit pada daerah ini adalah 00h
sampai 7Fh.
Pendek kata, untuk RAM internal 256 byte bagian bawah, 32 byte pertama
dapat digunakan sebagai bank register, 16 byte berikutnya dapat dialamati perbit,
dan sisanya 80 byte dapat digunakan seperti biasa.
Gambar 2.3 256 byte RAM Internal Bagian Bawah (Lower)
RAM internal 256 byte atas merupakan tempat register fungsi khusus
(SFR). Gambar 2.4. menunjukan SFR untuk Mikrokontroler seri 89S52. SFR ini
akumularor dan lainnya. Bagian-bagian yang kosong digunakan untuk
pengembangan divais Mikrokontroller selanjutnya.
Gambar 2.4 256 byte RAM Bagian Atas
g. ROM
ROM (Read Only Memory) diisi saat proses produksinya. Informasi yang
dituliskan harus dipesan oleh pelanggan sebelum chip diberikan. Dalam sistem
mikrokontroler, informasi ini dapat dibaca oleh CPU tetapi tidak dapat dirubah.
ROM adalah memori yang paling sederhana, kecil, dan murah. Sifat memori
program ini non volatile, artinya tetap akan tersimpan walaupun tidak diberi catu
h. Input/ Output
Diagram latch dan I/O buffer tiap bit dari Port 0 - Port 3. Port 1,2, dan 3
mempunyai pull-up internal. Sedangkan Port 0, konfigurasi outputnya adalah
open drain. Setiap bit I/O ini berdiri sendiri, jadi dapat berfungsi sebagai input
atau output tanpa tergantung satu sama lain. Port 0 dan 2 tidak dapat dipakai
sebagai I/O bila digunakan sebagai jalur alamat / data. Bila port-port tersebut
ingin difungsikan sebagai input, maka bit latch harus berisi '1', yang akan
mematikan output driver FET. Sehingga pin-pin Port 1,2, dan 3 akan 'ditarik' ke
high oleh pull-up internal, tetapi bila diinginkan dapat juga 'ditarik' ke low dengan
sumber external. Port 0 agak berbeda, karena tidak menggunakan pull-up internal.
FET pull-up pada output driver P0 (lihat gambar 6A) hanya digunakan pada saat
Port mengeluarkan '1' selama akses memori external, selain keadaan ini FET
pull-up tidak aktif. Akibatnya bila bit-bit P0 berfungsi sebagai output maka bersifat
open drain. Penulisan logika '1' ke bit latch menyebabkan kedua FET tidak
bekerja, sehingga pin dalam keadaan mengambang (floating). Pada kondisi ini pin
dapat berfungsi sebagai high impedance input. Port 1,2, dan 3 sering disebut
dengan 'quasibidirectional' karena mempunyai pull-up internal. Saat berfungsi
sebagai input maka mereka akan 'ditarik' ke high dan akan bersifat sebagai sumber
arus bila 'ditarik' ke low secara eksternal. Port 0 sering disebut sebagai
'true-bidirectional', karena bila dikonfigurasikan sebagai input maka pin-pinnya akan
mengambang. Pada saat reset semua port latch akan berlogika ’1’ (diambil dari
pustaka no.1,2). Berikut adalah rangkaian bit latch dan I/O buffer, dapat dilihat
Gambar 2.5 Bit Latch Dan I/O Buffer
2.2 BASCOM-8051 Sebagai COMPILER BASIC
Basic adalah suatu bahasa pemrograman tingkat tinggi karena semua
variabelnya dan konstanta menyerupai bahasa manusia. BASCOM-8051 hadir
sebagai compiler program untuk memudahkan user. Dalam BASCOM-8051
terdapat program simulasi untuk melihat jalannya program setiap step-nya (
[image:31.612.130.506.66.414.2]2.2.1 Kar akter dalam BASCOM
Dalam program BASCOM, karakter dasar terdiri atas alphabet (A-Z dan
a-z), karakter numerik (0-9), dan karakter spesial. Pada Tabel 2.3 berikut ini akan
[image:32.612.200.481.242.702.2]dijelaskan karakter dalam BASCOM-8501
Tabel 2.3 Karakter Dalam BASCOM-8051
Ka rakter Nama
Blank atau spasi
' Apostrophe
* Asterisk (simbol perkalian)
+ Plus sign
, Comma
- Minus sign
. Period (decimal point)
/ Slash (division symbol) will be handled
as \
: Colon
" Double quotation mark
; Semicolon
< Less than
= Equal sign (assignment symbol or
relational operator)
> Greater than
\ Backslash (integer/word division
symbol)
' Single quotation mark (apostrophe)
2.2.2 Tipe Data
Setiap variabel dalam BASCOM punya tipe data yang menunjukkan daya
tampungnya. Hal ini berhubungan dengan penggunaan memori mikrokontroler.
[image:33.612.208.507.265.545.2]Pada Tabel 2.4 adalah tipe data pada BASCOM.
Tabel 2.4 Tipe Data
Tipe Data Ukuran (byte) Range
Bit 1/8
Byte 1 0 s/d 255
Integer 2 -32,768 s/d +32,768
Word 2 0 s/d 65535
Long 4 -2147483648 s/d
+2147483648
Single 4
String hingga 254 byte
2.2.3 Var iabel
Berfungsi sebagai tempat penyimpan data sementara, misalnya untuk
menampung hasil perhitungan, data hasil pembacaan register, dan lain sebagainya.
Variabel merupakan pointer yang menunjuk pada alamat memori fisik di
Ada beberapa aturan dalam penamaan sebuah variabel :
a. Nama variabel maksimum terdiri atas 32 karakter
b. Karakter biasa berupa angka atau huruf
c. Nama variabel harus dimulai dengan huruf
d. Variabel tidak boleh menggunakan kata-kata yang digunakan oleh BASCOM
sebagai perintah, pernyataan, internal register, dan nama operator (AND, OR,
DIM, dll).
Sebelum digunakan, maka variabel harus dideklarasikan terlebih dahulu.
Pada Gambar 2.6 berikut ini adalah beberapa cara mendeklarasikan sebuah
variabel dan diikuti nama dan tipe datanya.
Gambar 2.6 Pendeklarasian Variabel Dalam BASCOM
2.2.4 Alias
Dengan menggunakan alias, variabel yang sama dapat diberikan nama
[image:34.612.174.483.343.546.2]alias digunakan untuk mengganti nama variabel yang telah baku, seperti port
mikrokontroler.
LEDBAR alias P1
Tombol1 alias P0.1
Tombol2 alias P0.2
Dengan deklarasi seperti diatas, perubahan pada tombol1 akan mengubah
kondisi P0.1. Selain mengganti nama port, kita dapat pula menggunakan alias
untuk mengakses bit tertentu dari sebuah variabel yang telah dideklarasikan.
Dim Ledbar as byte
Led1 as Ledbar . 0
Led2 as Ledbar . 1
Led3 as Ledbar . 2
2.2.5 Konstanta
Selain variabel kita mengenal pula konstanta, perbedaannya dengan
variabel biasa adalah nilai yang dikandungnya tetap. Dengan konstanta, kode
program yang kita buat akan lebih muda dibaca dan dapat mencegah kesalahan
penulisan pada program kita. Misalnya, kita akan lebih muda menulis phi dari
pada menulis 3,14159867. Sama seperti variabel, agar konstanta biasa dikenali
program, maka harus dideklarasikan terlebih dahulu. Berikut adalah cara
pendeklarasian sebuah konstanta :
Dim A As Const 5
Dim B1 As Const &B1001
Const Cbyte = &HF
Const Cint = -1000
Const Csingle = 1.1
Const Cstring = “ test ”
2.2.6 Ar r ay
Dapat digunakan pada sekumpulan variabel dengan nama dan tipe yang
sama. Untuk mengakses variabel tertentu dalam array harus menggunakan indeks.
Indeks harus berupa angka dengan tipe data byte, integer, atau word. Artinya, nilai
maksimum sebuah indeks sebesar 65535.
Proses pendeklarasian sebuah array hampir sama dengan variabel, namun
perbedaannya kita pun mengikutkan jumlah elemennya. Berikut adalah contoh
pemakaian array :
Dim kelas ( 10 ) as byte
Dim c as Integer
For C = 1 To 10
A ( C ) = C
P1 = A ( C )
Next
Program diatas membuat sebuah array dengan nama ‘ kelas ’ yang berisi
seluruh elemen ( 1 – 10 ) dan kemudian seluruh elemennya diisikan dengan nilai
C yang berurutan, Untuk membacanya, kita menggunakan indeks dimana elemen
disimpan, pada program diatas, elemen-elemen array-nya dikeluarkan ke port 1
dari mikrokontroler.
Berikut adalah beberapa contoh kasus tentang cara menggabungkan,
memodifikasi, membandingkan, atau mendapatkan informasi tentang sebuah
pernyataan dengan menggunakan operator-operator yang tersedia dalam
BASCOM.
a. Operator Aritmatika
Digunakan dalam perhitungan meliputi tambah ( + ), kurang ( - ), bagi ( / ),
dan kali ( * ).
b. Operator Relasi
Operator ini berfungsi membandingkan nilai sebuah angka. Fungsi dari
[image:37.612.168.453.371.575.2]operator relasi dapat dilihat pada Tabel 2.5 berikut ini.
Tabel 2.5 Operator Relasi
Oper ator Relasi Per nyataan
= Sama dengan X = Y
< > Tidak sama
dengan X < > Y
< Lebih kecil dari X < Y
> Lebih besar dari X > Y
< = Lebih kecil/sama
dengan X < = Y
> = Lebih besar/sama
dengan X > = Y
c. Operator Logika
Operator digunakan untuk menguji sebuah kondisi atau memanipulasi bit
dapat digunakan juga untuk menguji sebuah byte dengan pola bit tertentu yaitu
AND, OR, NOT, dan XOR seperti :
DIM A As Byte A = 63 And 19 PRINT A
A = 10 Or 9 PRINT A Output 16 11
d. Operator Fungsi
Digunakan untuk melengkapi operator yang sederhana.
2.2.8 Kontr ol Pr ogram
Keunggulan sebuah pemrograman terletak pada kontrol program. Dengan
kontrol program, kita akan mengendalikan alur sebuah program dan menentukan
apa yang harus dilakukan oleh sebuah program ketika menemukan kondisi
tertentu. Kontrol program meliputi kontrol pertimbangan kondisi dan keputusan,
kontrol pengulangan, serta kontrol alternatif. BASCOM menyediakan beberapa
kontrol program yang sering digunakan untuk menguji sebuah kondisi,
perulangan, dan pertimbangan sebuah keputusan. Berikut adalah beberapa kontrol
program yang sering digunakan dalam pemrograman dengan BASCOM.
2.2.8.1 If…Then
Dengan pernyataan If…Then, kita dapat mengetes kondisi tertentu,
kemudian menentukan tindakan yang sesuai dengan kondisi yang
diinginkan, Sintaks penulisannya sebagai berikut :
IF < syarat kondisi > THEN
< pernyataan ke-2 >
< pernyataan ke-n >
END IF
Jika ada dua kondisi atau lebih yang akan diuji, maka sintaks-nya
menjadi :
IF < syarat kondisi 1 > THEN
< blok pernyataan ke 1 >
ELSEIF < syarat kondisi 2 > THEN
< blok pernyataan ke 2 >
ELSEIF < syarat kondisi n > THEN
< Blok pernyataan ke n >
ELSE
< blok pernyataan >
END IF
Pada sintaksis diatas, BASCOM akan menguji kondisi 1, jika
kondisi 1 tidak terpenuhi, maka BASCOM akan menguji kondisi 2,
begitu seterusnya hingga BASCOM menemukan satu kondisi yang
memenuhi. Jika kondisi tidak memenuhinya, maka BASCOM akan
mengeksekusi blok pernyataan ELSE.
2.2.8.2 Select…Case
Perintah Select…Case akan mengeksekusi beberapa blok
pernyataan tergantung pada nilai variabelnya. Perintah mirip
dengan perintah If…Then, namun memiliki kelebihan, yaitu
kemudahan dalam penulisannya. Sintaksisnya sebagai berikut :
SELECT…CASE variabel
CASE test2: statements
CASE ELSE : statements
END SELECT
2.2.8.3 While…End
Perintah While…wend akan mengeksekusi sebuah pernyataan
secara berulang ketika masih menemukan kondisi yang sama.
Perintah akan berhenti jika ada perubahan kondisi dan melakukan
perintah selanjutnya. Sintaksisnya sebagai berikut :
WHILE < syarat kondisi >
< pernyataan >
WEND
2.2.8.4 Do…Loop
Perintah DO… Loop digunakan untuk mengulangi sebuah blok
pernyataan terus-menerus. Untuk membatasi perulangannya, kita
dapat menambahkan sebuah syarat kondisi agar perulangannya
berhenti dan perintahnya menjadi Do…Loop Until. Sintaksisnya
sebagai berikut :
Do
< blok pernyataan >
Loop
Dengan perintah Do…Loop Until :
Do
< blok pernyataan >
Loop Until < syarat kondisi >
Perintah For…Next digunakan untuk mengeksekusi sebuah blok
pernyataan secara berulang. Perintah hampir sama dengan perintah
Do…Loop, namun pada perintah For…Next nilai awal dan akhir
perulangan serta tingkat kenaikan atau turunnya bisa ditentukan.
Penggunaannya sebagai berikut :
FOR var = start TO/DOWNTO end [ STEP value ]
< blok pernyataan >
Next
Untuk menaikkan nilai perulangan, gunakan To, sedangkan untuk
menurunkan gunakan Downto. Tingkat kenaikan merupakan
pilihan , sehingga kita bisa menggunakannya atau tidak, Jika nilai
kenaikan tidak ditentukan maka secara otomatis BASCOM akan
menentukan nilainya, yaitu 1.
2.2.8.6 Exit
Perintah Exit digunakan untuk keluar secara langsung dari blok
program For…Next, Do…Loop, Sub…End Sub, While…Wend.
Sintaksis penulisannya adalah :
EXIT [ Do ] [ For ] [ While ] [ Sub ]
Sintaksis selanjutnya setelah EXIT bisa bermacam-macam, tergantung pada
perintah Exit berada pada perintah apa. Jika pada perintah Do…Loop, maka
sintaksisnya menjadi Exit Do.
Microsoft office Access 2003 adalah salah satu program dari Microsoft
Office yang dijalankan dengan menggunakan sistem operasi Windows yang
berguna untuk penanganan data dan informasi secara struktural: membuat,
menyimpan, merubah, dan meng-access-nya kembali dalam sebuah Database.
Singkatnya: Microsoft Access adalah program aplikasi pembuat database.
Pengertian Database: Database adalah sebuah file yang mengandung
banyak data dan informasi yang sudah terorganisir secara rapi dan sistematis
dalam berbagai elemen pembentuknya yaitu: Table, Query, Form, Report, Page,
Macro, dan Modul.
Tabel :Sebuah menu di dalam database dalam bentuk baris dan kolom, yang
digunakan untuk memasukan data.
Query :Sebuah menu di dalam database yang sudah terkait dengan
perintah-perintah khusus yang berfungsi untuk melakukan pencarian data,
mengurutkan data, etc.
Pages :Sebuah fasilitas untuk mendesain bentuk tampilan web yang akan
dihubungkan dengan internet.
Macros :Sebuah fasilitas membuat perintah pendek (shortcut) untuk
menjalan-kan operasi tertentu.
Modules :Kumpulan deklarasi, statemen, dan prosedur yang disimpan dalam satu
tempat dan satu nama.
Yang perlu diperhatikan bersama adalah dalam pembuatan sebuah
2.4 Visual Basic 6.0
Visual Basic 6.0 for windows adalah bahasa pemrograman yang bekerja
dalam buku MS-Windows. VB dapat memanfaatkan kemampuan MS-Windows
secara optimal. Kemampuannya dapat dipakai untuk merancang program aplikasi
yang berpenampilan seperti program aplikasi lain yang berbasis MS-Windows.
Sampai tahun 2005, versi VB terakhir adalah micosoft Visual Basic 2005,
yang dalam versi beta disebut dengan kode “Wwidbey”. VB versi 6 sendiri di
Indonesia masih banyak digemari programmer karena tidak membutuhkan
persyaratan hardware yang berat paketnya cukup ringkas program mudah dipakai.
Dan beberapa alasan lainnya.
Kata “Basic’ merupakan bagian bahasa BASIC (Beginners All Purpose
Symbolic Instruction Code), yaitu sebuah bahasa pemrograman yang dalam
sejarahnya sudah banyak digunakan oleh para programer untuk menyusun
aplikasi. Visual Basic dikembangkan dari bahasa pemrograman BASIC dan
sekarang berisi banyak statemen, fungsi, dan keyword, yang beberapa diantaranya
terhubung ke Windows GUI (graphical user interface).
Visual Basic merupakan salah satu RAD (Rapid Application Development)
Tool yang sangat terkenal mudah untuk dipelajari, digunakan dan cepat dalam
membangun suatu aplikasi visual berbasis Windows (98, ME maupun Win 2000).
Bahkan, dengan adanya motto yang diluncurkan oleh competitor Microsoft, SUN,
mempermudah anda untuk mengkonversi aplikasi VB anda yang jalan di
Windows ke platform lainnya, seperti Linux, AIX, dan masih banyak lagi. Tetapi
untuk bagian ini, penulis tidak akan mengajak anda untuk melihat ke arah
tersebut, melainkan di sini penulis akan memberikan anda materi-materi yang
dibuat sesingkat dan semudah mungkin agar anda dapat belajar dan menguasai
bahasa pemrograman visual ini dengan cepat.
Visual Basic menawarkan kepada anda untuk membuat User Interface
(antar muka pengguna) anda dalam waktu singkat sekali. Bagi anda yang pernah
bermain dengan C, Turbo Pascal, Turbo Basic, anda tentu merasakan berapa
banyak waktu yang anda habiskan untuk mendesign User Interface anda sebelum
anda konsentrasi ke flow program anda (business logic).
Dengan melalui Visual Basic, konsep pengembangan aplikasi akan
dimulai dengan pembentukkan user interface, kemudian mengatur properti dari
objek-objek yang digunakan dalam user interface (warna tombol, warna layar,
judul layar, dll) , dan baru dilakukan penulisan kode program untuk menangani
kejadian-kejadian (event).
Visual basic pada dasarnya adalah bahasa pemrogaman computer. Bahasa
pemrograman adalah perintah-perintah atau intruksi yang dimengerti oleh
computer untuk melakukan tugas-tugas tertentu. Visual basic adalah salah satu
bahasa yang wajib dipelajari oleh berbagai kalangan, jika mereka ingin sukses di
dunia komputer.( Mico Pardosi : 2003 )
Sejak dikembangkan pada tahun 80-an, visual basic kini telah mencapai
versinya yang ke-6, beberapa keistimewaan utama dari basic 6 ini diantaranya
seperti :
a. Menggunakan platform pembuatan program yang diberi nama
Developer Studio, yang memiliki tampilan dan sarana yang sama
dengan visual C++ dan visual J++. Dengan begitu kita dapat
bermigrasi atau belajar bahasa pemrograman lainnya dengan mudah
dan cepat, tanpa harus dari nol lagi.
b. Memiliki compiler andal yang dapat menghasilkan file executable
yang lebih cepat dan efisien dari sebelumnya.
c. Memiliki beberapa tambahan sarana Winzard yang baru.Winzard
adalah sarana yang memudahkan didalam pembuatan aplikasi dengan
mengotomatisasi tugas-tugas tertentu.
d. Tambahan kontrol-kontrol yang baru lebih canggih serta peningkatan
kaidah struktur bahasa visual basic.
e. Kemampuan membuat active X dan fasilitas internet yang lebih cepat.
f. Sarana akses data yang lebih cepat dan andal untuk membuat aplikasi
database yang berkemampuan tinggi.
g. Visual Basic 6 memiliki beberapa versi atau edisi yang disesuikan
dengan kebutuhan pemakai.
2.4.2 Lingkungan Visual Bsic 6.0
adalah mengenal IDE (Integrated Developement Environment) Visual Basic yang
merupakan lingkungan pengembangan terpadu (Integrated Developement
Environment) bagi programmer dalam mengembangkan aplikasinya.
2.4.3 Menjalankan IDE
Salah satu cara untuk mengaktifkan IDE Visual Basic adalah
menjalankannya dari Menu Star t, pilih Micr osoft Visual Basic 6.0 dan akhirnya
pilih shortcut Microsoft Visual Basic 6.0.
2.4.4 Memilih J enis Pr oject
Setelah anda menjalankan VB, maka IDE VB pertama kali akan
menampilkan kotak dialog "New Project" kepada anda, seperti yang bisa anda
lihat pada Gamba r 2.7 :
Gambar 2.7 Tampilan pilihan program pada Visual Basic 6.0
2.4.5 J endela IDE
Setelah anda memilih Standard .Exe untuk proyek yang akan kita coba
bahas di sini, maka VB akan menampilkan IDE dimana tempat kita akan memulai
membuat aplikasi sederhana kita. Kita akan belajar mengenali semua
[image:47.612.133.514.303.697.2]Gambar 2.8 IDE Visual Basic 6.0
Keterangan :
a. Menubar
Pada bagian ini terdapat menu-menu dasar yang akan digunakan
selama perancangan program.
Gambar 2.9 Menubar
b. Toolbar
Pada bagian ini ditampilkan icon-icon dari menu utama yang ada pada
menubar. Ikon yang fungsinya sama dengan menu, tetapi dapat
digunakan dengan lebih cepat karena sebuah ikon mewakili satu
perintah tertentu. Contohnya adalah ikon Open, Save, Copy, Paste,
Undo dan sejenisnya
Gambar 2.10 Toolbar
c. Toolbox
Digunakan untuk pemilihan kontrol-kontrol yang akan digunakan oleh
icon toolbox yang memiliki fungsi masing-masing. Kita akan belajar
semua control-control ini dalam module-module berikutnya.
Gambar 2.11 Toolbox Visual Basic 6.0
Adapun secara garis besar fungsi dari masing-masing
kontrol-kontrol tersebut adalah sebagai berikut :
a. Pointer bukan merupakan suatu kontrol; gunakan icon ini
ketika anda ingin memilih kontrol yang sudah berada pada
[image:49.612.237.417.165.510.2]b. PictureBox adalah kontrol yang digunakan untuk
menampilkan image dengan format: BMP, DIB (bitmap),
ICO (icon), CUR (cursor), WMF (metafile), EMF (enhanced
metafile), GIF, dan JPEG.
c. Label adalah kontrol yang digunakan untuk menampilkan
teks yang tidak dapat diperbaiki oleh pemakai.
d. TextBox adalah kontrol yang mengandung string yang dapat
diperbaiki oleh pemakai, dapat berupa satu baris tunggal, atau
banyak baris.
e. Frame adalah kontrol yang digunakan sebagai kontainer bagi
kontrol lainnya.
f. CommandButton merupakan kontrol hampir ditemukan pada
setiap form, dan digunakan untuk membangkitkan event
proses tertentu ketika pemakai melakukan klik padanya.
g. CheckBox digunakan untuk pilihan yang isinya bernilai
yes/no, true/false.
h. OptionButton sering digunakan lebih dari satu sebagai pilihan
terhadap beberapa kontrol yang hanya dapat dipilih satu.
i. ListBox mengandung sejumlah item, dan user dapat memilih
lebih dari satu (bergantung pada property MultiSelect).
j. ComboBox merupakan konbinasi dari TextBox dan suatu
ListBox dimana pemasukkan data dapat dilakukan dengan
k. HscrollBar dan VscrollBar digunakan untuk membentuk
scrollbar berdiri sendiri.
l. Timer digunakan untuk proses background yang diaktifkan
berdasarkan interval waktu tertentu. Merupakan kontrol
non-visual.
m. DriveListBox, DirListBox, dan FileListBox sering digunakan
untuk membentuk dialog box yang berkaitan dengan file.
n. Shape dan Line digunakan untuk menampilkan bentuk seperti
garis, persegi, bulatan, oval.
o. Image berfungsi menyerupai image box, tetapi tidak dapat
digunakan sebagai kontainer bagi kontrol lainnya. Sesuatu
yang perlu diketahui bahwa kontrol image menggunakan
resource yang lebih kecil dibandingkan dengan PictureBox
p. Data digunakan untuk data binding
q. OLE dapat digunakan sebagai tempat bagi program eksternal
seperti Microsoft Excel, Word, dll.
d. Jendela Form
Form adalah area tampilan yang berhubugan dengan sebuah jendela
yang dapat dilihat ketika aplikasi berjalan. Pada form ini dapat
Gambar 2.12 Jendela Form
e. Jendela Kode
Jendela kode digunakan untuk menuliskan source code dari program
yang kita buat.
f. Project Explorer
Project Explorer akan menampilkan form-form dan modul yang ada
didalam program yang kita buat. Dengan project explorer kita dapat
berpindah-pindah dari satu form ke form yang lain.
Gambar 2.13 Project Explorer
g. Jendela Properties
Digunakan untuk mengatur sifat (properti) dari form-form atau
kontrol-kontrol. Isi dari window properties ini dapat berubah-ubah
[image:52.612.258.431.338.472.2] [image:52.612.254.445.615.726.2]Ga mbar 2.14 Jendela Propertis
h. Jendela Form Layout
Digunakan untuk mengatur posisi (tata letak) form pada layer monitor
ketika program dijalankan.
2.5 Ker angka Berpikir
Kerangka berfikir adalah anggapan dasar yang diperkirakan dapat menjadi
acuan dalam melakukan penelitian dan merupakan persyaratan untuk
memecahkan masalah. Antrian terdapat dimana-mana, misalnya para pembeli
yang menunggu giliran, para penonton film yang antri untuk membeli karcis,
orang yang akan membayar rekening (PDAM, listrik, telepon) dan sebagainya.
Sebuah problem “antrian secara manual” terdapat, apabila orang-orang
atau obyek-obyek datang pada suatu tempat untuk dilayani tetapi kemudian
menghadapi keterlambatan disebabkan karena mekanisme pelayanan mengalami
kesibukan. Petugas antrian kesulitan menentukan orang yang terlebih dahulu
untuk dilayani karena obyek yang melakukan antrian tidak tertib atau saling
menyerobot.
Sistem antrian pada dasarnya merupakan suatu sistem arus bertahap yang
mencangkup “ INPUT “ – “ PROSES” – “ OUTPUT” dimana setiap fase merupakan
maka dibuatlah sistem antrian secara otomatis. Sistem antrian ini menggunakan
komputer sebagai sarana kontrol.
Prosedur sistem antrian otomatis dengan menggunakan computer
memaksa orang-orang atau obyek yang melakukan antrian harus berjalan
secara tertib sesuai dengan urutan. Orang yang telah mengambil nomor antrian
tersebut tinggal menunggu pemanggilan nomor yang dimiliki untuk melakukan
transaksi pada loket antrian. Berikut ini gambar diagram mekanisme sistem
antrian dengan menggunakan komputer
Gambar 2.15 Diagram Sistem Antrian Otomatis Menggunakan Komputer
PROSES
K omputer menggunak an progr am visual basic mengolah masukan data
ters ebut
INPUT
Obyek/Orang yang melakukan antrian menekan tombol cetak
untuk pengambi lan nomor antrian
OUTPUT
1.Print out nomor urut antrian
2..Pemanggilan Nomor Antri an 3.Tampilan Display
Nomor Antrian
Pengolah data melalui program menghasilkan urutan
[image:54.612.127.498.307.540.2]ANALISIS DAN PERANCANGAN SISTEM
Pada bab ini merupakan bagian perencanaan dan bagian pembuatan
perangkat lunak dan perangkat keras, yang akan dibahas tentang langkah-langkah
perencanaan dan pembuatan tugas akhir, yang merupakan pokok bahasan utama
dalam pembuatan tugas akhir ini
3.1 Analisis Sistem
Pada bab ini, dibuat perancangan dan pembuatan dari sistem informasi
system antrian yang semula manual kemudian di ubah menjadi sistem otomatis.
Antrian adalah kegiatan orang-orang atau obyek-obyek datang pada suatu tempat
bediri berderet-deret menunggu giliran untuk dilayani (membeli karcis film dsb).
Menurut (Winardi :1989) sifat fundamental problema antrian mencangkup suatu
imbangan antara waktu menunggu dan waktu pelayanan. Pernyataan tersebut
sangat kontras sekali dengan perilaku antri di Indonesia. Perilaku antri secara
tidak tertib atau saling menyerobot masih melekat pada sifat masyarakat
Indonesia. Alasan waktu yang mendesak atau tidak mau menunggu giliran dan
tidak ada aturan dalam mekanisme antrian membuat budaya menyerobot tersebut
selalu ada. Hal tersebut membuat petugas loket antrian mengalami kesulitan saat
melayani orang di depan loket menentukan orang yang pertama kali harus
mendapat pelayanan atau service, apalagi jika orang yang mengantri dalam jumlah
Penting sekali bahwa konsumen harus mendapatkan pelayanan secara
baik. Apabila hambatan – hambatan harus dikurangi, maka perubahan dalam
mekanisme prosedur “antrian” harus dilaksanakan tanpa menurunkan kualitas
pelayanan. Sasarannya adalah: bagaimana cara mengubah perilaku tidak
tertib/saling menyerobot pada system antrian. Menggunakan asas tata tertib
“masuk pertama, keluar pertama” (FIFO = First-In, First-Out) yaitu bila entitas
yang datang melakukan antrian pertama maka akan mendapat pelayanan pertama
sesuai dengan waktu kedatangan. Layanan antrian diberikan pada entitas
berikutnya yang telah menunggu lebih lama Memperhatikan hal-hal di atas,
maka dibuatlah sistem antrian otomatis menggunakan bantuan komputer
sebagai sarana kontrol.
Prosedur antrian otomatis menggunakan komputer yaitu komputer
secara terprogram akan memberikan nomor urutan pada setiap orang yang
akan mengantri. Nomor urut inilah yang menjadi kunci dalam melakukan
pelayanan antrian. Pada pendekatan simulasi, untuk menyelesaikan persoalan
sistem antrian akan lebih mudah dilakukan bila dimulai dengan membangun
model percobaan yang berupa prototipe dari suatu sistem antrian. Selanjutnya
untuk melakukannya perlu memperhatikan tiga unsur penting dalam pemodelan
simulasi, yaitu Sistem, Entities, dan Attributes.
a. Sistem yang akan digunakan yaitu berupa sistem antrian. Prototipe ini dibuat
khusus untuk mengatur antrian agar dapat berjalan secara tertib.
b. Entities yang dibutuhkan dalam antrian yaitu petugas operator, loket antrian
memberikan kemudahan petugas operator dalam memberikan pelayanan
antrian dan orang yang mengantri tidak menunggu tertalu lama.
c. Attributes berupa prasarana pendukung yang digunakan yaitu komputer sebagai
sarana kontrol, loket antrian lebih dari satu, alat cetak nomor antrian, suara
pemanggil nomor antrian dan tampilan display nomor antrian. Prototipe ini
harus fleksibel sehingga dalam pelaksanan pengoprasian sesuai dengan sistem
antrian berdasarkan asas FIFO = First-In, First-Out.
3.2 Per ancangan Sistem
Sub bab ini menjelaskan mengenai proses desain perangkat lunak yang
akan dibuat dan hardware yang digunakan. Proses desain sistem dalam sub-bab ini
akan dibagi menjadi beberapa tahap yaitu : flowchart program dekstop,
perancangan data, perancangan antarmuka dan perancangan hardware.
Aplikasi ini merupakan sistem yang bisa mempermudah petugas loket
dalam hal kepraktisan dan efisien, dalam hal ini sangat memudahkan dalam
membantu memberikan pelayanan. Adapun sub-sub perancangan yang akan
dilakukan untuk merancang sistem ini, sub perancangan tersebut meliputi :
Manajemen Umum :
a. Panggil, ulang, pesan pengguna (petugas loket).
3.2.1 Alur Umum Sistem
Pada rancangan umum dari aplikasi ini adalah memudahkan petugas loket
dan khususnya para pengunjung yang hendak melakukan pembayaran. Pembuatan
sistem area parkir ini dengan pengoprasisan berbasis mikrokontroler AT89S52
terdiri dari 2 bagian yaitu pembuatan perangkat keras (hardware) dan perangkat
lunak (software).Gambar umum tugas akhir ini dapat dilihat pada Gambar 3.1
Gambar 3.1 Diagram sistem antrian loket.
Cara kerja sistem antrian loket ini adalah sebagai berikut :
a. Pengunjung menekan tumbol antrian untuk mendapatkan nomer antrian.
b. Mikrokontroler mengirimkan data yang diterima dari tombol kemudian
dikirim ke PC server.
Mikrokontroler
LOKET Printer
LOKET
Server
Mini PC
Sound
LAN
Tombol Tombol
[image:58.612.134.506.255.522.2]c. Data yang di terima PC server dikirim ke data base dan printer untuk di
cetak nomer antrian yang baru.
d. Petugas loket menekan tombol panggil nomer antrian, nomer antrian akan
muncul pada layar utama dan di sertai suara.
e. Jika pengunjung tidak merespon panggilan pertama maka petugas loket
akan menekan tombol ulang untuk memanggil kembali nomer antrian.
f. Petugas loket dapat merubah pesan yang ada pada layar utama melalui PC
petugas loket yang terhubung pada PC server.
3.2.2 Spesifikasi Peralatan
Sebelum membuat program menggunakan Visual Basic 6.0, komputer
harus diinstal terlebih dahulu. Agar mendapatkan unjuk kerja Visual Basic
dengan baik, sebuah program tentu memiliki peralatan standar yang harus
digunakan. Dalam pembuatannya digunakan komputer AMD Phenom II X2 3.2
GHz. Sistem operasi yang dipakai dalam pemrograman adalah Windows XP
profesional, walaupun program masih bisa dijalankan di Windows 98. Berikut ini
merupakan spesifikasi komputer yang digunakan :
a. Menggunakan prosesor AMD Phenom II X2 3.2 GHz.
b. Memori 1 GB.
c. Menggunakan monitor V