BERBASIS MIKROKONTROLLER
TUGAS AKHIR
Diajukan Untuk Memenuhi Sebagai Persyaratan Dalam Memperoleh Gelar Sarjana Komputer
Jurusan Teknik Informatika
Diajuka
Oleh :
ANDI SEKTIAWAN 0634015037
JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN” JAWA TIMUR
BAB IV IMPLEMENTASI SISTEM ... 42
4.4.3 Memprogram IC Target dengan AT89 USB ISP Software… 51 4.5 Implementasi Coding ... 52
5.2.1 Pengujian Pengoperasian Ganti Password... 64
BAB VI PENUTUP ………..… 66
6.1 Kesimpulan ………. 66
6.2 Saran ……….. 67
DAFTAR PUSTAKA ………. 68
RANCANG BANGUN SISTEM PENGAMAN TAMBAHAN PADA MOBIL MENGGUNAKAN SECURITY PASSWORD BERBASIS
MIKROKONTROLLER
Pembimbing I : Basuki Rahmat,S.Si , MT
Pembimbing II : Wahyu Saifullah J. Saputra, S.Kom Penyusun : Andi Sektiawan
ABSTRAK
Disini akan dibahas mengenai sebuah pengaman mobil yang memanfaatkan
mikrokontroller AT89S51 untuk mengendalikan rangkaian alat pengaman mobil itu sendiri. Peralatan yang dikendalikan oleh mikrokontroller AT89S51 yaitu berupa rangkaian kunci kontak dan alarm.
Pembuatan alat ini diharapkan bisa untuk mengurangi resiko mobil hilang karena tindak pencurian. Sebuah keypad digunakan untuk memberikan inputan pada
mikrokontroller untuk diterjemahkan menjadi output akan tampil di suatu LCD
(Liquid Crystal Display) dengan tampilan karakter bintang (*) yang digunakan untuk mengendalikan rangkaian alat pengaman mobil, rangkaian alat pengaman mobil ini dikendalikan melalui kaki pin mikrokontroller yang terhubung dengan driver relay
yang terhubung juga dengan rangkaian pengaman mobil (kunci kontak dan alarm ).
Dari perancangan yang dilakukan, mobil hanya akan menyala bila dimasukkan suatu password dan user harus memasukkan suatu password yang benar agar mobil dapat dijalankan.
ii
KATA PENGANTAR
Dengan memanjatkan puji dan syukur kehadirat Allah SWT, atas berkat dan
rahmat-Nya yang telah dilimpahkan kepada penyusun sehingga terbentuklah suatu
Tugas Akhir yang berjudul “Rancang Bangun Sistem Pengaman Tambahan Pada Mobil Menggunakan Security Password Berbasis Mikrokontroller”, untuk memenuhi salah satu syarat Ujian Akhir Sarjana di Fakultas Teknologi Industri
Jurusan Teknik Informatika Universitas Pembangunan Nasional “Veteran” Jatim.
Penulis menyadari bahwasanya dalam penyusunan Tugas Akhir ini masih
memiliki banyak kekurangan baik dari segi materi maupun dari segi penyusunannya
mengingat terbatasnya pengetahuan dan kemampuan penulis. Untuk itu, dengan
kerendahan hati penyusun mohon maaf dan penyusun sangat mengharapkan segala
saran dan kritikan yang sekiranya dapat membantu penyusun agar dalam penyusunan
selanjutnya bisa lebih baik lagi.
Surabaya, 10 Juni 2011
UCAPAN TERIMA KASIH
Tugas Akhir ini dapat penulis selesaikan berkat kerja sama dari berbagai pihak,
baik moril maupun materil. Oleh karena itu, penulis ingin menyampaikan rasa hormat
dan terima kasih yang sebesar–besarnya kepada :
1. Allah SWT, atas semua anugrah dan pertolongan yang tak terkira dalam hidupku,
Serta tidak terlupakan iringan salam dan sholawat bagi junjungan kami Nabi
besar Muhamad SAW.
2. Kedua orang tua dan keluarga penulis yang telah memberikan dukungan moril
maupun materil selama ini.
3. Ir. Sutiyono, MT. selaku dekan Fakultas Teknologi Indutri Universitas
Pembangunan Nasional “Veteran” Jatim.
4. Basuki Rahmat, S.Si., MT. selaku Ketua Jurusan Teknik Informatika Universitas
Pembangunan Nasional “Veteran” Jatim dan Dosen Pembimbing I, yang telah
meluangkan waktu untuk memberikan arahan dan memberi motivasi sehingga
penyusun dapat menyelesaikan Tugas Akhir ini.
5. Wahyu Saifullah J. Saputra, S.Kom selaku pembimbing 2.
6. Dosen – dosen Teknik Informatika UPN “Veteran” Jatim atas bimbingan dan
ilmunya.
7. Teman-teman penulis yang tidak mungkin penulis sebutkan namanya satu per
satu terima kasih telah membantu dan memberikan doanya kepada penulis untuk
iv
8. Rekan-rekan di Teknik Informatika UPN “Veteran” Jatim angkatan 2006
terutama kelas sore, juga teman- teman penyusun dari semua angkatan yang
secara tidak langsung telah membantu selama penyusunan tugas akhir ini.
9. Dan semua pihak yang telah banyak membantu yang tidak bisa disebutkan
satu-persatu.
Semoga keikhlasan dalam membantu hingga terselesaikannya laporan Tugas
1.1 Latar Belakang
Seiring perkembangan teknologi yang semakin maju, terlebih lagi ketika
ditemukannya teknologi komputer. Seiring dengan perkembangan komputer,
banyak dibangun sistem aplikasi yang bersifat praktis dan dinamis. Begitu juga
dengan Penggunaan mikrokontroler, tidak hanya untuk akuisisi data melainkan
juga untuk pengendalian di pabrik-pabrik, kebutuhan peralatan kantor, peralatan
rumah tangga, automobil, dan sebagainya.
Misal dilihat dari sebuah kasus tentang kriminal yang sering terjadi adalah
pencurian kendaraan bermotor (curanmor). Tentunya hal ini meresahkan
masyarakat dan perlu untuk dicari pemecahan dari masalah ini. Salah satu
pencegahan tindak pencurian kendaraan bermotor ini adalah dengan
menggunakan alat yang memanfaatkan teknologi yang ada sekarang ini.
Karena faktor-faktor inilah yang mendorong penulis untuk merancang
tugas akhir dengan judul Rancang Bangun Sistem Pengaman Tambahan Pada
Mobil Menggunakan Security Password Berbasis Mikrokontroller. sistem
kemanan tambahan yang membuat pemilik mobil merasa tenang saat harus
meninggalkan mobilnya, Selain pada Mobil alat ini juga dapat diimplementasikan
pada jenis kendaraan bermotor yang lainnya, Contoh: Sepeda motor.
Dalam perancangannya mobil hanya akan menyala bila dimasukkan suatu
password dan user harus memasukkan suatu password yang benar agar mobil
dapat dijalankan. Password yang dimasukkan berupa angka – angka dari keypad
di suatu LCD dengan tampilan karakter bintang (*). Password ini bisa diubah
sesuai dengan keinginan user tanpa harus program ulang. Sistem ini dilengkapi
juga oleh suatu alarm bila password yang dimasukkan salah sebanyak tiga kali.
1.2 Perumusan Masalah
Berdasarkan uraian – uraian dari latar belakang permasalahan di atas,
maka perlu adanya pembahasan yang sistematis, permasalahan dapat dirumuskan
sebagai berikut.
1) Bagaimana mewujudkan suatu sistem pengaman kendaraan bermotor yang
mampu untuk menghindari tindak pencurian.
2) Bagaimana merancang sistem pengaman tambahan kendaraan bermotor
menggunakan mikrokontroler AT89S51 dengan menggunakan bahasa
pemograman Assembly ASM 51.
1.3Tujuan Penelitian
Tujuan dari penelitian ini, adalah merancang sistem pengaman tambahan
pada mobil menggunakan security password dan dapat diimplementasikan dalam
dunia industri dan kehidupan sehari-hari yang nantinya dapat membuat pemilik
mobil merasa tenang saat harus meninggalkan mobilnya.
1.4Manfaat Penelitian
Pembuatan alat ini digunakan untuk mengurangi tindak pencurian yang terjadi
pada saat kita memarkir mobil ketika tidak memakainya, dan pada saat itu kita
tidak bisa memantau keberadaan mobil secara langsung. Untuk itu pembuatan alat
ini diharapkan bisa untuk mengurangi resiko kendaraan hilang karena tindak
1.5 Batasan Masalah
Dalam batasan masalah yang dihadapai diperlukan ruang lingkup
permasalahan terhadap sistem yang akan dibangun, hal ini bertujuan agar
pembahasan masalah tidak terlalu meluas. Maka ruang lingkup yang akan dibahas
adalah sebagai berikut.
1) Mikrokontroler yang digunakan adalah AT89S51.
2) Menggunakan bahasa pemrograman ASM (assembler).
3) Uji coba alat menggunakan prototype bahwa mobil telah menyala akan
terlihat dengan nyala lampu Indikator.
4) Menggunakan LCD dan speaker/buzzer sebagai pemberi informasi.
5) Menggunakan keypad matrix 4x3 untuk input password.
1.6 Metode penelitian
Metode yang dilaksanakan dalam penelitian ini adalah.
1) Study Literatur
Pada tahap ini dilakukan penelusuran terhadap berbagai macam literatur
seperti buku, referensi – referensi baik melalui perpustakaan maupun
internet dan lain sebagainya yang terkait dengan judul penelitian ini dan
berguna untuk pembelajaran bagi penulis.
2) Analisa Aplikasi
Dari hasil study literature akan dibuat deskripsi umum untuk mengenai
penggunaan teknologi rangkaian elektronika dan rangkaian
mikrokontroller AT89S51 metode perencanaan dan perancangan alat.
memahami masalah – masalah yang ada dan mencari kebutuhan apa yang
diperlukan.
3) Rancang – Bangun Aplikasi
Pada tahap ini dilakukan pembangunan hardware dan software.
4) Uji Coba dan Evaluasi Aplikasi
Pada tahap ini dilakukan uji coba terhadap sistem yang telah dibangun,
apakah sudah sesuai dengan yang diharapkan.
5) Dokumentasi
Pada tahap ini merupakan tahap terakhir dari pengerjaan Skripsi. Buku ini
disusun sebagai laporan dari seluruh proses pengerjaan Skripsi. Dari
penyusunan buku ini diharapkan dapat memudahkan pembaca yang ingin
menyempurnakan dan mengembangkan aplikasi lebih lanjut.
1.7Sistematika Penulisan
Sistematika pembahasan Tugas akhir yang disusun ini akan dibahas
pada bab-bab yang akan diuraikan di bawah ini.
BAB I : PENDAHULUAN
Menguraikan tentang latar belakang permasalahan mencoba
merumuskan inti permasalahan dan menentukan tujuan untuk
kegunaan penelitian yang kemudian diikuti dengan pembatasan
masalah, asumsi metodelogi penelitian serta sistematikan
BAB II : DASAR TEORI
Pada bab kedua berisi teori penunjang yang menguraikan tentang
teori–teori yang mendukung dari bagian-bagian perangkat atau
alat yang dibuat.
BAB III : PERANCANGAN SISTEM
Pada bab ketiga berisi hal-hal yang berhubungan dengan
perancangan dan pembahasan perangkat keras tentang alat yang
dibuat.
BAB IV : IMPLEMENTASI SISTEM
Pada bab keempat berisi hasil implementasi dari perancangan yang
telah dibuat sebelumnya yang meliputi: kebutuhan sistem, implementasi sistem minimum AT89S51, dan implementasi tampilan-tampilan antarmuka aplikasi.
BAB V : HASIL DAN PEMBAHASAN
Pada bab kelima berisi penjelasan lingkungan uji coba alat,
pelaksanaan uji coba dan evaluasi dari hasil uji coba yang telah
dilakukan untuk kelayakan pemakaian alat.
BAB VI : PENUTUP
Pada bab keenam berisi kesimpulan dan saran untuk
pengembangan alat lebih lanjut dalam upaya memperbaiki
kelemahan pada alat guna untuk mendapatkan hasil kinerja alat
DAFTAR PUSTAKA
Berisi tentang literatur sebagai teori pendukung pembahasan
pada Tugas Akhir ini.
Pada bab ini akan dijelaskan tentang proses dasar – dasar dalam
perancangan Sistem Pengaman Tambahan Pada Mobil Menggunakan Security
Password.
2.1 Gambaran umum Mikrokontroller AT89S51
Mikrokontroler adalah mikroprosessor yang dirancang khusus untuk
aplikasi kontrol, dan dilengkapi dengan ROM, RAM dan fasilitas I/O pada satu
chip. AT89S51 adalah salah satu anggota dari keluarga MCS-51/52 yang
dilengkapi dengan internal 8 Kbyte Flash PEROM (Programmable and Erasable Read Only Memory), yang memungkinkan memori program untuk dapat diprogram kembali. (Andi Offset, 2007)
AT89S51 merupakan produk ATMEL memiliki fitur sebagai berikut.
a) Kompatibel dengan MCS-51
b) 4 Kbyte memori program yang dapat ditulis hingga 1000 kali
c) 0 Kecepatan clock 33 MHz
d) 128 byte memori RAM internal
e) 32 jalur input-output (4 buah port parallel I/O)
f) 2 Timer/Counter 16 bit
g) 2 Data pointer
h) 6 Interrupt (2 timer, 2 counter, 1 serial, 1 reset)
i) ISP (In System Programmable) Flash Memory
2.1.1 Arsitektur Mikrokontroler AT89S51
Pada gambar 2.1 Blok Diagram Mikrokontroller AT89S51 terlihat bahwa
mikrokontroler ini mempunyai empat buah port I/O, akumulator, register, RAM
internal, stack pointer, Aritmethic Logic Array (ALU), pengunci (latch), dan rangkaian osilasi yang membuat mikrokontroler ini dapat beroperasi hanya
dengan sekeping IC.
AT89S51 dirancang dengan logika statis untuk operasi frekuensi menuju
nol dan dapat mendukung mode penyimpanan tenaga yang dapat dipilih dari 2
software. Mode iddle menghentikan CPU sementara program DAC
memperbolehkan RAM, timer/counter, port serial dan sistem interupsi untuk tetap
berfungsi. Mode power down menghemat isi RAM namun membekukan osilator,
menon-aktifkan fungsi-fungsi chip lainnya sampai intruksieksternal dilakukan
atau terjadi reset hardware.
Dalam pengoperasiannya, AT89S51 cukup memberikan tegangan yang berkisar
antara 4 - 5.5 Volt DC pada kaki VCC dan kaki GND diberikan tegangan 0 Volt.
Selain kaki VCC dan GND, kaki-kaki yang dimiliki AT89S51 antara lain : RST,
ALE/PROG, PSEN, EA/VPP, XTAL1 dan XTAL2, dan 4 buah port yaitu : port 0,
port 1 ,port 2, port 3 yang masing-masing port tersebut terdiri dari 8 bit.
(http://gerbangsirkuit.wordpress.com/2009/01/16/arsitektur-at89s5152-mcs51/)
2.1.2 Konfigurasi Pin Mikrokontroller AT89S51
Mikrokontroler AT89S51 mempunyai 40 pin dengan catu daya tunggal 5
Volt, Mikrokontroller AT89S51 memiliki pin berjumlah 40 dan umumnya
dikemas dalam DIP (Dual Inline Package). Masing-masing pin Mikrokontroller
AT89S51 mempunyai kegunaan dan Ke-40 pin tersebut digambarkan pada
Gambar 2.2 Susunan Pin Mikrokontroller AT89S51
Fungsi dari masing-masing pin AT89S51 adalah.
Pin 1 – 8
Berfungsi sebagai P1.0 - P1.7. Pin 1 sampai 8 merupakan saluran I/O 8 bit
yang bersifat 2 arah dengan internal pull-up yang dapat digunakan untuk berbagai keperluan seperti mengendalikan 4 input TTL. Selain itu, Port ini juga digunakan sebagai saluran alamat saat pemrograman dan verifikasi.
port ini memiliki fungsi alternatif seperti terlihat pada tabel 2.1. Tabel 2.1 Fungsi Alternatif Port 1
Port Nama Fungsi altenatif
P1.0 T2 Input eksternal pewaktu/pencacah
P1.1 T2EX Input pewaktu/pencacah
P1.5 MOSI Untuk mengisi program
P1.6 MISO Untuk mengisi program
Pin 9
Berfungsi sebagai RST. Pin 9 merupakan masukkan reset bagi mikrokontroler. Reset akan aktif dengan memberikan input high selama 2
cycle.
Pin 10 – 17
Berfungsi sebagai P3.0 – P3.7. Pin 10 sampai 17 merupakan saluran I/O 8 bit
dua arah dengan internal pullup. Di samping sebagai saluran I/O, port ini memiliki fungsi alternatif seperti terlihat pada tabel 2.2.
Bila fungsi alternatif tidak dipakai, maka dapat digunakan sebagai port parallel
8 bit serba guna. Selain itu, sebagian port 3 dapat berfungsi sebagai sinyal kontrol saat proses pemrograman dan verifikasi.
Tabel. 2.2 Fungsi Khusus Port 3
Port Nama Fungsi Alternatif
P3.0 RXD Untuk menerima data port serial
P3.1 TXD Untuk mengirim data port serial
P3.2 INT0 Interupsi Eksternal 0
P3.3 INT1 Interupsi Eksternal 1
P3.4 T0 Input eksternal pewaktu 0
P3.5 T1 Input eksternal pewaktu 1
P3.6 WR Jalur menulis memori data ekstenal
Pin 18
Berfungsi sebagai XTAL 2. Pin 18 merupakan keluaran dari rangkaian osilasi
mikrokontroler.
Pin 19
Berfungsi sebagai XTAL1. Pin 19 merupakan masukkan untuk rangkaian
osilasi mikrokontroler.
Pin 20
Berfungsi sebagai GND. Pin 20 merupakan ground dari sumber tegangan.
Pin 21 – 28
Berfungsi sebagai P2.0 – P2.7. Pin 21 sampai 28 merupakan saluran I/O 8 bit
dua arah dengan internal pullup. Saat pengambilan data dari program memori
external atau selama pengaksesan data memori external yang menggunakan alamat 16 bit (MOVX@DPTR), port 2 berfungsi sebagai saluran alamat tinggi (A8-A15). Akan tetapi, saat mengakses data memori external yang menggunakan alamat 8 bit (MOVX@R1), port 2 mengeluarkan isi P2 pada
Special Function Register (SFR).
Pin 29
Berfungsi sebagai PSEN. Pin ini berfungsi pada saat mengeksekusi program
yang terletak pada memori external. Program Strobe Enable (PSEN) akan aktif dua kali setiap cycle.
Pin 30
external. Sedangkan pada saat Flash Programming (PROG) berfungsi sebagai pulsa input selama proses pemrograman.
Pin 31
Berfungsi sebagai EA/VPP. Pada kondisi low, pin ini akan berfungsi sebagai
External Access Enable (EA) yaitu mikrokontroler akan menjalankan program yang ada pada memori external. Jika kondisi high, pin ini akan berfungsi untuk menjalankan program yang ada pada memori internal. Pin ini juga berfungsi sebagai masukkan tegangan pemrograman selama proses pemrograman.
Pin 32 – 39
Berfungsi sebagai D7 – D0 (A7-A0). Pin 32 sampai 39 adalah port 0 yang merupakan saluran I/O 8 bit open collector dan dapat juga digunakan sebagai multiplex bus alamat rendah dan bus data selama adanya akses ke memori program external, pada mode ini port 0 mempunyai internal pull up. Saat proses pemrograman dan verifikasi, port 0 membutuhkan eksternal pull up, dan digunakan sebagai saluran data.
Pin 40
Berfungsi sebagai VCC. Pin 40 merupakan masukkan sumber tegangan positif
bagi mikrokontroler.
2.2 Organisasi Memori
Semua divais 8051 mempunyai ruang alamat yang terpisah untuk memori
program dan memori data, secara logika dari memori program dan data,
mengijinkan memori data untuk diakses dengan pengalamatan 8 bit, yang dengan
cepat dapat disimpan dan dimanipulasi dengan CPU 8 bit. Selain itu,
Memori program ( ROM, EPROM dan FLASH ) hanya dapat dibaca, tidak ditulis.
Memori program dapat mencapai sampai 64K byte. Pada 89S51, 4K byte memori
program terdapat didalam chip. Untuk membaca memori program eksternal
mikrokontroller mengirim sinyal PSEN ( program store enable ) .
Memori data ( RAM ) menempati ruang alamat yang terpisah dari memori
program. Pada keluarga 8051, 128 byte terendah dari memori data, berada
didalam chip. RAM eksternal (maksimal 64K byte). Dalam pengaksesan RAM
Eksternal, mikrokontroller mingirimkan sinyal RD ( baca ) dan WR ( tulis ).
Gambar 2.3 Struktur memori mikrokontroller keluarga MCS51
2.3 Dasar-dasar Pemrograman Bahasa Assembler
Dalam menjalankan program, mikrokontroler akan melakukan pembacaan
data yang tersimpan dalam memori program (internal atau eksternal). Alamat memori yang harus dibaca disimpan dalam sebuah register yang dinamakan
program counter (PC). Data yang terbaca akan diartikan sebagai perintah yang harus dikerjakan oleh mikrokontroler. Perintah ini bisa berbentuk pemindahan
memperbaharui isi PC dengan alamat memori selanjutnya sehingga
mikrokontroler bisa mengeksekusi perintah selanjutnya. Keluarga Atmel
AT89S51 memiliki instruksi yang kompatibel dengan instruksi MCS51 dari Intel.
Berikut ini dijelaskan beberapa instruksi dasar yang umum digunakan pada
pemrograman Mikrokontroller AT89S51. (Andi Offset, 2007)
MOV,MOVC dan MOVX
a) Instruksi MOV digunakan untuk menyalin data antara 2 operand.
b) Instruksi MOVC digunakan untuk menyalin data yang terdapat pada
memori program internal.
c) Instruksi MOVX digunakan untuk menyalin data yang terdapat pada
memori program external.
Tabel 2.3 Contoh Syntax Assembler MOV,MOVC dan MOVX
Contoh Syntax Keterangan
MOV A,R1 Salin nilai R1 ke akumulator
MOV A,@R1 Salin isi lokasi yang ditunjukan R1 ke A
MOV A,P1 Salin data pada Port 1 ke akumulator
MOV P1,A Salin data pada akumulator ke Port 1
MOC A,@X+DPRT Salin data int. yang di tunjuk DPTR ke A
MOV A,@DPRT Salin data eks. Yang ditunjuk DPRT ke A
ADD dan SUBB
a) Instruksi ADD digunakan untuk melakukan operasi penjumlahan
akumulator dengar suatu operand dan hasilnya disimpan dalam
akumulator.
b) Instruksi SUBB digunakan untuk melakukan operasi pengurangan
akumulator dangan suatu operand dan hasilnya disimpan dalam
akumulator.
Tabel 2.4 Contoh Syntax Assembler ADD dan SUBB
Contoh Syntax Keterangan
ADD A,#20 A = A + 20
ADD A,@RO A = A + [R0]
SUBB A,B A = A – B
SUBB A,#10 A = A - 10
MUL AB dan DIV AB
a) Instruksi MUL AB digunakan untuk melakukan operasi perkalian antara
akumulator dengan register B. Hasilnya berupa data 16 bit dengan low byte pada A dan high byte pada B.
a. Contoh : misal A = 50h B = A0h
Mul a,b
Hasil = 3200h maka : A= 00h B = 32h
b) Instruksi DIV AB digunakan untuk melakukan operasi pembagian antara
akumulator dengan register B. Hasilnya, pembagian disimpan pada
akumulator dan sisa pembagian disimpan pada register B.
Hasil = 0Dh maka: A = 0Dh B = 11H Karena, Fbh = 0d x 12 + 11
DEC dan INC
a) Instruksi DEC digunakan untuk melakukan pengurangan sebesar satu pada
suatu operand.
b) Instruksi INC digunakan untuk melakukan penambahan sebesar satu pada
suatu operand.
Tabel 2.5 Contoh Syntax Assembler DEC dan INC
Contoh Syntax Keterangan
DEC A A = A – 1
DEC @R0 [R0] = [R0] – 1
INC A A = A + 1
INC DPTR DPTR = DPTR + 1
ORL, ANL dan CPL
a) Instruksi ORL digunakan untuk melakukan operasi OR antara dua
operand.
b) Insrtuksi ANL digunakan untuk melakukan operasi AND antara dua
operand.
c) Instruksi CPL digunakan untuk melakukan operasi komplemen suatu
operand.
Tabel 2.6 Contoh Syntax Assembler ORL,ANL dan CPL
Contoh Syntax Akumulator Register B Hasil
Contoh Syntax Akumulator Register B Hasil
ANL A,B 0011 1010 1111 0000 0011 0000
CPL A 0011 1010 ---- ---- 1100 0101
RR, RL dan SWAP
a) Instruksi RR digunakan untuk melakukan operasi pergeseran ke kanan
sebanyak 1 bit.
b) Instruksi RL digunakan untuk melakukan operasi penggeseran ke kiri
sebanyak 1 bit.
c) Insrtuksi SWAP digunakan untuk melakukan operasi pertukaran data low nible dan high nible.
Tabel 2.7 Contoh Syntax Assembler RR,RL dan SWAP
Contuh Syntax Akumulator Hasil
RR A 0011 1010 0001 1101
RL A 0011 1010 0111 0100
SWAP A 0011 1010 1010 0011
SETB dan CLR
a) Instruksi SETB digunakan untuk memberikan logic 1 pada bit operand.
b) Instruksi CLR digunakan untuk memberikan logic 0 pada bit operand.
PUSH dan POP
a) Instruksi PUSH digunakan untuk menyimpan operand ke dalam stack.
b) Instruksi POP digunakan untuk mengembalikan nilai operand dari
stack.
a) JMP (Jump) digunakan untuk melakukan lompatan ke suatu blok program. b) JB (Jump if Bit) dan JNB (Jump if Not Bit) digunakan untuk melakukan
lompatan ke suatu blok program jika nilai operand 1 (Bit) atau 0 (Not Bit).
c) JZ (Jump if Zero) dan JNZ (Jump if Not Zero) digunakan untuk melakukan lompatan ke suatu blok program jika nilai operand 0 (Zero)
atau < > 0 (Not Zero).
d) CJNE (Compare and Jump if Not Equal) digunakan untuk melakukan pembandingan dua operand dan lompat ke blok program lain jika tidak
sama.
CALL dan RET
a) Instruksi CALL digunakan untuk mamanggil prosedur tertentu dalam
b) Instruksi RET digunakan untuk mengembalikan ke baris program yang
LCD merupakan salah satu komponen penting dalam pembuatan tugas
akhir ini karena LCD dapat menampilkan perintah-perintah yang harus dijalankan
oleh pemakai.LCD mempunyai kemampuan untuk menampilkan tidak hanya
angka, huruf abjad, kata-kata tapi juga simbol-simbol.
Jenis dan ukuran LCD bermacam-macam, antara lain 2x16, 2x20, 2x40,
dan lain-lain. LCD mempunyai dua bagian penting yaitu backlight yang berguna
jika digunakan pada malam hari dan contrast yang berfungsi untuk mempertajam
tampilan.
Tabel 2.8 Fungsi pin LCD
No Nama Pin Fungsi
1 VSS GND
2 VDD Suplai Tegangan +5V
3 VLC Tegangan Kontras LCD
4 RS L=Input Intruksi, H=Input Data
5 R/W L=Tulis data dari MPU ke LCM, H=Baca data dari LCM ke
15 Anoda Tegangan positif backlight
16 Katoda Tegangan negative backlight
Fungsi dari masing– masing pin pada LCD adalah pin pertama dan kedua
merupakan pin untuk tegangan suplai sebesar 5 volt, untuk pin ketiga harus
ditambahkan resistor variabel 4K7 atau 5K ke pin ini sebagai pengatur kontras
Pin keempat berfungsi untuk memasukkan input command atau input data, jika
ingin memasukkan input command maka pin 4 diberikan logic low (0), dan jika
ingin memasukkan input data maka pin 4 diberikan logic high (1).
Fungsi pin kelima untuk read atau write, jika diinginkan untuk membaca karakter
data atau status informasi dari register (read) maka harus diberi masukan high (1),
begitu pula sebaliknya untuk menuliskan karakter data (write) maka harus
diberi masukan low (0). Pada pin ini dapat dihubungkan ke ground bila tidak
diinginkan pembacaan dari LCD dan hanya dapat digunakan untuk mentransfer
data ke LCD.
Pin keenam berfungsi sebagai enable, yaitu sebagai pengatur transfer command
atau karakter data ke dalam LCD. Untuk menulis ke dalam LCD data ditransfer
waktu terjadi perubahan dari high ke low, untuk membaca dari LCD dapat
dilakukan ketika terjadi transisi perubahan dari low ke high.
Pin-pin dari nomor 7 sampai 14 merupakan data 8 bit yang dapat ditransfer dalam
2 bentuk yaitu 1 kali 8 bit atau 2 kali 4 bit, pin-pin ini akan langsung terhubung
ke pin-pin mikrokontroler sebagai input/output. Untuk pin nomor 15-16
berfungsi sebagai backlight.
2.5 Keypad matrix 4x3
Keypad termasuk peralatan input, tetapi dibedakan dengan peralatan input
yang lain karena fungsinya yang spesifik. Jika ditinjau dari segi fungsi, adanya
peralatan keypad pada suatu sistem mikrokontroler menunjukkan bahwa program
kemudi sistem tersebut menghendaki suatu masukan data yang bersifat temporer,
data-data yang bersifat bukan data tetap, dari user/operator ke sistem kontrol
untuk keperluan proses interaksi kontrol/kerja mikrokontroler. Untuk sistem
kontrol portable berbasis mikrokontroler biasanya cukup dilengkapi dengan keypad 4x3 atau 4x4.
Ada beberapa metode dalam proses pembacaan data keypad dalam pemrograman
mikrokontroler, diantaranya adalah.
a) Metode Polling
Metode yang pertama adalah menggunakan metoda scanning terusmenerus
terhadap keypad sampai didapat data adanya tombol yang ditekan. Bila mikrokontroler mengakses program scanning dengan metode ini, program counter akan terjebak dalam loop scanning terus, sampai ada tombol ditekan. Metoda ini relatif lebih mudah direalisasikan karena pemrogramannya lebih mudah dan
perangkat keranya lebih sederhana.
b) Metode Interrupt (Interupsi)
Metode Interrupt memanfaatkan interupsi sebagai pemicu jika ada tombol yang ditekan. Cara ini lebih efektif dalam hal penghematan waktu akses dalam
program keseluruhan. Bila tidak atau belum ada tombol ditekan, meskipun
program dalam proses scanning, ia masih dapat dimanfaatkan untuk mengakses
bagian-bagian program yang lain. Dan untuk aplikasi dalam proyek akhir ini,
digunakan metode polling, yaitu scanning terus-menerus terhadap keypad sampai didapat data adanya tombol yang ditekan. Pada gambar 2.5 ditunjukkan gambaran
Gambar 2.5 Skema Keypad Matrik 4x3
Keypad yang digunakan dalam aplikasi ini adalah keypad matriks 4x3 (4 baris dan
3 kolom). Berisikan tombol angka 0 sampai 9, tombol bintang (*), dan tombol
pagar (#). Untuk mengenali bagian kolom dan baris yang aktif maka keypad ini
dihubungkan dengan minimum sistem AT89S51.
2.6 Relay
Relay adalah sebuah piranti elektromekanik yang dioperasikan dengan
listrik yang secara mekanis mengontrol penghubungan rangkaian listrik. Relay
adalah bagian yang penting dari banyak sistem kontrol, bermanfaat untuk control
jarak jauh dan untuk pengontrolan alat tegangan dan arus tinggi dengan sinyal
kontrol tegangan dan arus rendah. Ketika arus mengalir melalui electromagnet
pada relay kontrol elektromekanis, medan magnet yang menarik lengan besi dari
jangkar pada inti terbentuk. Akibatnya, kontak pada jangkar dan kerangka relay
Gambar 2.6 Relay dan Simbol Relay
Relay berfungsi untuk memutuskan atau mengalirkan arus listrik yang dikontrol
dengan memberikan tegangan dan arus pada induktornya. Ada dua jenis relay
berdasarkan tegangan untuk menggerakan induktornya yaitu relay AC dan relay
DC.
2.7 Kondensator/ ELCO (Electrolytic Condenser)
Kapasitor (Kondensator) yang dalam rangkaian elektronika dilambangkan
dengan huruf "C" adalah suatu komponen elektronika yang dapat menyimpan
energi/muatan listrik di dalam medan magnet listrik, dengan cara mengumpulkan
ketidakseimbangan internal dari muatan listrik.
Struktur sebuah kapasitor terbuat dari 2 buah plat metal yang dipisahkan
oleh suatu bahan dielektrik. Bahan-bahan dielektrik yang umum dikenal misalnya
udara vakum, keramik, gelas dan lain-lain. Jika kedua ujung plat metal diberi
tegangan listrik, maka muatan-muatan positif akan mengumpul pada salah satu
kaki (elektroda) metalnya dan pada saat yang sama muatan-muatan negatif
terkumpul pada ujung metal yang satu lagi. Muatan positif tidak dapat mengalir
menuju ujung kutub negatif dan sebaliknya muatan negatif tidak bisa menuju ke
Muatan elektrik ini tersimpan selama tidak ada konduksi pada ujung-ujung
kakinya.
a) Kondensator Elektrolit
Kondensator Elektrolit atau Electrolytic Condenser (sering disingkat Elco) adalah kondensator yang biasanya berbentuk tabung, mempunyai dua kutub kaki berpolaritas positif dan negatif, ditandai
oleh kaki yang panjang positif sedangkan yang pendek negatif atau yang
dekat tanda minus ( - ) adalah kaki negatif. Nilai kapasitasnya dari 0,47
µF (mikroFarad) sampai ribuan mikroFarad dengan voltase kerja dari
beberapa volt hingga ribuan volt.
Gambar 2.7 Bentuk fisik dari Kondensator Elektrolit
b) Kondensator Keramik (Ceramic Capacitor)
Bentuknya ada yang bulat tipis, ada yang persegi empat berwarna
merah, hijau, coklat dan lain-lain. Dalam pemasangan di papan
rangkaian (PCB), boleh dibolak-balik karena tidak mempunyai kaki
positif dan negatif. Mempunyai kapasitas mulai dari beberapa piko
Farad sampai dengan ratusan Kilopiko Farad (KpF). Dengan tegangan
kerja maksimal 25 volt sampai 100 volt, tetapi ada juga yang sampai
Gambar2.8 Bentuk fisik dariKondensator Keramik
2.8IC Regurator 7805
adalah sebuah keluarga sirkuit terpadu regulator tegangan linier monolitik
bernilai tetap. Keluarga 78xx adalah pilihan utama bagi banyak sirkuit
elektronika yang memerlukan catu daya teregulasi karena mudah digunakan
dan harganya relatif murah. Untuk spesifikasi IC individual, xx digantikan dengan angka dua digit yang mengindikasikan tegangan keluaran yang
didesain, contohnya 7805 mempunyai keluaran 5 volt dan 7812 memberikan
12 volt. Keluarga 78xx adalah regulator tegangan positif, yaitu regulator yang
didesain untuk memberikan tegangan keluaran yang relatif positif terhadap
ground bersama. Keluarga 79xx adalah peranti komplementer yang didesain
untuk catu negatif. IC 78xx dan 79xx dapat digunakan bersamaan untuk
memberikan regulasi tegangan terhadap pencatu daya split.
IC 78xx mempunyai tiga terminal dan sering ditemui dengan kemasan
TO220, walaupun begitu, kemasan pasang-permukaan D2PAK dan kemasan
logam TO3 juga tersedia. Peranti ini biasanya mendukung tegangan masukan
dari 3 volt diatas tegangan keluaran hingga kira-kira 36 volt, dan biasanya
mempu pemberi arus listrik hingga 1.5 Ampere (kemasan yang lebih kecil
Gambar 2.9Bentuk Fisik dari IC Regurator 7805
2.9Dioda
Dioda adalah komponen elektronika yang terbuat dari bahan
semikonduktor. Dioda memiliki fungsi hanya mengalirkan arus satu arah saja.
Struktur dioda adalah sambungan semikonduktor P dan N. Satu sisi adalah
semikonduktor dengan tipe P dan satu sisinya yang lain adalah tipe N.
Dengan struktur demikian arus hanya akan mengalir dari sisi P menuju sisi N.
Dibawah ini gambar simbol dan struktur dioda serta bentuk karakteristik
dioda.
Gambar2.10 Simbol dan Struktur Dioda
2.10 Transistor
Transistor adalah semikonduktor yang memiliki peranan yang sangat
mempunyi banyak fungsi dalam dunia elektronik, diantaranya sebagai
penguat, switching (saklar), modulasi signal, stabilitas tegangan dll.
Transistor memiliki tiga kaki yang memiliki fungsi dan nama berbeda, yaitu
Basis (B), Emitor (E), dan Colector (C) Fungsi utama atau tujuan utama
pembuatan transistor adalah sebagai penguat (amplifier), namun dikarenakan
sifatnya, transistor ini dapat digunakan dalam keperluan lain misalnya sebagai
suatu saklar elektronis. Susunan fisik transistor adalah merupakan gandengan
dari bahan semikonduktor tipe P dan N seperti digambarkan dibawah ini.
Gambar2.11 Transistor
2.11 Resistor
Resistor adalah komponen dasar elektronika yang digunakan untuk
membatasi jumlah arus yang mengalir dalam suatu rangkaian. Kemampuan
resistor dalam menghambat arus listrik sangat beragam disesuaikan dengan
nilai resistansi resistor tersebut.Resistor bersifat resistif dan umumnya terbuat
dari bahan karbon.
Bentuk resistor yang umum adalah seperti tabung dengan dua kaki di kiri dan
kanan. seperti digambarkan pada gambar 2.12 dibawah ini. Pada badannya
terdapat lingkaran membentuk cincin kode warna untuk mengetahui besar
Gambar2.12 Resistor
2.12 Kristal 12 mhz
Kristal adalah resonator mekanik yang bergetar menstabilkan getaran
elektronis.
Gambar 2.13 Bentuk Fisik dari Kristal
2.13 Light Emitting Diode(LED)
LED adalah kepanjangan dari Light Emitting Diode (Dioda Pemancar Cahaya). Dioda ini akan mengeluarkan cahaya bila diberi tegangan sebesar 1,8
V dengan arus 1,5 mA. LED banyak digunakan sebagai lampu indikator dan
peraga (display). Dibawah ini gambar LED dan simbol LED.
2.14 Buzzer
Buzzer atau sering disebut pengeras suara adalah komponen
elektronika yang mampu mengubah sinyal listrik menjadi sinyal suara.
Proses mengubah sinyal ini dilakukan dengan cara menggerakkan
komponennya yang berbentuk selaput.
Gambar 2.15 Bentuk Fisik Buzzer
Dalam setiap sistem penghasil suara, penentuan kualitas suara terbaik
tergantung dari buzzer. Pada dasarnya, buzzer merupakan mesin penerjemah
akhir, kebalikan dari mikrofon. Speaker membawa sinyal elektrik dan
mengubahnya kembali menjadi getaran untuk membuat gelombang suara. Buzzer
menghasilkan getaran yang hampir sama dengan yang dihasilkan oleh mikrofon
32
BAB III
PERANCANGAN SISTEM
Pada bab ini akan dijelaskan mengenai proses yang akan dibuat. Proses
pembangunan proyek dalam sub-bab ini akan dibagi menjadi beberapa tahap antara
lain, analisa permasalahan dan perancangan sistem.
3.1 Analisis Secara Diagram Blok
Sistem Pengaman Tambahan Pada Mobil Menggunakan Security Password ini
merupakan sebuah sistem akses pengamanan kunci kontak melalui penginputan kode
secara digital sebagai alternatif pengganti sistem kunci konvensional dengan
menggunakan kunci dari logam. Dalam perancangannya mobil hanya akan menyala
bila dimasukkan suatu password dan user harus memasukkan suatu password yang
benar agar mobil dapat dijalankan. Sistem ini terdiri dari 4 bagian utama, yaitu : catu
daya, keypad, mikrokontroller dan output (LCD, LED dan buzzer). Berikut ini adalah
diagam blok untuk sistem kunci digital.
Gambar 3.1 Diagram blok sistem Keypad Mikrokontroller
Catu daya
Dalam sistem ini LED dan buzzer merupakan indikator output yang menunjukkan
modus sistem saat itu.
3.1.1 Catu Daya
Untuk mensuplai sistem ini dibutuhkan tegangan 9-12 VAC / VDC. Adapator
yang dapat mensuplai 9-12 VDC bisa digunakan. Bagian yang membutuhkan
tegangan secara langsung hanya mikrokontroller dan LCD, masing-masing
membutuhkan 5 volt. Penggunaan catu daya dengan input 9-12 volt hanya untuk
mempermudah penggunaan dan tidak perlunya penggunaan trafo yang dapat
memperbesar ukuran sistem.
Gambar 3.2 Rangkaian catu daya
Untuk input sistem, bagian catu daya, polaritas dapat diabaikan. Karena di dalam
rangkaian catu daya terdapat dioda bridge. Keluaran dari catu daya ini berupa tegangan 5 volt (ditunjukkan dengan label VCC) yang diregulasi oleh IC 7805 dan
3.1.2 Keypad Matrix 4x3
Modul keypad menjadi input bagi pengguna untuk mengendalikan Sistem
Pengaman pada kontak, yakni untuk memasukkan kode.
Keypad yang digunakan merupakan keypad standar yang terdiri dari tombol tekan untuk angka 0 sampai dengan 9, tombol ‘*’ dan tombol ‘#’. Tombol 0 sampai dengan
9 keypad berfungsi untuk memberikan nilai masukan. Tombol ‘*’ pada keypad yang merupakan fungsi clear. Sedangkan tombol ‘#’ pada keypad yang merupakan fungsi
enter.
3.1.3 Mikrokontroller AT89S51
Dalam menggunakan IC programmable, hal penting yang tidak boleh
dilewatkan adalah mengetahui karakteristik IC programmable tersebut. Karakter yang
perlu diketahui dari suatu IC programmable (dalam hal ini adalah IC mikrokontroller
AT89S51) meliputi arsitektur, organisasi memori, set intruksi, dan metode
pengalamatanya.
Mikrokontroller bisa diumpamakan sebagai bentuk minimum dari sebuah
mikrokomputer. Ada perangkat keras dan perangkat lunak, dan juga ada
memori,CPU, dan lain sebagainya yng terpadu dalam satu keping IC.
Mikrokontroller AT89S51 digunakan untuk menyimpan kode kunci, memeriksa kode
kunci yang dimasukkan, dan mengatur tampilan pada LCD, Selain itu, tugas
mikrokontroler lainnya adalah men-drive indikator output berupa LED dan buzzer.
Berikut adalah gambar rangkaian mikrokontroller yang terhubung ke bagian input
Gambar 3.3 Rangkaian mikrokontroller
Untuk input (keypad) digunakan port 1 (P1.0 – P1.7), untuk LCD digunakan port 3
3.1.4 LCD
Merupakan tampilan bagi pengguna. LCD menampilkan petunjuk bagi
pengguna dan mengindikasikan banyaknya karakter yang sudah diinput.
3.1.5 LED dan Buzzer
Digunakan sebagai indikator 4 modus sistem, yaitu modus request, modus
pengaman terbuka, modus kontak on, modus kontak stater. Terdapat 3 LED
berwarna, yaitu 2 merah, dan biru. Pada saat sistem meminta pengguna untuk input
password maka sistem belum sepenuhnya aktif. sistem akan meminta pengguna untuk
memasukkan kode password, ini merupakan modus request (belum ada LED yang
menyala). Dalam modus requeset terdapat dua opsi, yaitu Buka pengaman atau Ganti
kode. Apabila opsi ke-1 (Buka pengaman) maka pengguna memasuki modus
pengaman terbuka Bila kode yang dimasukkan benar, LED biru akan menyala dan
disertai bunyi buzzer. Untuk opsi ke-2 jika user lupa password pengguna akan
menginput kode untuk kode barunya, Kode baru tersimpan setelah itu sistem akan
kembali ke awal untuk meminta memasukkan kode password.
3.2 Kebutuhan Sistem
Dengan mengidentifikasi deskripsi pada gambar 3.3 telah diketahui bahwa
kebutuhan sistem terbagi menjadi 2 yaitu kebutuhan perangkat keras dan kebutuhan
3.2.1 Kebutuhan Perangkat Keras
a) Kabel Downloader DT-HiQ AT89 USB ISP
b) PCB polos.
c) Kabel penghubung
d) Komponen elektronik
Mikrokontroller AT89S51
Display LCD
Keypad matrix 4x3
Speaker/buzzer
ELCO(kapasitor elektrolik)
IC Regurator 7805
Dioda
Transistor DC 557
Rellay
3.2.2 Kebutuhan Perangkat Lunak
Untuk memenuhi kebutuhan pengguna dalam berinteraksi dengan sistem
diperlukan perangkat lunak sebagai jembatan untuk menghubungkan antar perangkat
keras. Perangkat lunak yang akan digunakan dalam perancangan proyek ini adalah.
a) Proteus 7 Profesional
Proteus sebagai program yang digunakan untuk merancang rangkaian elektronik.
b) Program compiler ASM51 dan program downloader AEC ISP ASM51 adalah
Pemrograman pada mikrokontroler AT89S51 menggunakan bahasa tingkat tinggi
yaitu bahasa Assembler. Fungsi dari progr am compiler ASM51 adalah untuk
me-load file berekstensi “.asm” yang sudah dibuat dengan menggunakan Notepad untuk dirubah menjadi file berektensi “.hex”. Setelah file dirubah menjadi
“.hex” kemudian di-load dengan menggunakan program compiler AEC ISP. Tujuannya adalah untuk memasukkan program mikro ke dalam downloader
mikrokontroler AT89S51.
3.3 Perancangan Sistem
Setelah menyelesaikan keseluruhan rangkaian disertai dengan pengetesan
program sederhana untuk mengetes rangkaian. maka dapat diasumsikan hardware telah terakit dengan benar apabila program sederhana berjalan dengan benar. Untuk program
sistem keseluruhan, sebelum diintegrasikan ke hardware perlu dilakukan simulasi. Dalam program simulasi, pengguna dapat melihat programberjalan secara virtual di PC,
dimana dapat dilakukan ekseskusi program secara per baris. Dengan ini, dapat dilihat
kondisi atau isi dari SFR, memori dan bankregister. Diantara program simulasi ada yang
menyertai perkiraan waktu pengeksekusian dan kondisi port saat program dieksekusi.
Apabila simulasi menunjukkan program telah sesuai, maka program tersebut dapat
diintegrasikan langsung ke IC mikrokontroller. Sistem yang penulis buat bekerja seperti
yangdigambarkan dalam gambar 3.5 Flowchat alur kerja sistem.
Walaupun dalam simulasi terlihat bahwa program berjalan tanpa ada masalah, namun
belum tentu sama dengan kenyataannya. Pada saat sistem berjalan dengan hardware
perlu dicek kembali. Hal seperti ini dapat saja terus berulang hingga sistem berjalan
sesuai dengan yang kita ingingkan hingga membentuk siklus seperti alur pada gambar
3.4 Siklus perancangan sistem.
Sebelum merancang sistem perlu dibuat bagaimana konsep kerja sistem tersebut.
Dengan konsep yang ada perlu dirumuskan masalah yang berkenaan dengan konsep, hal
ini meliputi dua bagian, yaitu software dan hardware. Dengan mengetahui detail komponen yang digunakan sistem, konfigurasinya serta bagaimana komponen terhubung
satu sama lain.
3.4 Alur Sistem
Alur sistem pada aplikasi dapat digambarkan ke dalam diagram flowchart yang menjelaskan tentang terjadinya alur sebuah sistem yang menangani pada sebuah program
dimana sistem tersebut adalah salah satu bentuk dari proses yang terdapat dalam suatu
Ada beberapa hal yang harus diperhatikan sebelum program alarm dibuat dan
pada akhirnya dapat dijalankan dengan baik, cara mengimplementasikan program
yang sudah dibuat.
4.1 Kebutuhan Perangkat Sistem
Pada bagian ini akan dijelaskan mengenai perangkat keras dan perangkat
lunak yang digunakan pada implementasi sistem ini. Perangkat keras yang digunakan
adalah sebagai berikut.
a) Personal komputer untuk desain skema rangkaian, pembuatan software, dan
proses programming ke PEROM AT89S51
b) Kabel Downloader DT-HiQ AT89 USB ISP
c) PCB polos dan Kabel penghubung
d) Komponen elektronik
· Mikrokontroller AT89S51
· Display LCD
· Keypad matrix 4x3
· Speaker/buzzer
· ELCO(kapasitor elektrolik)
· IC Regurator 7805
· Dioda
· Transistor DC 557
Sedangkan perangkat lunak yang digunakan dalam perancangan aplikasi ini
adalah sebagai berikut :
a) Proteus 7 Profesional
b) DT-HiQ AT89 USB ISP Software
c) MIDE-51
4.2 Implementasi Minimum AT89S51
Implementasi minimum AT89S51 dibuat untuk proses utama untuk menjalankan
suatu sistem kerja yang kita inginkan. Mikrokontroler AT89S51 sebuah media
penyimpanan program yang kita dibuat. Chip ini memiliki memori di dalam
tubuhnya. Memori inilah yang menyimpan program yang dapat kita isikan melalui
PC menggunakan port serial/parallel.
Implementasi mikrokontroler AT89S51 tersebut dapat dilihat pada sub bab
sebagai berikut.
4.2.1 Rangkaian Minimum AT89S51
Pada rangkaian minimum AT89S51 adalah rangkaian utama pada sistem
mikrokontroler AT89S51, Didalam mikrokontroelr AT89S51 ada sebuah program
untuk menjalankan subuah sistem yang mau dijalankan. Gambar rangkaian minimum
Gambar 4.1 Rangkain Minimum AT89S51
Setelah merangkai komponen-komponen pada PCB, tahap implementasi yang
terakhir adalah menggabungkan rangkaian PCB dengan adaptor dan kontak, kabel
pararel,keypad. Buzzer
Kondensator elektrolit
Kristal 12 mhz
Kondensator Ceramic
LCD 2x16 Mikrokontroller AT89S51
Relay
Keypad 3x4
ISP/Header 10pin Resistor
Transistor
Berikut ini adalah gambar keseruruhan rangkaian alat, Gambar 4.2 (a) LCD,(b)
Kontak, (c) Rangkaian mikrokontroller, (d) Keypad
Gambar 4.2 Rangkaian alat keseluruhan
4.3 Prosedur Pemasangan Program Pada Mikrokontroller AT89S51
Agar listing program yang dibaca Mikrokontroller, maka listing program yang
awalnya berekstensi .ASM harus diconvert menjadi .hex. Untuk memasang program
pada Chip AT89S51 Pertama-tama program yang sudah dibuat sebelumnya harus
dicompile terlebih dahulu, untuk memastikan tidak ada error, karena jika ada yang
error maka program tidak akan bisa dibuat.
4.3.1 Download Program Kedalam Mikrokontroler
Untuk proses download program ke dalam IC mikrokontroler software yang
digunakan DT-HiQ AT89 USB ISP Software. Pada proses pembuatan program,
program diketik dalam bahasa assembler. Kemudian di compile dalam dengan
compiler asm51, menjadi file object. Dari object di compile menjadi file dalam
bentuk hex. Untuk menulis program dalam bahasa asember kita bisa memanfaatkan
teks editor, seperti notepad, editor dos, dsb. Setelah kita menulis program dalam teks
editor, kita perlu simpan file kita dengan ekstensi .asm, kemudian kita simpan pada
folder dengan lokasi yang sama dengan lokasi copiler ASM51. A
B
C
Langkah-Langkah Download Program Kedalam Mikrokontroler.
Gambar 4.3 Tampilan M-IDE studio for MCS-51
Tuliskan Program dalam page M-IDE studio MCS-51 dalam bahasa assembly
(ASM51 assembler) Simpan Program misal di D:/Program_mikro, kemudihan
lakukan Proses Build current file seperti tampak pada Gambar 4.4. Apabila tidak
terjadi error maka pada tampilan bawah akan muncul pesan seperti yang ditunjukan
dalam Gambar 4.5.
Pada software M-IDE sudah terintegrasi software utuk keperluan compile program
*.hex dan *.lst yang akan di-download kedalam IC mikrokontroller adalah file *.hex.
File itulah yang akan dikenali oleh mikrokontroller sebagai bahasa mesin.
Gambar 4.4 Proses Build current file
Lakukan Proses Build dengan menggunakan tombol Build current file untuk
memastikan tidak ada error, karena jika ada yang error maka program tidak akan bisa
dibuat. setelah proses build sukses selanjutnya maka listing program yang awalnya
berekstensi .ASM setelah Build current file secara automatic diconvert menjadi .hex.
Gambar 4.5 Proses tidak terjadi error
setelah proses build sukses selanjutnya buka software DT-HiQ AT89 USB ISP,
sebagai catatan DT-HiQ AT89 USB ISP tidak memerlukan proses instalasi sehingga
akan lebih mudah dan praktis digunakan.
4.4 Menjalankan Perangkat Lunak DT-HiQ AT89 USB ISP
Jalankan perangkat lunak DT-HiQ AT89 USB ISP, caranya antara lain.
a) Klik ganda pada icon AT89_USB_ISP_Software.exe pada Windows
Explorer.
Gambar 4.6 Tampilan software DT-HiQ AT89 USB ISP
4.4.1 Menu TOOLBAR
Load File : Membuka file Intel HEX atau file biner dan
memasukkannya ke dalam File Buffer
Save File : Menyimpan isi Read Buffer ke dalam file Intel HEX atau
Blank Check : Memeriksa apakah IC target kosong
Erase : Menghapus IC target
Read FLASH : Membaca memori program IC target dan
memasukkannya ke dalam Read Buffer
Write FLASH : Menulis kode yang tersimpan dalam File Buffer ke
dalam memori program IC target
Verify FLASH : Membandingkan isi File Buffer dan memori program
IC target
Auto Programming: Menjalankan serangkaian instruksi: memori
program IC target akan dihapus, diperiksa kekosongannya, ditulis, dan
diverifikasi (tergantung pilihan di Auto Programming Options)
USB ISP Device Detect: Memastikan DT-HiQ AT89 USB ISP dalam
keadaan menyala dan terhubung dengan benar ke PC
Dialog Device Selection akan muncul saat perangkat lunak DT-HiQ AT89
USB ISP baru dijalankan atau bila menu Options →Device Select dipilih. Jendela
dialog ini berfungsi untuk menentukan tipe IC target dan nilai kristal yang digunakan.
Gambar 4.7 Pilihlah Tipe IC Target
Pilihlah tipe IC target melalui combobox yang disediakan serta nilai Kristal terdekat,
lalu tekan tombol “OK”. DT-HiQ AT89 USB ISP akan melakukan verifikasi tipe
target IC apakah sesuai dengan pilihan (jika target IC mendukung instruksi
pembacaan Signature Byte). Jika verifikasi berhasil, maka tampilan utama perangkat lunak akan aktif kembali serta pilihan instruksi yang disediakan akan disesuaikan
dengan tipe IC target.
Jika proses verifikasi gagal tetapi pengguna yakin bahwa pilihan tipe IC target sudah
tombol “Cancel” pada jendela dialog ini. Kemudian memilih tipe target melalui
combobox di pojok kanan atas tampilan utama.
Dengan memilih melalui combobox di tampilan utama, walaupun proses verifikasi
gagal, pilihan instruksi untuk tipe IC target yang telah dipilih akan tetap ditampilkan.
Indikator POWER LED digunakan untuk indikasi ada tidaknya sumber catu daya
yang terhubung ke pin VCC dan GND. Jika DT-HiQ AT89 USB ISP telah menerima
sumber catu daya dari target board, maka POWER LED akan menyala.
Indikator STATUS LED digunakan sebagai indikasi status kerja DT-HiQ AT89 USB
ISP sekarang. Jika DT-HiQ AT89 USB ISP dalam keadaan idle dan siap menerima
perintah dari PC, maka STATUS LED akan berkedip dengan interval 1 detik.
Sebaliknya jika DT-HiQ AT89 USB ISP dalam keadaan sibuk dan sedang dalam
proses menjalankan perintah, maka STATUS LED akan berkedip lebih cepat yaitu
dengan interval sekitar 100 ms.
4.4.3 Memprogram IC Target dengan AT89 USB ISP Software
a) Hubungkan DT-HiQ AT89 USB ISP ke target board.
b) Ambil kode dengan perintah “Load File”. Untuk melakukan perintah “Load
File”, lakukan Klik pada tombol Load File.
c) Pilih dan deteksi IC target dengan perintah “Device Select”.Untuk melakukan
perintah “Device Select”, klik Options | Device Select.
d) Centang semua opsi pada Options | Auto Programming Options.
e) Programlah IC target dengan perintah “Auto”. Untuk melakukan perintah
f) Proses pemrograman akan ditampilkan pada status bar. Saat pemrograman
sudah selesai, tulisan “Verify Complete” akan ditampilkan pada status bar.
Gambar 4.8 Write
Jendela ini menunjukan bahwa proses download program ke mikrokontroller telah
selesai dan berhasil.
4.5 Implementasi Coding
Pada tahap ini akan dibahas mengenai program yang telah dibuat untuk
prototype system pengaman mobil menggunakan security password, berikut adalah
penjelasan berserta program yang telah dibuat. Langkah pertama yang harus
perintah yang lain dan semua port pada mikrokontroller yang digunakan sebagai
input atau output dari program yang akan kita susun.
Berikut adalah potongan program yang merupakan penentuan port pada
mikrokontroller dalam membaca perintah sebelum masuk perintah utama.
Setelah proses deklarasi port yang ditentukan ke dalam mikrokontroller selesai
langka kedua adalah membuat program yang akan memfungsikan port
mikrokontroller untuk menjalankan dan meneruskan perintah kepada piranti
pendukungnya.
Berikut adalah potongan program dimana dalam input password melalui keypad, file
*.hex yang dikenali oleh mikrokontroller sebagai bahasa mesin akan ditranslate
dalam bentuk karakter.
;--- ;keypad init sub-routine: inisialisasi keypad
;--- keypad_init:
mov keyport,#0FFH ;keyport=1111 1111 ret
;--- ;get key sub-routine: scan keypad
mov a,#80H ;translate sub-routine: mengubah key value ke dalam bentuk karakter ;--- translate:
mov a,keyval
cjne a,#10,jmp1 ;jika key value=10,maka karakter yang di bentuk adalah X
mov keyval,#'x'
ret jmp1:
cjne a,#11,jmp2 ;jika key value=11, maka karakter yang di bentuk adalah angka 0
mov keyval,#'0'
ret jmp2:
bentuk adalah e
Berikut adalah potongan program dimana user saat menginputkan password.
;--- ;get input sub-routine: pengiputan tombol keypad ;---
jnb iskey,get_input_cnt
acall translate
jnz get_input_l1
mov status,#EXIT
chk_e:
mov dptr,#get_input_err ;kepanjangan get_input_retry:
acall delay_1sec
mov status,#RETRY
mov dptr,#get_input_err1
sjmp get_input_retry
get_input_err1: db " kependekan", 0H get_input_err:
db " kepanjangan",0H
Program dibawah ini adalah sederet perintah mewakili inisialisasi program diatas jika
;---
;chk sub-routine: mengecek kode std apakah ok atau tidak ;---
djnz count,chk_l2
setb is_ok
cjne a,b,chk_newcode_l2
;set upass 14 :mengest kode baru dengan syarat kode master sudah ok
mov dptr,#str_saved
acall lcd_str
setb newcode
acall copy_code
acall delay_1sec
ret set_upass_l5:
cjne status,#RETRY,set_upass_l2
sjmp set_upass_l4
set_upass_l1:
cjne status,#RETRY,set_upass_l2
sjmp set_upass
set_upass_l2: ret str_new:
db "Buat kode baru", 0h str_saved:
Pengujian alat dilakukan untuk mengetahui apakah fungsi – fungsi yang telah
direncanakan bekerja dengan baik atau tidak. Pengujian alat juga berguna untuk
mengetahui tingkat kinerja dari fungsi tersebut. Setelah dilakukan pengujian, maka
hendaknya melakukan ujian ukuran / analisa dan terhadap apa yang diuji untuk
mengetahui keberhasilan dari alat yang di buat.
5.1 Pengujian Hardware
Pengujian terhadap sistem yang telah dibuat. Secara garis besar terdapat dua hal
yang diujikan yaitu pengujian terhadap bagian pengendali (Sakrar/Kontak) dan
bagian yang dikendalikan. Dari kedua pengujian tersebut dapat diketahui kelemahan
dan kekurangan yang masih terdapat pada alat, sehingga hasil perancangan perangkat
keras (hardware) maupun perangkat lunak (software) dapat lebih disempurnakan
untuk tujuan dan pemanfaatan secara nyata. Dalam Rancang Bangun Sistem
Pengaman Tambahan Pada Mobil Menggunakan Security Password Berbasis
Mikrokontroller ini, fitur-fitur yang dimiliki yaitu.
a) Sistem memiliki password yang digunakan untuk melakukan instruksi
pengamanan kunci kontak sebelum user menyalakan mesin.
b) Digit password yang digunakan untuk dapat membuka kunci terdiri dari 5
c) Memiliki penampil LCD untuk menampilkan digit password, status
(terkunci/terbuka) dan tampilan ”password salah” apabila user melakukan
kesalahan dalam memasukkan password.
d) Untuk keamanan sistem password yang ditampilkan ke LCD berupa tanda
(*).
Bentuk fisik dari Rancang Bangun Sistem Pengaman Tambahan Pada Mobil
Menggunakan Security Password Berbasis Mikrokontroller. (a) Keypad, (b)
Rangkaian mikrokontroller, (c) LCD, (d) Kontak.
Gambar 5.1 Bentuk Fisik Rangkaian Keseluruhan
5.1.1 Pengujian Catu Daya
Catu daya merupakan bagian yang penting dalam sistem ini. Kegunaan catu
daya pada sistem yaitu : tegangan 5 V digunakan sebagai sumber tegangan LCD,
D
A B
sedangkan tegangan 9 V digunakan untuk mikrokontroler (rangkaian mikrokontroler
dilengkapi dengan rangkaian regulator 5 V). Untuk menyuplai tegangan +5 V DC
digunakan IC 7805, dan tegangan +9 V DC digunakan IC 7809.
Dari masing-masing regulator telah diukur untuk mengetahui optimalisasi pemakaian
tegangan catu, yaitu IC 7809 seharusnya menghasilkan tegangan 9 Volt secara
konstan.
5.1.2 Pengujian Rangkaian LCD
Tujuan pengujian rangkaian LCD adalah untuk mengecek apakah LCD
bekerja dengan baik. Untuk mengetahui apakah LCD berfungsi dengan baik atau
tidak, bisa dilakukan dengan menghubungkannya dengan catu daya yang diberi
tegangan 5 Volt. Rangkaian yang digunakan adalah sebagai berikut :
Pin – pin pada LCD yang dihubungkan antara lain pin VSS dihubungkan dengan
ground pada catu daya dan VDD dihubungkan dengan kutub positif +5v pada catu
daya. Untuk mengatur tingkat kecerahan atau kontras dari LCD dilakukan dengan
cara menghubungkan pin VEE dengan trimpot. Setelah rangkaian tersebut
dihubungan dengan arus listrik, LCD dapat menyala dengan baik dan layak
digunakan.
5.2 Pengoperasian Sistem
Sistem belum dapat beroperasi sebelum rangkaian catu daya diberi masukan
tegangan, catu daya dapat mendistribusikan tegangan 5 volt ke seluruh rangkaian. Hal
ini dibarengi dengan LCD yang menyala dan menampilkan pesan berikut
Pada saat pertama kali dihubungkan ke sumber tegangan, pada layar LCD
baris pertama tampil tulisan “Buka Kode”. Hal ini dijelaskan oleh gambar 5.2 sebagai
berikut.
Gambar 5.2 Tampilan LCD Kondisi Awal
Apabila user ingin menstater kendaraanya terlebih dahulu harus memasukkan
Password berupa Digit angka melalui Keypad dengan benar. Password terdiri dari 5
digit sebagai contoh yaitu 12345. Apabila verifikasi password tidak sesuai, maka
program akan menampilkan pesan kependekan atau kepanjangan ke LCD, Di sini
pengguna diminta memasukkan kembali password hingga verifikasi yang sesuai.
Saat input password pengguna dapat menghapus karakter sebelumnya dengan tombol
(*) pada keypad yang merupakan fungsi clear. untuk keamanan sistem LCD akan
menampilkan kode bintang “ * ” dari kelima digit password tersebut Untuk eksekusi
Gambar 5.3 Tampilan LCD Pada saat Input Password
Apabila kode yang dimasukkan benar maka sistem pengaman tidak aktif, maka LED
biru dan Buzzer akan menyala. Hal ini dijelaskan oleh Gambar 5.4 sebagai berikut.
Gambar 5.4 Tampilan LCD dan LED On Pada Saat Password valid
Indikator bahwa pengaman tidak aktif akan terlihat dengan nyala LED biru. LED ini
terhubung dengan suatu relay yang berfungsi sebagai switch. Pada saat posisi relay
ON, LED akan menyala. Posisi relay ini akan menjadi ON saat password yang
dimasukkan benar.LED tidak akan menyala walaupun pemilik kunci mobil mencoba
untuk menstater mobil, sebelum password yang dimasukkan benar.
Setelah password yang dimasukkan benar selanjutnya kunci kontak bisa difungsikan.
Hal ini dijelaskan oleh Gambar 5.5 sebagai berikut. indicator
Berikut tampilan pada LED indicator kontak On dan indicator stater menunjukan
bahwa mobil bisa dijalankan.
Gambar 5.5 Tampilan LED indicator kontak On dan indicator stater.
5.2.1 Pengoperasian Ganti Password
Password ini bisa diubah sesuai dengan keinginan user tanpa harus load ulang
program. Sistem ini dilengkapi juga oleh suatu alarm bila password yang dimasukkan
salah sebanyak tiga kali. Sistem alarm bias dinormalkan dengan menekan atau
menginputkan Kode Master. Kode Master yang diinputkan berupa angka
(9999999999) terdiri dari 10 digit.
Untuk mengganti PASSWORD ada 2 tahapan proses, user harus menginputkan Kode
Standat dan Kode Master. Kode tersebut telah terprogram pada Mikrokontroller. indicator
kontak On
indicator kontak stater indicator
Gambar 5.6 Tampilan buka kode standat /Ganti Password
a) Masukan Kode Standart berupa angka (00000) terdiri dari 5 digit, Untuk
eksekusi password tekan tombol (#) pada keypad yang merupakan fungsi
enter.
b) Masukan Kode Master berupa angka (9999999999) terdiri dari 10 digit,
Untuk eksekusi password tekan tombol (#) pada keypad yang merupakan
fungsi enter. Hal ini dijelaskan oleh Gambar 5.7 sebagai berikut.
Gambar 5.7 Tampilan buka kode master
Selanjutnya user diminta memasukan New Kode atau buat kode baru Password terdiri
dari 5 digit, tekan tombol (#) untuk eksekusi. PASSWORD baru yang telah
Dari pengujian alat pada tugas akhir ini, dapat ditarik kesimpulan dan saran yang
nantinya dapat berguna untuk pengembangan alat ini secara lebih baik lagi.
6.1 Kesimpulan
Dari hasil perancangan sistem pengamanan tambahan pada mobil menggunakan security
password berbasis mikrokontroller, dapat ditarik beberapa kesimpulan yaitu.
1. Dengan adanya system pengaman mobil dengan menggunakan password orang lain atau
penyusup yang tidak mengetahui password tidak akan dapat menstater mobil. Dimana
pengemudi kendaraan harus memasukan password agar kendaraan dapat
dihidupkan/stater.
2. Mikrokontroler AT89S51 berfungsi sebagai pengendali utama pada pemrosesan data
password.
3. Keuntungan lain system ini adalah kerahasiaan password yang bias diganti sendiri oleh
pemilik kendaraan. tanpa harus load ulang program dengan menekan angka tertentu pada
keypad, Kode rahasia ini hanya diketahui oleh pemilik kendaraan.
4. Secara keseluruhan sistem yang telah diimplementasikan dapat berjalan dengan cukup
Dari perancangan sistem yang telah direalisasikan pada tugas akhir ini, diharapkan dapat
menjadi dasar penelitian lebih lanjut, mengingat banyaknya kekurangan maka perlu
pengembangan lebih lanjut pada waktu yang akan datang. Adapun saran-saran yang untuk tugas
akhir ini adalah.
1. Untuk pengembangan lebih lanjut, dapat di tambahkan remote yang bisa dikontrol dari jarak jauh.
2. Menggunakan/tambahkan EEPROM (Electrically Erasable Programmable Read-Only
Memory) berfungsi untuk menyimpan sejumlah konfigurasi data pada alat elektronik
68
• Andi Offset, (2007). Pemrograman Mikrokontroler AT89S51 dengan
Assembler, Yogyakarta: Andi.
• Budiharto, Widodo, & Rizal, Gamayel. (2007). 12 Proyek Mikrokontroler
untuk Pemula , Jakarta : Elex Media Komputindo.
• Eko. P, Agfianto, 2004, Belajar Mikrokontroler AT89C51/52/55 Teori dan
aplikasi, Gava Media.
• .http://www.atmel.com/dyn/resources/prod_documents/doc2502.pdf. Diakses
tanggal 06 Febuari 2011
• http://www.mytutorialcafe.com/mikrokontroller%20dasar.htm.Diakses
tanggal 10 April 2011.
• http://www.robotindonesia.com/articles.php. Diakses tanggal 10 April 2011.
• http://www.delta-electronic.com/article/?p=1200. Diakses tanggal 10 April
2011.
•
http://www.mikrokontroler.sekoteng.com/tulisan/2009/05/25/belajar-at89s51at89s52-compiler-dan-simulator/. Diakses tanggal 10 April 2011.
•
http://www.rezutopia.wordpress.com/2009/03/27/mikrokontroler-at89s51/.Diakses tanggal 10 April 2011.
•