Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
PEMBUATAN RUNNING TEXT UNTUK DISPLAY JEMBATAN
ANGKAT OTOMATIS BERBASIS MIKROKONTROLER
AT89S51
TUGAS AKHIR
BESTLY J.H SINAGA
062408003
PROGRAM STUDI FISIKA INSTRUMENTASI D-3
DEPARTEMEN FISIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
PEMBUATAN RUNNING TEXT UNTUK DISPLAY JEMBATAN
ANGKAT OTOMATIS BERBASIS MIKROKONTROLER
AT89S51
TUGAS AKHIR
Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Ahli Madya
BESTLY J.H SINAGA
062408003
PROGRAM STUDI FISIKA INSTRUMENTASI D-3
DEPARTEMEN FISIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
PERSETUJUAN
Judul : PEMBUATAN RUNNING TEXT UNTUK DISPLAY
JEMBATAN ANGKAT OTOMATIS BERBASIS MIKROKONTROLER AT89S51
Kategori : LAPORAN PROYEK
Nama : BESTLY J.H SINAGA
Nomor Induk Mahasiswa : 062408003
Program Studi : DIPLOMA III FISIKA INSTRUMENTASI
Departemen : FISIKA
Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN
ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA
Disetujui di Medan, Juni 2009
Diketahui oleh
Departemen Fisika FMIPA USU Pembimbing
Ketua Program Studi
Dr. Syahrul Humaidi, Msi Drs. Bisman P, M. Eng.Sc
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
PERNYATAAN TUGAS AKHIR
Saya mengakui bahwa tugas akhir ini hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Juni 2009
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
PENGHARGAAN
Puji dan syukur penulis panjatkan kehadirat Tuhan Yang Maha Esa karena
berkat rahmat dan karuniaNYa penulis dapat menyelesaikan Tugas akhir ini.
Laporan tugas akhir ini yang berjudul PEMBUATAN RUNNING TEXT
UNTUK DISPLAY JEMBTAN ANGKAT OTOMATIS BERBASIS
MIKROKONTROLER AT89S51. Meskipun dalam proses penulisan banyak menemui
hambatan dan rintangan namun dengan usaha dan kerja keras yang dilakukan oleh
penulis serta bantuan dari berbagai pihak, akhirnya laporan Tugas Akhir ini dapat
selesai. Atas bantuan dan motivasi yang diberika, maka penulis mengucapkan banyak
terimakasih kepada :
Bapak DR.EDI MARLIANTO,M.Sc selaku Dekan FMIPA USU,
Bapak Drs. Syahrul Humaidi,MSc selaku ketua jurusan Program Studi D3 Fisika
Instrumentasi. Bapak Drs Bisman P, M.Eng, Sc selaku dosen pembimbing penulis,
seluruh Dosen yang telah memberikan ilmu pengetahuan selama perkuliahan, serta
pegawai tata usuaha yang ikut mensukseskan program belajar mengajar.
Pada kesempatan ini penuis mengucapkan terimakasih yang sebesar-besarnya
kepada orang tua penulis Ayah Aston sinaga dan Ibu Elseria br Sitanggang yang
tercinta, yang telah memberikan bimbinga serta doa kepada penulis dari kecil hingga
sampai sekarang ini. Juga kepada saudara-saudara penulis, terimaksih atas dukungan
baik morilmaupun material, yang telah dibikan kepada penulis.Sahabat-sahat penulis
Esen Hawer, Willy, Alex, David, Sony, Fregki,Giat, Mangasi, dan rekan-rekan BIOS
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
menyelesaikan tugas akhir ini terimakasih atas bantuannnya dan dukungannya.
Penulis menyadari bahwa dalam penyusuna tugas akhir ini masih terdapat kekurangan
dan masih jauh dari kesempurnaan. Oleh karena itu penulis sangat terbuka terhadap
saran dan kritikan dalam sebuah diskusi yang membangun dari pembaca.
Akhir kata penulis mengharapkan semoga laporan tugas akhir ini dapat bermanfaat
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
ABSTRAK
Telah dirancang dan direalisasikan running text untuk display jembatan angkat otomatis berbasis mikrokontroler AT89S51. Pada perancangan digunakan Mikrokontroller AT89S51 yang merupakan otak dari keseluruhan system berfungsi untuk mengolah semua data yang masuk. IC buffer 4094 merupakan IC register geser
yang melakukan proses penggeseran data.Lampu LED yang menghasilkan cahaya saat diberi energi listrik dn berfungsi sebagai display. Pada pembuatan running text untuk display jembatan angkat otomatis berbasis mikrokontroler AT89S51 ini, Program
ditulis atau dibuat dengan menggunakan bahasa assembler.
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
5.2 Saran 70
Daftar Pustaka
Lampiran
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
DAFTAR TABEL
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
DAFTAR GAMBAR
Halaman
Gambar 2.1 IC Mikrokontroler AT89S51 14
Gambar 2.2 IC 4094 18
Gambar 2.3 Konfigurasi blok diagram IC 4094 19
Gambar 2.4 Konfigurasi Timeing clok IC 4094 19
Gambar 2.5 Simbol dan rangkaian dasar sebuah LED 20
Gambar 2.6 Aplikasi Transistor 21
Gambar 2.7 Transistor TIP 122 22
Gambar 2.8 Transistor sebagai saklar ON 22
Gambar 2.9 Karakteristik daerah satu rasi pada transistor 24
Gambar 2.10 Transistor sebagai saklar OFF 24
Gambar 2.11 Tampilan editor 8051 30
Gambar 2.11 ISP-flas Programmer 31
Gambar 3.1 Diagram blok 32
Gambar 3.2 Rangkaian Power Supplay (PSA) 34
Gambar 3.3 Rangkaian Mikrokontroler AT89S51 34
Gambar 3.4 Perancangan Flowchart Program 38
Gambar 3.2 Sub program aba-aba untuk menunggu 44
Gambar 3.3 Sub program aba-aba untuk lewat kembali 52
Gambar 3.4 Tampilan sub program delay 53
Gambar 3.5 Rangkaian lengkap simulasi running text 54
Gambar 4.1 Rangkaian power supply (PSA) 57
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
BAB 1
PENDAHULUAN
1.1. Latar Belakang Masalah
Perkembangan dunia teknologi dari tahun ke tahun semakin maju dan canggih.
Penerapan teknologi terhadap peralatan dalam berbagai bidang juga semakin maju.
Perkembangan ini didukung juga dengan semakin berkembangnya
komponen-komponen elektronika yang digunakan untuk membuat peralatan tersebut. Salah satu
peralatan elektronika yang saat ini juga banyak digunakan oleh masyarakat adalah
RUNNING TEXT. RUNNING TEXT ini pada umumnya digunakan sebagai
papan iklan atau sekedar untuk menampilkan suatu kalimat yang biasanya dipasang
pada pintu masuk pertokoan atau tempat lainnya.
Sangat beda dengan spanduk yang sifatnya hanya nonpermanen (karena cepat rusak).
Runing text bisa diubah tampilannya sewaktu-waktu menggunakan komputer
sehingga sangat praktis. Ukuran dan jumlah titik LED dapat disesuaikan dengan
kebutuhan yang diperlukan.
Kebutuhan manusia terhadap peralatan yang cerdas dan dapat bekerja secara
otomatis semakin meningkat. Selain sistem kerjanya yang teliti juga peralatan ini tidak
perlu dipantau setiap saat sebab peralatan otomatis dapat melakukan pekerjaannya
sendiri tanpa harus dikendalikan oleh pengguna. Penggunaan peralatan otomatis
sangatlah efisien, dibandingkan dengan penggunaan peralatan yang manual. Peralatan
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
lama, ini sangatlah tidak efisien. Berbeda dengan peralatan otomatis, dimana satu
orang dapat mengendalikan beberapa peralatan otomatis sekaligus, hanya butuh waktu
yang sedikit untuk memantau peralatan tersebut, apakah bekerja dengan benar atau
tidak.
1.2. Rumusan Masalah
Berdasarkan uraian yang terdapat dalam latar belakang di atas, maka dalam tugas
akhir ini akan dibuat sebuah PEMBUATAN RUNNING TEXT UNTUK DISPLAY
JEMBATAN ANGKAT OTOMATIS BERBASIS MIKROKONTROLER AT89S51.
Dalam tugas ahir ini, akan dibahas mengenai cara kerja running text sebagai display
untuk aba-aba pada saat jembatan teragkat dan tertutup kembali. Jika ada kapal yang
akan lewat melaui jembatan tersebut maka palang jalan akan turun, jembatan akan
membuka secara otomatis,disini running text akan membuat aba-aba untuk menunggu
dan akan menutup kembali apabila kapal telah melewati jembatan tersebut, dan
running text akan membuat aba-aba untuk lewat kembali.
Pada ranning text alat yang digunakan adalah, dua buah mikrokontroler AT89S51, IC
buffer 4094 (shift register) , lampu LED.
1.3 Tujuan Penulisan
Adapun tujuan penulisan tugas akhir ini adalah sebagai berikut :
1. Memanfaatkan running text sebagai tampilan display secara otomatis, jika
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
menampilkan aba-aba untuk berhenti kepada pengemudi yang akan
melewati jembatan.
2. Memanfaatkan running text sebagai tampilan display secara otomatis, jika
ada kapal yang sudah melewati jembatan tersebut running text akan
menampilkan aba-aba untuk lewat kembali kepada penemudi atau setelah
jembatan telah tertutup kembali.
1.4 Metode Pengumpulan Data
Data-data yang dikumpulkan dalam penulisan tugas akhir ini diperoleh melalui
beberapa metode. Adapun metode yang digunakan penulis dalam pengumpulan data
adalah sebagai berikut :
1. Studi kepustakaan.
Pada metode ini, penulis mengumpulkan data dan teori yang dibutuhkan
dalam penulisan tugas akhir melalui buku-buku dan berbagai referensi
lainnya yang berkaitan dengan tugas akhir ini.
2. Lembar data (Datasheet) komponen yang digunakan pada peralatan.
Lembar data (Datasheet) merupakan data-data yang diperlukan oleh
produsen komponen elektronika mengenai fungsi, karakteristik mengenai
data-data penting lainnya tentang suatu komponen hasil produksi dari
produsen komponen elektronika yang bersangkutan.
3. Pengujian Alat.
Data yang diperoleh melalui metode ini dapat setelah alat yang dibuat diuji
dan diambil kesimpulan setelah dilakukan pengujian tersebut.
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Pada metode ini, penulis melakukan konsultasi dengan berdiskusi dan
bertanya secara langsung pada dosen pembimbing penulis mengenai segala
permasalahan dalam penulisan tugas akhir ini.
1.5 Batasan Masalah
Penulisan tugas akhir ini dibatasi pada:
Studi cara kerja rangkaian yang meliputi diagram blok dan menguraikan secara
umum fungsi dari masing-masing komponen utama dalam blok tersebut
Mikrokontroler yang digunakan yaitu AT89S51, baik untuk kontrol jembatan
maupun kontrol running text, jadi hanya mikrokontroler ini yang akan
diuaraikan cara kerjanya dan cara pemrogramannya
IC Buffer 4094 yang merupkan IC register geser yang melakukan proses
penggeseran data. Penggeseran data diperlukan baik dalam pengiriman
data secara berderet (serial) maupun dalam perhitungan aljabar perkalian
dan pembagian. Data dikirim melalui saluran komunikasi bit demi bit.
Data yang disimpan/diolah dalam komputer selalu bersipat parallel. Agar
dapat dikirim melalui satu saluran komunikasi, maka data beberapa bit itu
harus digeser keluar satu demi satu
Lampu LED yang menghasilkan cahaya saat diberi energi listrik dan berfungsi
sebagai display. Dalam bias maju sambungan p-n terdapat rekombinasi
antara elektron bebas dan lubang (hole). Energi ini tidak seluruhnya diubah
kedalam bentuk energi cahaya atau photon melainkan dalam bentuk panas
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Trnsistor TIP 122 sebagai driver atau sebagai komponen saklar (switching)
dengan memanfaatkan daerah penjenuhan (saturasi) dan daerah
penyumbatan (cut off) yang ada pada karakteristik transistor.
Resistor untuk membatasi atau menghambat jumlah arus yang mengalir dalam
satu rangkaian.
Kapasitor merupakan komponen elektronika yang dapat menyimpan muatan
listrik.
1.6 Sistematika Penulisan
Untuk mempermudah pembahasan dan pemahaman maka penulis membuat
sistematika pembahasan bagaimana sebenarnya prinsip kerja dari simulasi jembatan
angkat dengan display running text ,maka penulis menulis laporan ini sebagai berikut:
BAB 1. PENDAHULUAN
Dalam bab ini berisikan mengenai latar belakang, tujuan penulisan,
batasan masalah, serta sistematika penulisan.
BAB 2. LANDASAN TEORI
Landasan teori, dalam bab ini dijelaskan tentang teori pendukung yang
digunakan untuk pembahasan dan cara kerja dari rangkaian Teori
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
dan software), bahasa program yang digunakan, serta cara kerja dari
dari IC 4094 (sifh register).
BAB 3. ANALISA RANGKAIAN DAN KERJA SISTEM
Analisa rangkaian dan sistem kerja, dalam bab ini dibahas tentang
diagram blok dari rangkaian, cara kerja IC 4094(shift register) dan
diagram aliran dari program yang akan diisikan ke mikrokontroler
AT89S51.
BAB 4. PENGUJIAN ALAT DAN PROGRAM
Pada bab ini akan dibahas hasil analisa dari rangkaian dan sistem kerja
alat, penjelasan mengenai rangkaian-rangkaian yang digunakan,
penjelasan mengenai program yang diisikan ke mikrokontroler.
BAB 5. KESIMPULAN DAN SARAN
Bab ini merupakan penutup yang meliputi tentang kesimpulan dari
pembahasan yang dilakukan dari laporan proyek ini serta saran apakah
rangkaian ini dapat dibuat lebih efisien dan dikembangkan
perakitannya pada suatu metode lain yang mempunyai sistem kerja
yang sama.
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
BAB 2
LANDASAN TEORI
2.1 Perangkat Keras.
2.1.1 Arsitektur Mikrokontroler AT89S51
Mikrokontroler, sebagai suatu terobosan teknologi mikrokontoler dan
mikrokomputer, hadir memenuhi kebutuhan pasar (market need) dan teknologi baru.
Sebagai teknologi baru, yaitu teknologi semikonduktor dengan kandungan transistor
yang lebih banyak namun hanya membutuhkan ruang kecil serta dapat diproduksi
secara massal (dalam jumlah banyak) sehingga harga menjadi lebih murah
(dibandingkan mikroprosesor). Sebagai kebutuhan pasar, mikrokontroler hadir untuk
memenuhi selera industri dan para konsumen akan kebutuhan dan keinginan alat-alat
bantu dan mainan yang lebih canggih.
Ilustrasi yang mungkin bisa memberikan gambaran yang jelas dalam
penggunaan mikrokontroler adalah aplikasi mesin tiket dalam arena permainan yang
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
suatu nilai, nilai inilah yang menentukan berapa jumlah tiket yang bisa diperoleh dan
jika dikumpulkan dapat ditukar dengan berbagai macam hadiah. Sistem tiket ini
ditangani dengan mikrokontroler, karena tidak mungkin menggunakan computer PC
yang harus dipasang disamping (atau di belakang) mesin permainan yang
bersangkutan.
Selain system tiket, kita juga dapat menjumpai aplikasi mikrokontroler dalam
bidang pengukuran jarak jauh atau yang dikenal dengan system telemetri. Misalnya
pengukuran disuatu tempat yang membahayakan manusia, maka akan lebih nyaman
jika dipasang suatu system pengukuran yang bisa mengirimkan data lewat pemancar
dan diterima oleh stasiun pengamatan dari jarak yang cukup aman dari sumbernya.
Sistem pengukuran jarak jauh ini jelas membutuhkan suatu system akuisisi data
sekaligus system pengiriman data secara serial (melalui pemancar), yang semuanya itu
bisa diperoleh dari mikrokontroler yang digunakan.
Tidak seperti system komputer, yang mampu menangani berbagai macam
program aplikasi (misalnya pengolah kata, pengolah angka dan lain sebagainya),
mikrokontroler hanya bisa digunakan untuk satu aplikasi tertentu saja. Perbedaan
lainnya terletak pada perbandingan RAM-nya dan ROM. Pada system computer
perbandingan RAM dan ROM-nya besar, artinya program-program pengguna
disimpan dalam ruang RAM yang relative besar, sedangkan rutin-rutin antarmuka
perangkat keras disimpan dalam ruang ROM yang kecil. Sedangkan pada
mikrokontroler, perbandingan ROM dan RAM-nya yang besar artinya program
control disimpan dalam ROM (bisa Masked ROM atau Flash PEROM) yang
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
penyimpanan sementara, termasuk register-register yang digunakan pada
mikrokontroler yang bersangkutan.
2.1.2 Kontruksi AT89S51
Mikrokontrol AT89S51 hanya memerlukan tambahan 3 kapasitor, 1 resistor
dan 1 kristal serta catu daya 5 Volt. Kapasitor 10 mikro-Farad dan resistor 1 Kilo Ohm
dipakai untuk membentuk rangkaian reset. Dengan adanya rangkaian reset ini
AT89S51 otomatis direset begitu rangkaian menerima catu daya. Kristal dengan
frekuensi maksimum 24 MHz dan kapasitor 30 piko-Farad dipakai untuk melengkapi
rangkaian oscilator pembentuk clock yang menentukan kecepatan kerja
mikrokontroler.
Memori merupakan bagian yang sangat penting pada mikrokontroler.
Mikrokontroler memiliki dua macam memori yang sifatnya berbeda.
Read Only Memory (ROM) yang isinya tidak berubah meskipun IC kehilangan catu
daya. Sesuai dangan keperluannya, dalam susunan MCS-51 memori penyimpanan
progam ini dinamakan sebagai memori progam.
Random Access Memori (RAM) isinya akan sirna begitu IC kehilangan catu daya,
dipakai untuk menyimpan data pada saat progam bekerja. RAM yang dipakai untuk
menyimpan data ini disebut sebagai memori data.
Ada berbagai jenis ROM. Untuk mikrokontroler dengan progam yang sudah
baku dan diproduksi secara masal, progam diisikan ke dalam ROM pada saat IC
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
mengunakan ROM yang dapat diisi ulang atau Programble-Eraseable ROM yang
disingkat menjadi PEROM atau PROM. Dulu banyak dipakai UV-EPROM (Ultra
Violet Eraseable Progamble ROM) yang kemudian dinilai mahal dan ditinggalkan
setelah ada flash PEROM yang harganya jauh lebih murah.
Jenis memori yang dipakai untuk Memori Program AT89S51 adalah Flash
PEROM, program untuk mengendalikan mikrokontroler diisikan ke memori itu lewat
bantuan alat yang dinamakan sebagai AT89S51 Flash PEROM Programmer.
Memori Data yang disediakan dalam chip AT89S51 sebesar 128 byte,
meskipun hanya kecil saja tapi untuk banyak keperluan memori kapasitas itu sudah
cukup.Sarana Input/Ouput yang disediakan cukup banyak dan bervariasa. AT89S51
mempunyai 32 jalur Input/Ouput. Jalur Input/Ouput paralel dikenal sebagai Port 1
(P1.0..P1.7) dan Port 3 (P3.0..P3.5 dan P3.7).
AT89S51 dilengkapi UART (Universal Asyncronous Receiver/Transmiter)
yang biasa dipakai untuk komunikasi data secara seri. Jalur untuk komunikasi data
seri (RXD dan TXD) diletakan berhimpitan dengan P1.0 dan P1.1 di kaki nomor 2 dan
3, sehingga kalau sarana input/ouput yang bekerja menurut fungsi waktu. Clock
penggerak untaian pencacah ini bisa berasal dari oscillator kristal atau clock yang
diumpan dari luar lewat T0 dan T1. T0 dan T1 berhimpitan dengan P3.4 dan P3.5,
sehingga P3.4 dan P3.5 tidak bisa dipakai untuk jalur input/ouput parelel kalau T0 dan
T1 dipakai.
AT89S51 mempunyai enam sumber pembangkit interupsi, dua diantaranya
adalah sinyal interupsi yang diumpankan ke kaki INT0 dan INT1. Kedua kaki ini
berhimpitan dengan P3.2 dan P3.3 sehingga tidak bisa dipakai sebagai jalur
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Port1 dan 2, UART, Timer 0,Timer 1 dan sarana lainnya merupakan register
yang secara fisik merupakan RAM khusus, yang ditempatkan di Special Functoin
Regeister (SFR).
2.1.3 SFR (Register Fungsi Khusus ) Pada Keluarga 51
Sekumpulan SFR atau Special Function Register yang terdapat pada
Mikrokontroler Atmel Keluarga 51 ditunjukan pada tabel 2.1, pada bagian sisi kiri dan
kanan dituliskan alamat-alamatnya dalam format heksadesimal.
Tidak semua alamat pada SFR digunakan, alamat-alamat yang tidak digunakan
diimplementasikan pada chip. Jika dilakukan usaha pembacaan pada alamat-alamat
yang tidak terpakai tersebut akan menghasilkan data acak dan penulisannya tidak
menimbulkan efek sama sekali. Pengguna perangkat lunak sebaiknya jangan
menuliskan ‘1’ pada lokasi-lokasi ‘tak berurutan’ tersebut, karena dapat digunakan
untuk mikrokontroler generasi selanjutnya. Dengan demikian, nilai-nilai reset atau
non-aktif dari bit-bit baru ini akan selalu ‘O’ dan nilai aktifnya adalah ‘1’. Berikut
akan dijelaskan secara singkat SFR-SFR beserta fungsinya:
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
A8 IE AF
A0 P2 A7
98 SCON SBUF 9F
90 P1 97
88 TCON TMOD TLO TL1 THO TH1 8F
80 PO SP DPL DPH PCON 87
Tabel 2.1. Peta Register Fungsi Khusus – SFR (Special Function Register) Tanda (…) untuk SFR yang dijumpai di keluarga 51 dengan 3 Timer
Akumulator
ACC atau akumulator yang menempati lokasi E 0h digunakan sebagai register untuk
penyimpanan data sementara, dalam program, instruksi mengacunya sebagai register
A (bukan ACC).
Register B
Register B (lokasi F 0) digunakan selama operasi perkalian dan pembagian, untuk
instruksi lain dapat diperlakukan sebagai register scratch pad (“papan coret-coret”).
Program Status Word (PSW)
Register PSW (lokasi D 0h) mengandung informasi status program.
Stack Pointer
Register SP atau Stack Pointer (lokasi 8 0h) merupakan register dengan panjang 8-bit,
digunakan dalam proses simpan menggunakan instruksi PUSH dan CALL. Walau
Stack bisa menempati lokasi dimana saja dalam RAM, register SP akan selalu
diinisialisasi ke 07h setelah adanya reset, hal ini menyebabkan stack berawal di lokasi
08h.
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Register Data Pointer atau DPTR mengandung DPTR untuk byte tinggi (DPH) dan
byte rendah (DPL) yang masing-masing berada dilokasi 83h dan 82h, bersama-sama
membentuk register yang mampu menyimpan alamat 16-bit. Dapat dimanipulasi
sebagai register 16-bit atau ditulis dari/ke port, untuk masing-masing Port 0,Port 1,
Port2 dan Port 3.
Serial Data Buffer
SBUF atau Serial Data Buffer (lokasi 99h) sebenarnya terdiri dari dua register yang
terpisah, yaitu register penyangga pengirim (transmit buffer) dan penyangga penerima
(receive buffer). Pada saat data disalin ke SBUF, maka data sesungguhnya dikirim ke
penyangga pengirim dan sekaligus mengawali transmisi data serial. Sedangkan pada
saat data disalin dari SBUF, maka sebenarnya data tersebut berasal dari penyangga
penerima.
Time Register
Pasangan register (TH0, TL0) dilokasi 8Ch dan 8Ah,(TH1, TL1) dilokasi 8Dh dan
8Bh serta (TH2, TL2) dilokasi CDh dan CCH merupakan register-register pencacah
16-bit untuk masing-masing Timer 0, Timern 1 dan Timer 2.
Capture Register
Pasangan register (RCAP2H, RCAP21) yang menempati lokasi CBh dan CAh
merupakan register capture untuk mode Timer 2 capture. Pada mode ini, sebagai
tanggapan terjadinya suatu transisi sinyal di kaki (pin) T2EX (pada AT89C52/55),
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
memiliki mode isi-ulang-otomatis 16-bit dan RCAP2H serta RCAP2L digunakan
untuk menyimpan nilai isi-ulang tersebut.
Control Register
Register-register IP, IE, TMOD, TCON, T2CON, T2MOD, SCON dan PCON berisi
bit-bit control dan status untuk system interupsi, pencacah/pewaktu dan port serial.
Berikut ini merupakan spesifikasi dari IC AT89C51 :
• Kompatible dengan produk MCS-51
• Empat K byte In-Sistem Reprogammable Flash Memory
• Daya tahan 1000 kali baca/tulis
• Fully Static Operation : 0 Hz sampai 24 MHz
• Tiga level kunci memori progam
• 128x8 bit RAM internal
• 32 jalur I/O
• Tiga 16 bit Timer/Counter
• Enam sumber interupt
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Gambar 2.1. IC Mikrokontroler AT89S51
Deskripsi pin-pin pada mikrokontroler AT89S51 :VCC (Pin 40)
Suplai tegangan
GND (Pin 20)
Ground
Port 0 (Pin 39-Pin 32)
Port 0 dapat berfungsi sebagai I/O biasa, low order multiplex address/data ataupun
penerima kode byte pada saat flash progamming Pada fungsi sebagai I/O biasa port ini
dapat memberikan output sink ke delapan buah TTL input atau dapat diubah sebagai
input dengan memberikan logika 1 pada port tersebut. Pada fungsi sebagai low order
multiplex address/data, port ini akan mempunyai internal pull up. Pada saat flash
progamming diperlukan eksternal pull up, terutama pada saat verifikasi program.
Port 2 (Pin 21 – pin 28)
Port 2 berfungsi sebagai I/O biasa atau high order address, pada saat mengakses
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
isi dari P2 special function register. Port ini mempunyai internal pull up dan berfungsi
sebagai input dengan memberikan logika 1. Sebagai output, port ini dapat
memberikan output sink keempat buah input TTL.
Port 3 (Pin 10 – pin 17)
Port 3 merupakan 8 bit port I/O dua arah dengan internal pullup. Port 3 juga
mempunyai fungsi pin masing-masing, yaitu sebagai berikut :
Nama pin Fungsi
P3.0 (pin 10) RXD (Port input serial)
P3.1 (pin 11) TXD (Port output serial)
P3.2 (pin 12) INTO (interrupt 0 eksternal)
P3.3 (pin 13) INT1 (interrupt 1 eksternal)
P3.4 (pin 14) T0 (input eksternal timer 0)
P3.5 (pin 15) T1 (input eksternal timer 1)
P3.6 (pin 16) WR (menulis untuk eksternal data memori)
P3.7 (pin 17) RD (untuk membaca eksternal data memori)
Tabel 2.2. Fungsi pin AT89S51
RST (pin 9)
Reset akan aktif dengan memberikan input high selama 2 cycle.
ALE/PROG (pin 30)
Address latch Enable adalah pulsa output untuk me-latch byte bawah dari alamat
selama mengakses memori eksternal. Selain itu, sebagai pulsa input progam (PROG)
selama memprogam Flash.
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Progam store enable digunakan untuk mengakses memori progam eksternal.
EA (pin 31)
Pada kondisi low, pin ini akan berfungsi sebagai EA yaitu mikrokontroler akan
menjalankan progam yang ada pada memori eksternal setelah sistem direset. Jika
kondisi high, pin ini akan berfungsi untuk menjalankan progam yang ada pada
memori internal. Pada saat flash progamming, pin ini akan mendapat tegangan 12
Volt.
XTAL1 (pin 19)
Input untuk clock internal.
XTAL2 (pin 18)
Output dari osilator.
2.1.4 Konfigurasi IC 4094 (shift register)
IC 4094 merupakan IC register geser yang melakukan proses penggeseran
data. Penggeseran data diperlukan baik dalam pengiriman data secara berderet (serial)
maupun dalam perhitungan aljabar perkalian dan pembagian. Data dikirim melalui
saluran komunikasi bit demi bit. Data yang disimpan/diolah dalam komputer selalu
bersipat parallel. Agar dapat dikirim melalui satu saluran komunikasi, maka data
beberapa bit itu harus digeser keluar satu demi satu. Begitu juga disisi penerima, bit
demi bit data yang diterima dari saluran komunikasi harus digeser sampai membentuk
satu satuan data parallel agar dapat disimpan/diolah dalam register komputer. Jadi
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Dalam perhitungan aritmatika(aljabar), komputer selalu melaksanakan operasi
perkalian dan pembagian dengan melakukan penambahan/pengurangan disertai
penggeseran kekiri/kanan secara berulang ulang. Perlu dicatat bahwa bila suatu data
bilangan yang digeser ke kiri maka harga bilangan itu akan digandakan menjadi dua
kali harga semula dan bila satu bilangan biner digeser ke kanan, maka harga menjadi
setengah dari harga sebelum digeser. Sebagai contoh, kalau biner 0110, yang setara
dalam decimal adalah 6, digeser kekanan satu kedudukan maka harga menjadi 0011
(310) sedangkan digeser ke kiri, harganya menjadi 1100 (1210) perhatikan bahwa
penggeseran yang normal dilakukan dengan menambahkan bit 0 pada posisi paling
kanan pada pergeseran ke kiri dan pada kekdudukan paling kiri pada penggeseran
kekanan. Karena cacah bit yang dapat ditampung oleh satu register sudah tertentu,
maka bit diujung lain akan hilang, yaitu bit yang paling kanan pada penggeseran ke
kanan dan bit paling kiri pada penggeseran kekiri.
Register atau disebut dengan memori adalah suatu rangkaian logika yang
mampu menyimpan data dalam bentuk bilangan biner. Fungsi dari register , selain
sebagai penyimpanan data juga untuk menghindari berkedipnya angka yang
ditunjukkan oleh display (seven segment) pada saat menerima pulsa-pulsa yang
diberikan oleh dekoder. Register dapat memindahkan bit-bit yang tersimpan ke kiri.
Register geser dikelompokkan sebagai urutan rangkaian logika, sehingga register
geser disusun dari beberapa rangkaian flip-flop. Selain untuk pergeseran data, register
geser juga dapat digunakan untuk mengubah data seri ke paralel atau data paralel ke
seri.Register geser (shift register) merupakan salah satu piranti fungsional yang
banyak digunakan dalam sistem digital. Tampilan pada layar kalkulator dimana angka
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
karakteristik register geser tersebut. Register geser ini terbangun dari flip-flop.
Register geser dapat digunakan sebagai memori sementara, dan data yang tersimpan
didalamnya dapat digeser ke kiri atau ke kanan. Register geser juga dapat digunakan
untuk mengubah data seri ke paralel atau data paralel ke seri.
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Gambar 2.3 Konfigurasi blok diagram IC 4094
Gambar 2.4 Konfigurasi Timeing clok IC 4094
2.1.5 L ight Emiting Dioda (LED)
LED adalah dioda yang menghasilkan cahaya saat diberi energi listrik. Dalam
bias maju sambungan p-n terdapat rekombinasi antara elektron bebas dan lubang
(hole). Energi ini tidak seluruhnya diubah kedalam bentuk energi cahaya atau photon
melainkan dalam bentuk panas sebagian.
Proses pemancaran cahaya akibat adanya energi listrik yang diberikan
terhadap suatu bahan disebut dengan sifat elektroluminesensi. Material lain misalnya
Galium Arsenida Pospat (GaAsP) atau Galium Pospat (GaP): photon energi cahaya
dipancarkan untuk menghasilkan cahaya tampak. Jenis lain dari LED digunakan untuk
menghasilkan energi tidak tampak seperti yang dipancarkan oleh pemancar laser atau
inframerah.
330 VCC
5V 330
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Gambar 2.5 Simbol dan rangkaian dasar sebuah LED
2.1.6 Transistor Sebagai Saklar
Dari gambar 2.6. memperlihatkan sebuah ascilator yang mempunyai delapan
frekuensi kerja. Frekuensi kerja oscilator disesuaikan dengan tombol telepon yang
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Didalam pemakaiannya transistor dipakai sebagai komponen saklar
(switching) dengan memanfaatkan daerah penjenuhan (saturasi) dan daerah
penyumbatan (cut off) yang ada pada karakteristik transistor.
2.1.7 Transistor TIP 122 Sebagai Driver
Didalam pemakaiannya transistor dipakai sebagai komponen saklar
(switching) dengan memanfaatkan daerah penjenuhan (saturasi) dan daerah
penyumbatan (cut off) yang ada pada karakteristik transistor.Gambar transisror TIP
122:
Gambar 2.7. Transistor TIP 122
Pada daerah penjenuhan nilai resistansi persambungan kolektor emiter secara
ideal sama dengan nol atau kolektor dan emiter terhubung langsung (short). Keadaan
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
pada kenyataannya VCE bernilai 0 sampai 0,3 Volt. Dengan menganalogikan transistor
sebagai saklar, transistor tersebut dalam keadaan on seperti pada gambar 2.8.
Gambar 2.8. Transistor sebagai Saklar ON
Saturasi pada transistor terjadi apabila arus pada kolektor
menjadi maksimum dan untuk mencari besar arus basis agar transistor saturasi adalah
:
Hubungan antara tegangan basis (VB) dan arus basis (IB) adalah :
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler
Jika tegangan VB telah mencapai B BE
B V
saturasi, dengan Ic mencapai maksimum.
Gambar 2.9 dibawah ini menunjukkan apa yang dimaksud
dengan VCE (sat) adalah harga VCE pada beberapa titik dibawah knee dengan
posisi tepatnya ditentukan pada lembar data. Biasanya VCE (sat) hanya beberapa
perpuluhan volt, walaupun pada arus kolektor sangat besar bisa melebihi 1 volt.
Bagian dibawah knee pada gambar 2.9 dikenal sebagai daerah saturasi.
Gambar 2.9. Karakteristik daerah saturasi pada transistor
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Pada daerah penyumbatan, nilai resistansi persambungan
kolektor emiter secara ideal sama dengan tak terhitung atau terminal kolektor dan
emiter terbuka (open).
Keadaan ini menyebabkan tegangan (VCB) sama dengan tegangan sumber (Vcc).
Tetapi pada kenyataannya Vcc pada saat ini kurang dari Vcc karena terdapat arus
bocor dari kolektor ke emiter. Dengan menganalogikan transistor sebagai saklar,
transistor tersebut dalam keadaan off seperti gambar dibawah ini.
Gambar 2.10.Transistor Sebagai Saklar OFF
Keadaan penyumbatan terjadi apabila besar tegangan habis (VB) sama dengan
tegangan kerja transistor (VBE) sehingga arus basis (IB) = 0 maka :
hfe
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Vcc = Vc + VCE ………..………(2.23)
VCE = Vcc – (Ic . Rc) ..………(2.24)
VCE = Vcc ..………(2.25)
Perangkat Lunak
2.2.1Bahasa Assembly MCS-51
Bahasa yang digunakan untuk memprogram IC mikrokontroler AT89S51
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
bahasa ini hanya ada 51 instruksi. Dari 51 instruksi, yang sering digunakan orang
hanya 10 instruksi. Instruksi –instruksi tersebut antara lain :
1. Instruksi MOV
Perintah ini merupakan perintah untuk mengisikan nilai ke alamat atau register
tertentu. Pengisian nilai dapat secara langsung atau tidak langsung.
Contoh pengisian nilai secara langsung
MOV R0,#20h
Perintah di atas berarti : isikan nilai 20 Heksadesimal ke register 0 (R0).
Tanda # sebelum bilangan menunjukkan bahwa bilangan tersebut adalah nilai.
Contoh pengisian nilai secara tidak langsung
MOV 20h,#80h
... ... MOV R0,20h
Perintah di atas berarti : isikan nilai yang terdapat pada alamat 20
Heksadesimal ke register 0 (R0).
Tanpa tanda # sebelum bilangan menunjukkan bahwa bilangan tersebut adalah
alamat.
2. Instruksi DJNZ
Decreament Jump If Not Zero (DJNZ) ini merupakan perintah untuk
mengurangi nilai register tertentu dengan 1 dan lompat jika hasil
pengurangannya belum nol. Contoh ,
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler
meneruskan ke perintah pada baris berikutnya.
3. Instruksi ACALL
Instruksi ini berfungsi untuk memanggil suatu rutin tertentu. Contoh :
...
Instruksi RETURN (RET) ini merupakan perintah untuk kembali ke rutin
pemanggil setelah instruksi ACALL dilaksanakan. Contoh,
ACALL TUNDA
Instruksi ini merupakan perintah untuk lompat ke alamat tertentu. Contoh,
Loop:
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
JMP Loop
6. Instruksi JB (Jump if bit)
Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang
dimaksud berlogika high (1). Contoh,
Loop:
JB P1.0,Loop ...
7. Instruksi JNB (Jump if Not bit)
Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang
dimaksud berlogika Low (0). Contoh,
Loop:
JNB P1.0,Loop ...
8. Instruksi CJNZ (Compare Jump If Not Equal)
Instruksi ini berfungsi untuk membandingkan nilai dalam suatu register
dengan suatu nilai tertentu. Contoh,
Loop:
...
CJNE R0,#20h,Loop ...
Jika nilai R0 tidak sama dengan 20h, maka program akan lompat ke rutin
Loop. Jika nilai R0 sama dengan 20h,maka program akan melanjutkan
instruksi selanjutnya..
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Instruksi ini merupakan perintah untuk mengurangi nilai register yang
dimaksud dengan 1. Contoh,
MOV R0,#20h R0 = 20h
...
DEC R0 R0 = R0 – 1
...
10.Instruksi INC (Increament)
Instruksi ini merupakan perintah untuk menambahkan nilai register yang
dimaksud dengan 1. Contoh,
MOV R0,#20h R0 = 20h
...
INC R0 R0 = R0 + 1
...
11.Dan lain sebagainya
2.2.2 Software 8051 Editor, Assembler, Simulator (IDE)
Instruksi-instruksi yang merupakan bahasa assembly tersebut dituliskan pada
sebuah editor, yaitu 8051 Editor, Assembler, Simulator (IDE). Tampilannya seperti di
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Gambar 2.6 8051 Editor, Assembler, Simulator (IDE)
Gambar 2.11 Tamian eitor 8051
Setelah program selesai ditulis, kemudian di-save dan kemudian di-Assemble
(di-compile). Pada saat di-assemble akan tampil pesan peringatan dan kesalahan. Jika
masih ada kesalahan atau peringatan, itu berarti ada kesalahan dalam penulisan
perintah atau ada nama subrutin yang sama, sehingga harus diperbaiki terlebih dahulu
sampai tidak ada pesan kesalahan lagi.
Software 8051IDE ini berfungsi untuk merubah program yang kita tuliskan ke
dalam bilangan heksadesimal, proses perubahan ini terjadi pada saat peng-compile-an.
Bilangan heksadesimal inilah yang akan dikirimkan ke mikrokontroller.
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Untuk mengirimkan bilangan-bilangan heksadesimal ini ke mikrokontroller
digunakan software ISP- Flash Programmer 3.0a yang dapat didownload dari internet.
Tampilannya seperti gambar di bawah ini
Gambar 2.12 ISP- Flash Programmer
Cara menggunakannya adalah dengan meng-klik Open File untuk mengambil
file heksadesimal dari hasil kompilasi 8051IDE, kemudian klik Write untuk
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler
PERANCANGAN ALAT DAN CARA KERJA RANGKAIAN
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Pada pembuatan diplay running text ini terdapat 8 blok rangkaian utama.
Sensor relay1 berfungsi untuk mengaktifkan logika ke mikrokontroler 1. Relay 2
berfungsi untuk mengaktifkan logika ke mikrokontroler 2. Mikrokontroler berfungsi
sebagai otak atau pengendali running text. Shift register berfungsi sebagi IC
pergeseran data serial yang diterima dari mikrokontroler. Kemudian keluaran logika
dari shift register akan di tampilkan ke LED yang menyala menurut logika yang
diterimanya Output dari sensor akan dikuatkan kembali oleh penguat sinyal sebelum
masuk ke mikrokontroller.
Sedangkan relay 1 dan 2 berfungsi untuk mengaktifkan mikrokontroller untuk
display running text 1 dan 2. Mikrokontroller 1 akan bekerja jika ia menerima logika 1
(high) dan otomatis running text 1 dan lampu merah aktif. Sedangkan mikrokontroller
2 bekerja jika menerima logika 0 (Low) dan otomatis Running text dan lampu hijau
aktif dan mikrokontroller 1 akan mendapat logika 0 (Low) ysng berarti padam dan
sebaliknya.oller AT89S51 yang merupakan otak dari keseluruhan system berfungsi
untuk mengolah semua data yang masuk.
3.2Perancangan Power Supplay (PSA)
Rangkaian ini berfungsi untuk mensupplay tegangan ke seluruh rangkaian yang
ada. Rangkaian PSA yang dibuat terdiri dari dua keluaran, yaitu 5 volt dan 12 volt,
keluaran 5 volt digunakan untuk mensupplay tegangan ke seluruh rangkaian,
sedangkan keluaran 12 volt digunakan untuk mensuplay tegangan ke motor stepper.
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler
Gambar 3.2 Rangkaian Power Supplay (PSA)
3.3. Perancangan Rangkaian Mikrokontroler AT89S51
Rangkaian ini berfungsi sebagai pusat kendali dari seluruh system yang ada.
Rangkaian mikrokontroler ditunjukkan pada gambar berikut ini:
Gambar 3.3. Rangkaian Mikrokontroller AT89S51
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Pin 31 External Access Enable (EA) diset high (H). Ini dilakukan karena
mikrokontroller AT89S51 tidak menggunakan memori eskternal. Pin 18 dan 19
dihubungkan ke XTAL 12 MHz dan capasitor 33 pF. XTAL ini akan mempengaruhi
kecepatan mikrokontroller AT89S51 dalam mengeksekusi setiap perintah dalam
program. Pin 9 merupakan masukan reset (aktif tinggi). Pulsa transisi dari rendah ke
tinggi akan me-reset mikrokontroller ini. Pin 32 sampai 39 adalah Port 0 yang
merupakan saluran/bus I/O 8 bit open collector dapat juga digunakan sebagai
multipleks bus alamat rendah dan bus data selama adanya akses ke memori program
eksternal. Pada port 0 ini masing masing pin dihubungkan dengan resistor 4k7 ohm.
Resistor 4k7 ohm yan dihubungkan ke port 0 befungsi sebagai pull up( penaik
tegangan ) agar output dari mikrokontroller dapat mentrigger transistor. Pin 1 sampai
8 adalah port 1. Pin 21 sampai 28 adalah port 2. Dan Pin 10 sampai 17 adalah port 3.
Pin 39 yang merupakan P0.0 dihubungkan dengan sebuah resistor 330 ohm dan
sebuah LED. Ini dilakukan hanya untuk menguji apakah rangkaian minimum
mikrokontroller AT89S52 sudah bekerja atau belum. Dengan memberikan program
sederhana pada mikrokontroler tersebut, dapat diketahui apakah rangkaian minimum
tersebut sudah bekerja dengan baik atau tidak. Jika LED yang terhubug ke Pin 39
sudah bekerja sesuai dengan perintah yang diberikan, maka rangkaian minimum
tersebut telah siap digunakan. Pin 20 merupakan ground dihubungkan dengan ground
pada power supplay. Pin 40 merupakan sumber tegangan positif dihubungkan dengan
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
3.4Perancangan Algoritma Program
Perancangan tugas akhir ini terbagi dua bagian, yaitu perancangan hardware dan
perancangan software. Pada bab 3 ini penulis hanya membahas perancangan software
dan hardware. Perancangan program ( software ) perlu dilakukan perancangan
algoritma dari program yang akan dibuat. Algoritma program adalah kerangka atau
garis – garis besar dari program yang akan dibuat agar dapat diketahui proses – proses
yang terjadi di dalam program. Adapun algoritma dari program simulasi jembatan
angkat berbasis mikrokontroller AT9S51 adalah sebagai berikut :
a. Bagian Input atau Masukan Program
Bagian input atau masukan dari program diperoleh dari sinyal ( data ) yang
masuk dari relay ke mikro running text. Relay ini terhubung ke
mikrokontroller AT89S51 melalui port 2.7 dan port 2.6 serial
b. Bagian Pemrosesan
Pada program terjadi pemrosesan data input yang dibaca, jika ada data atau
logika dari MCS utama maka relay 1, dan relay 2 akan aktif sesuai logika yang
dikirimkan, maka logika ini lah yang mengaktifkan mikro running text untuk
di proses.
c. Keluaran Program ( output )
Pada program ini keluaran yang dihasilkan adalah :
o Display running text akan hidup apabila ada input dari relay masuk dari
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
o Display running text akan hidup apabila ada input dari relay keluar atau
tidak ada input dari relay sama sekali keluaran data dari port 3.0 untuk
data, 3.1 untuk data.
3.5 Perancangan Program Utama.
Pada perancangan program running text berbasis mikrokontroller AT89S51
ini, Program ditulis atau dibuat dengan menggunakan bahasa assembler. Bahasa
assembler sebenarnya tidak ada batasan antara sub program dengan program utama.
Karena dalam sistem pemrogramannya sub – sub program ini akan langsung
dijalankan jika terjadi suatu aksi pada program misalnya pada saat aba-aba untuk
berheti atau menunngu dan pada aba-aba untuk lewat kembali. Pada perancangan ini,
sub – sub program yang harus dibuat adalah :
1. Sub program untuk perintah atau aba-aba menunggu
2. Sub program untuk perintah atau aba-aba lewat kembali.
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
3.5.1 Perancangan Flowchart Program
3.5.2. Sub program untuk aba-aba menunggu.
Initialisasi port untuk running text1.
sensor_masuk bit p2.6
sensor_keluar bit p2.7
alarm bit p2.5
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
mov r5,#45
rojan:
mov r4,#45
djnz r4,$
djnz r5,rojan
ret
end
Untuk sub routine running text untuk perintah ataupun aba-aba menunggu, adapun program yang diisikan adalah sebagai berikut:
ulang:
mov dptr,#d3fin : isikan ke dalam register dptr nilai d3fin
acall lagi : panggil lagi
lagi: clr a : bersihkan isi register a
mov a,@a+dptr : isikan register a jika 1 tambah ke daftar
cjne a,#55h,lanjut : kurangi isi register a jika 55 heksa maka lanjut
sjmp ulang : lompat ke ulang
lanjut:
acall kirim : panggil untuk kirim
acall tunda : pangil tunda
inc dptr : tambahkan nilai register dptr
sjmp lagi
kirim: mov sbuf,a : isikan buffer dengan nilai a
jnb ti,$ : lompat jika tidak ada bit
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
ret : mengakhiri sub rutin
tunda: mov R7,#90h : tunda isikan ke dalam register r7 nilai 90 heksa
tnd: mov R6,#90h : isikan ke dalam register r6 nilai 90 heksa
djnz R6,$ : kurangi lompatan jika tidak nol, isikan nilai yang
terdapat pada register dengan $
djnz r7,tnd : kurangi lompatan jika tidak nol
ret
d3fin:
db 80h,7fh,7fh,0eh,1ch,0eh,7fh,7fh,80h ;M
db 80h,3eh,7fh,63h,63h,7fh,3eh,80h ;O
db 80h,7fh,7fh,08h,08h,7fh,7fh,80h ;H
db 80h,3eh,7fh,63h,63h,7fh,3eh,80h ;O
db 80h,7fh,7fh,0eh,18h,7fh,7fh,80h ;N
db 00h,00h,00h
db 80h,7fh,7fh,0eh,1ch,0eh,7fh,7fh,80h ;M
db 80h,7fh,7fh,49h,49h,49h,80h ;E
db 80h,7fh,7fh,0eh,18h,7fh,7fh,80h ;N
db 3fh,7fh,40h,40h,40h,7fh,3fh, ;U
db 80h,7fh,7fh,0eh,18h,7fh,7fh,80h ;N
db 80h,7fh,7fh,49h,49h,79h,80h ;G
db 80h,7fh,7fh,49h,49h,79h,80h ;G
db 3fh,7fh,40h,40h,40h,7fh,3fh, ;U
db 00h,00h,00h
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
db 80h,7ch,7eh,19h,19h,7eh,7ch,80h ;A
db 80h,7fh,7fh,09h,09h,06h,80h ;P
db 80h,7ch,7eh,19h,19h,7eh,7ch,80h ;A
db 80h,7fh,7fh,60h,60h,60h,80h ;L
db 00h,00h,00h
db 80h,26h,67h,49h,49h,73h,32h,80h ;S
db 80h,7fh,7fh,49h,49h,49h,80h ;E
db 80h,7fh,7fh,41h,41h,3eh,80h ;D
db 80h,7ch,7eh,19h,19h,7eh,7ch,80h ;A
db 80h,7fh,7fh,0eh,18h,7fh,7fh,80h ;N
db 80h,7fh,7fh,49h,49h,79h,80h ;G
db 00h,00h,00h
db 80h,7fh,7fh,60h,60h,60h,80h ;L
db 80h,7fh,7fh,49h,49h,49h,80h ;E
db 80h,7fh,7fh,38h,1ch,38h,7fh,7fh,80h ;W
db 80h,7ch,7eh,19h,19h,7eh,7ch,80h ;A
db 80h,03h,03h,7fh,7fh,03h,03h,80h ;T
db 00h,00h,00h,55
jika kita menuliskan program di atas tersebut maka akan tampil tampilan seperti
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Gambar 3.4 Sub program aba-aba untuk menunggu.
Setelah program selesai ditulis, kemudian di-save dan kemudian di-Assemble
(di-compile). Pada saat di-assemble akan tampil pesan peringatan dan kesalahan.
Pesan kesalahan akan ditampilkan pada task bar output ( dapat dilihat dar gambar )
jika masih terdapat kesalahan pada program maka akan terlihat pesan Error pada task
bar out put , jika benar maka pesan error tidak akan ditampilkan pada task bar out put
dan program siap dijalankan. Program dapat dijalankan dengan simulasi , jika kita
menjalankan program dengan cara simulasi maka akan terlihat beberapa perubahan
yang tampak pada taskbar register dan taskbar port. Pada taskbar register
memperlihatkan register mana yang sedang kita pakai ( jalankan ) sedangkan pada
taskbar port memperlihatkan port mana yang kita pakai.
3.5.3. Sub program untuk aba-aba untuk lewat kembali
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler
Untuk sub routine running text untuk perintah ataupun aba-aba lewat kembali, adapun program yang diisikan adalah sebagai berikut:
ulang:
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
jnb ti,$ : lompat jika tidak ada bit
clr ti : hapus ti
ret : mengakhiri sub rutin
tunda: mov R7,#90h : tunda isikan ke dalam register r7 nilai 90 heksa
tnd: mov R6,#90h : isikan ke dalam register r6 nilai 90 heksa
djnz R6,$ : kurangi lompatan jika tidak nol, isikan nilai yang
terdapat pada register dengan $
djnz r7,tnd : kurangi lompatan jika tidak nol
ret : mengakhiri sub rutin
d3fin:
db 80h,03h,03h,7fh,7fh,03h,03h,80h ;T
db 80h,7fh,7fh,49h,49h,49h,80h ;E
db 80h,7fh,7fh,19h,29h,66h,40h,80h ;R
db 80h,41h,7fh,7fh,41h,80h ;I
db 80h,7fh,7fh,0eh,1ch,0eh,7fh,7fh,80h ;M
db 80h,7ch,7eh,19h,19h,7eh,7ch,80h ;A
db 80h,7fh,7fh,1ch,36h,63h,41h,80h ;K
db 80h,7ch,7eh,19h,19h,7eh,7ch,80h ;A
db 80h,26h,67h,49h,49h,73h,32h,80h ;S
db 80h,41h,7fh,7fh,41h,80h ;I
db 80h,7fh,7fh,08h,08h,7fh,7fh,80h ;H
db 00h,00h,00h
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
db 80h,7fh,7fh,49h,49h,49h,80h ;E
db 80h,7fh,7fh,60h,60h,60h,80h ;L
db 80h,7ch,7eh,19h,19h,7eh,7ch,80h ;A
db 80h,7fh,7fh,08h,08h,7fh,7fh,80h ;H
db 00h,00h,00h
db 80h,7fh,7fh,0eh,1ch,0eh,7fh,7fh,80h ;M
db 80h,7fh,7fh,49h,49h,49h,80h ;E
db 80h,7fh,7fh,0eh,18h,7fh,7fh,80h ;N
db 3fh,7fh,40h,40h,40h,7fh,3fh, ;U
db 80h,7fh,7fh,0eh,18h,7fh,7fh,80h ;N
db 80h,7fh,7fh,49h,49h,79h,80h ;G
db 80h,7fh,7fh,49h,49h,79h,80h ;G
db 3fh,7fh,40h,40h,40h,7fh,3fh, ;U
db 00h,00h,00h
db 80h,26h,67h,49h,49h,73h,32h,80h ;S
db 80h,41h,7fh,7fh,41h,80h ;I
db 80h,7fh,7fh,60h,60h,60h,80h ;L
db 80h,7ch,7eh,19h,19h,7eh,7ch,80h ;A
db 80h,7fh,7fh,08h,08h,7fh,7fh,80h ;H
db 80h,7fh,7fh,1ch,36h,63h,41h,80h ;K
db 80h,7ch,7eh,19h,19h,7eh,7ch,80h ;A
db 80h,7fh,7fh,0eh,18h,7fh,7fh,80h ;N
db 00h,00h,00h
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
db 80h,7fh,7fh,49h,49h,49h,80h ;E
db 80h,7fh,7fh,38h,1ch,38h,7fh,7fh,80h ;W
db 80h,7ch,7eh,19h,19h,7eh,7ch,80h ;A
db 80h,03h,03h,7fh,7fh,03h,03h,80h ;T
db 00h,00h,00h
db 80h,7fh,7fh,1ch,36h,63h,41h,80h ;K
db 80h,7fh,7fh,49h,49h,49h,80h ;E
db 80h,7fh,7fh,0eh,1ch,0eh,7fh,7fh,80h ;M
db 80h,7fh,7fh,49h,49h,3eh,80h ;B
db 80h,7ch,7eh,19h,19h,7eh,7ch,80h ;A
db 80h,7fh,7fh,60h,60h,60h,80h ;L
db 80h,41h,7fh,7fh,41h,80h ;I
db 00h,00h,00h,55h
jika kita menuliskan program di atas tersebut maka akan tampil tampilan seperti
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Gambar 3.5 Sub program aba-aba untuk lewat kembali
3.5.4 Sub program delay ( jeda )
Untuk sub routine program delay, adapun program yang diisikan adalah sebagai
berikut
delay:
mov r7,#100 : isikan kedalam register 7 nilai 100 dly:
mov r6,#90 : isikan kedalam register 6 nilai 90 djnz r6,$ : kurangi nilai pada register 6 sampai 0
djnz r7,dly : jika nilai register 6 = 0 maka kurangi 1 nilai pada register 7
: kembali kurangi register 6
Ret : ke routine pemanggil
End : selesai
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Gambar 3.6 Tampilan sub program delay
Program di atas gunanya untuk memberikan jeda waktu perpindahan satu
perintah ke perintah yang lainnya, nilai 255 berarti kita telah memberikan waktu jeda
selama 255 mdet. Pada program delay di atas kita mengguakan nilai 255 sebanyak dua
kali ( pada r7 dan r6 ) dengan demikian kita telah menunda perpindahan satu perintah
yang lainnya selama 650 mdet.
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
BAB 4
PENGUJIAN ALAT DAN PROGRAM
4.1 Pengujian Rangkaian Power Supplay (PSA)
Pengujian pada bagian rangkaian power supplay ini dapat dilakukan dengan
mengukur tegangan keluaran dari rangkaian ini dengan menggunakan voltmeter
digital. Dari hasil pengujian diperoleh tegangan keluaran sebesar + 5,1 volt.dan +12,2
volt Tegangan ini dipergunakan untuk mensupplay tegangan ke seluruh rangkaian.
Mikrokontroler AT89S51 dapat bekerja pada tegangan 4,0 sampai dengan 5,5 volt,
sehingga tegangan 5,1 volt ini cukup untuk mensupplay tegangan ke mikrokontroler
AT89S51. Dengan demikian rangkaian ini sudah dapat bekerja dengan baik.
Rangkaian ini berfungsi untuk mensupplay tegangan ke seluruh rangkaian
yang ada. Rangkaian PSA yang dibuat terdiri dari dua keluaran, yaitu 5 volt dan 12
volt, keluaran 5 volt digunakan untuk mensupplay tegangan ke seluruh rangkaian,
sedangkan keluaran 12 volt digunakan untuk mensuplay tegangan ke relay. Rangkaian
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Gambar 4.1. Rangkaian Power Supply (PSA)
4.2 Pengujian Rangkaian Mikrokontroller AT89S51
Untuk mengetahui apakah rangkaian mikrokontroller AT89S51 telah bekerja
dengan baik, maka dilakukan pengujian.Pengujian bagian ini dilakukan dengan
memberikan program sederhana pada mikrokontroller AT89S51. Programnya adalah
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Program di atas bertujuan untuk menghidupkan LED yang terhubung ke P3.0
selama ± 0,13 detik kemudian mematikannya selama ± 0,13 detik secara terus
menerus. Perintah Setb P3.0 akan menjadikan P3.0 berlogika high yang menyebabkan
LED menyala. Acall tunda akan menyebabkan LED ini hidup selama beberapa saat.
Perintah Clr P3.0 akan menjadikan P3.0 berlogika low yang menyebabkan LED akan
mati. Perintah Acall tunda akan menyebabkan LED ini mati selama beberapa saat.
Perintah Sjmp Loop akan menjadikan program tersebut berulang, sehingga akan
tampak LED tersebut tampak berkedip.
Lamanya waktu tunda dapat dihitung dengan perhitungan sebagai berikut :
Kristal yang digunakan adalah kristal 12 MHz, sehingga 1 siklus mesin
membutuhkan waktu = 12 1
12MHz = mikrodetik.
Mnemonic Siklus Waktu Eksekusi
MOV Rn,#data 2 2 x 1 d = 2 d
DJNZ 2 2 x 1 d = 2 d
RET 1 1 x 1 d = 1 d
Tunda:
mov r7,#255 2 Tnd: mov r6,#255 2
djnz r6,$ 255 x 2 = 510 x 255 = 130.054 = 130.058 = 130.059 d
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
djnz r2,loop8 2
ret 1
Jadi waktu yang dibutuhkan untuk mengerjakan program di atas adalah 130.059 detik
atau 0,130059 detik dan dapat dibulatkan menjadi 0,13 detik.
Jika program tersebut diisikan ke mikrokontroller AT89S51, kemudian
mikrokontroller dapat berjalan sesuai dengan program yang diisikan, maka rangkaian
minimum mikrokontroller AT89S51 telah bekerja dengan baik
4.3Pengujian Rangankaian Running Text
Pengujian pada rangkaian running text ini dapat dilakukan dengan cara
menghubungkan rangkaian ini dengan sumber tegangan 5 volt, kemudian memberikan
logika 1 ke data dari IC 4094 . Ketika diberi logika maka lampu dari let akan
bergeser, sehingga menyebabkan LED pada papan running text menyala, secara
bergeser karena pengiriman datanya adalah serial.
Ketika logika di kirimkan ke kaki data dari port 3.0 dan clok daro port 3.1
maka data akan dikirim secara serial sesuai dengan program yang dikirimkan. Seperti
dibawah:
ulang:
mov dptr,#d3fin
acall lagi
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
movc a,@a+dptr
cjne a,#55h,lanjut
sjmp ulang
lanjut:
acall kirim
acall tunda
inc dptr
sjmp lagi
kirim: mov sbuf,a
jnb ti,$
clr ti
ret
tunda: mov R7,#90h
tnd: mov R6,#90h
djnz R6,$
djnz r7,tnd
ret
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
4.4. Desain Tampilan Huruf Pada Running Text Dari Huruf A sampai dengan
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
4.4Skematik Running Text
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Gambar 4.2 Skematic running text
BAB 5
KESIMPULAN DAN SARAN
5.1. Kesimpulan
Mikrokontroler yang digunakan yaitu AT89S51, baik untuk kontrol jembatan
maupun kontrol running text.
IC Buffer 4094 yang merupkan IC register geser yang melakukan proses
penggeseran data. Penggeseran data diperlukan baik dalam pengiriman
data secara berderet (serial) maupun dalam perhitungan aljabar perkalian
dan pembagian. Data dikirim melalui saluran komunikasi bit demi bit.
Data yang disimpan/diolah dalam komputer selalu bersipat parallel. Agar
dapat dikirim melalui satu saluran komunikasi, maka data beberapa bit itu
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
Lampu LED merupakan display tampilan atau keluaran. Dalam bias maju
sambungan p-n terdapat rekombinasi antara elektron bebas dan lubang
(hole). Energi ini tidak seluruhnya diubah kedalam bentuk energi cahaya
atau photon melainkan dalam bentuk panas sebagian.
5.2. Saran
1. Sangat diharapkan jika alat ini dibuat dan dimanfaatkan serta disosialisasikan
kegunaannya dikalangan mahasiswa maupun masyarakat. Untuk dimasa yang
akan akan datang agar alat ini dapat lebih ditingkatkan lagi.
2. Sagat diharapkan alat ini dapat diterapkan nantinya di persimoangan lampu
Bestly J.H Sianga : Pembuatan Running Text Untuk Display Jembatan Angkat Otomatis Berbasis Mikrokontroler AT89S51, 2010.
DAFTAR PUSTAKA
Agfianto, Belajar Mikrokontroler AT89C51/52/55 Teori dan Aplikasi, Edisi Kedua, Penerbit: Gava Media, Yogyakarta, 2004.
Clayton George, Winder Steve, Operational Amplifiers, Edisi Kelima, Penerbit
Erlangga, Jakarta, 2004.
Malvino, Albert paul, Prinsip-prinsip Elektronika, Jilid 1 & 2, Edisi Pertama,
Penerbit: Salemba Teknika, Jakarta, 2003.