View
211
Download
2
Category
Preview:
DESCRIPTION
ericoseptiahari@gmail .com FB
Citation preview
Proyek Mikrokontroler 1
TUGAS PROYEK
MIKROPROSESSOR DAN INTERFACE APLIKASI INTERRUPT (SELA) MENGGGUNAKAN MIKROKONTROLER
AT 89S51
DISUSUN OLEH:
ERICO SEPTIAHARI D306051
RIZKY DWI RAHMAWAN D306057
TETRA PRIANTO D308078
NUR KHAMIDAH D308077
WIRA PURBA D308027
IKE LESTARI D308026
DHENY SANTARA D308064
PENGAMPU MATA KULIAH MIKROPROSESSOR DAN INTERFACE
JAENAL ARIFIN
PROGRAM STUDI D3 TEKNIK TELEKOMUNIKASI
AKADEMI TEKNIK TELEKOMUNIKASI SANDHY PUTRA PURWOKERTO
2010/2011
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 2
TANDA TANGAN TUGAS PROYEK
MIKROPROSESSOR DAN INTERFACE APLIKASI INTERRUPT (SELA) MENGGGUNAKAN MIKROKONTROLER
AT 89S51
DISUSUN OLEH:
ERICO SEPTIAHARI D306051 ( )
RIZKY DWI RAHMAWAN D306057 ( )
TETRA PRIANTO D308078 ( )
NUR KHAMIDAH D308077 ( )
WIRA PURBA D308027 ( )
IKE LESTARI D308026 ( )
DHENY SANTARA D308064 ( )
PENGAMPU MATA KULIAH MIKROPROSESSOR DAN INTERFACE
JAENAL ARIFIN
PROGRAM STUDI D3 TEKNIK TELEKOMUNIKASI
AKADEMI TEKNIK TELEKOMUNIKASI SANDHY PUTRA PURWOKERTO
2010/2011
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 3
APLIKASI INTERRUPT (SELA) MENGGGUNAKAN MIKROKONTROLER
AT 89S51
BAB I
PEMBUATAN ALAT
A. Perancangan Rangkaian
Gambar I.1 perancangan rangkaian AT 89S51 pada interups
Perancangan menggunakan 7 buah Dioda dan 7 buah Resistor yang dihubungkan ke
kaki AT 89S51 dari port 32 sampai 38 sedangkan pada port 13 dihubungkan ke ground
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 4
Gambar I.2 Rangkaian catu daya pada interups
Rangkaian Catu daya menggunakan trafo 1A yang terhubung ke sumber listrik AC yang
berasal dari PLN setelah tegangan diturunkan arus di filter di Diode sebelum sampai masuk
pada rangkaian interups.
B. Alat dan Bahan:
Pembuatan Catu Daya
Trafo 1 A @ 1 buah.
Dioda IN 4007 @ 4 buah.
Kapasitor 100 µf 25 V @ 1 buah.
Pembuatan Rangkaian Interrupt
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 5
Papan PCB
Xtal 3 mhz @ 1 buah
Resistor 330 Ω @ 8 buah
AT 89S51 @ 1 buah
Kapasitor 30 pf @ 2 buah
Soket DB 25 @ 1 buah
Gambar I.3 Dokumentasi Rangkaian Interrups Menggunakan AT89S51
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 6
C. Perancangan Program
Gambar I.1 Flowchart Rancangan Program
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
PENGUJIAN ALAT
PERBAIKAN PROGRAM
STAR
INPUT DATA NOTEPED
PEMROGRAMAN MICRO
DENGAN ASSEMBLER
ADA KESALAHAN
(PENGUJIAN) ?
?
IMPLEMENTASI ALAT
FINISH
Tidak
Ya
Proyek Mikrokontroler 7
D. Proses Compile
Buat lah folder dengan nama micro di drive:\ D
Masukan aplikasi ASM51 dan aplikasi AEC_ISP kedalam folder micro
Membuat notepad dengan ketikan scrib berikut ini :
1. $mod51
2. org 0000h
3. ajmp start
4. org 0003h
5. ajmp pindah
6. start:
7. mov p3,#0ffh
8. setb 78h ;bit addressable
9. mov ie,#81h
10. setb it0
11. mov p0,#01h
12. mov a,#01h
13. pilih:
14. jb 78h,puterkiri
15. jmp puterkanan
16. puterkiri:
17. mov p0,a
18. rl a
19. call delay
20. ajmp pilih
21. puterkanan:
22. mov p0,a
23. rr a
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 8
24. call delay
25. ajmp pilih
26. pindah:
27. cpl 78h
28. reti
29. delay:
30. mov r7,#0h
31. delay1:
32. mov r6,#0
33. djnz r6,$
34. djnz r7,delay1
35. ret
36.
37. end
Maka akan terlihat seperti berikut pada note ped
setelah selesai simpan notepad dengan ekstensi (txt). Kedalam folder micro.
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 9
Buka RUN > CMD maka akan tampil layar berikut ini :
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 10
Ketikan D: untuk pindah direktori dari :\ C ke :\D.
Ketikan cd micro untuk masuk ke direktori micro
Ketikan nama aplikasi ASM51 lalu kemudian ketik file noteped yang telah dibuat interrupt.txt tampilan akan sebagai berikut:
Pada gambar tersebut tampak bahawa teryata tidak ada kesalahan sama sekali
(0 ERROR FOUD). Jadi tidak ditemukan kesalahan penulisan sama sekali
pada program tersebut. Namun apabila ditemukan kesalahan . lakukan
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 11
pengeditan lagi atas program tersebut (interrupt.txt) dan lakukan lagi proses
kompilasi di atas sampai tidak ditemukan lagi kesalahan.
Pada proses ini akan terbentuk tiga file, yaitu intterups.txt intterups.hex dan
intterups.lst yang akan diisikan ke mikrokontroler hanyalah file intterups.hex
Untuk mengetahui pada bagian mana program yang salah .bisa melihatya pada
file intterups.lst (list) . buka dengan menggunakan program notepad
Terlihat setealah intterups.lst di buka dengan notepad tiak ada kesalahan.
Maka langkah selanjutya dapat dilakukan bila ada kesalahan perbaiki scrip di
interrups.txt kemudian compile seperti step dari langkah satu diatas
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 12
Ketikan nama aplikasi AEC_ISP maka akan tampil sebagai berikut :
Masuk ke setup. Kemudian klik save setup.
Proses setup ini harus dilakukan setealh selesai men-copy AT89S51 (Cukup satu kali saja)
Ketikan interupt.hex setelah memilih menu load HEX file to flash buffer.
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 13
E. Pembuatan Downloader
Gambar I.4 Bentuk Konektor Downloader
Pemasangan DB 25 menempel atau menjadi satu dengan rangkaian IC AT89S51 sehingga
akan terbentuk rangkaian minimum system yang praktis
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 14
BAB II
ANALISA
HASIL DAN PEMBAHASAN
A. CARA KERJA
Interrupt merupakan fasilitas pada mikrokontroler yang berfungsi untuk
menghentikan sementara program utama dan menjalankan program yang lain
( Program Interupt) sampai selesai.kemudian akan menjalankan program utama
tersebut kembali. Waktu kerja dari interrupt tidak pernah diketahui oleh program
utama.
Interrupt ini tetap menggunakan beberapa register, yaitu IE, TCON, IP.
Register IE berfungsi untuk Pengaktif Interupsi yang terletak di memory
internal A8H.
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 15
Ket.
EA : Menonaktifkan semua interupsi jika bit ini clear ( berisi 0 ). Bila ada
interupsi yang akan diaktifkan maka bit ini harus set ( berisi 1 )
ES : Untuk interupsi port Serial, 1 = Aktif , 0 = Nonaktif
ET1 : Untuk interupsi T1 (Timer 1), 1 = Aktif , 0 = Nonaktif
Register TCON (Timer Control Register) Register TCON mempunyai 4 bit yg
berhubungan langsung dengan Timer yaitu : TCON.4 , TCON.5 , TCON.6 , TCON.7
Sedangkan 4 bit yang lain berhubungan dengan interrupt yaitu : TCON.3 ,
TCON.2 , TCON.1 , TCON.0
TCON.7 (TF1) : Timer 1 Overflag yang akan diset jika timer overflo Bit ini dapat
di-clear oleh software atau hardware.
TCON.6 (TR1): 1 = Timer 1 Aktif
0 = Timer 1 Nonaktif
TCON.5 (TF0) : Timer 1 Overflag yang akan diset jika timer overflow Bit ini dapat
di-clear oleh software atau hardware.
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 16
TCON.4 (TR0) : 1 = Timer 0 Aktif
0 = Timer 0 Nonaktif
Register IP Prioritas interupsi standart tersebut dapat diubah dengan melakukan
inisialisasi pada Register Interrupt Priority ( IP ) yang berada di alamat B8H
PT2 : Priority Timer 2 Interrupt, bit yang mengatur prioritas interupsi
timer 2
PS : Priority Serial Interrupt, bit yang mengatur prioritas interupsi serial
PT1 : Priority Timer 1 Interrupt, bit yang mengatur prioritas interupsi
timer 1
PX1 : Priority Eksternal 1 Interrupt, bit yang mengatur prioritas interupsi
eksternal 1
PT0 : Priority Timer 0 Interrupt, bit yang mengatur prioritas interupsi
timer 0
PX0 : Priority Eksternal 0 Interrupt, bit yang mengatur prioritas interupsi
eksternal 0
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 17
Berikut ini akan dijelaskan rangkaian dan scrib yang digunakan dalam
pemrograman mikrokontroler AT 89S51.
Gambar II.1 Rangkaian Interrupt Eksternal
………………………………………………………………….
$mod51 ;Menjalankan mikro AT 89S51
org 0000h ;kode 000h
ajmp start ;melompat ke program star
org 0003h ;alamat vector 003h
ajmp pindah ;melompat ke program pindah
Start : ;blok program start
mov p3,#0ffh ;salin lokasi 0ffh ke p3 (port 3)
setb 78h ;bit addressable 78h
mov ie,#81h ;salin lokasi 81h ke ie (register IE)
setb it0 ;perintah interup 0
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 18
mov p0,#01h ;salin lokasi 01h ke p0(PORT 0)
mov a,#01h ;salin lokasi 01h ke a (akumulator)
Pilih: ;blok program pilih
Jb 78,puterkiri ;melakukan lompatan puterkiri 78
Jmp puterkanan :melakukan lompatan puterkanan
Puterkiri: ;blog program Puterkiri
Mov p0,a ;salin nilai a(akumulator) ke p0
rl a ;operasi pergeseran ke kiri sebanyak 1 bit a
call delay ;memanggil perintah delay
ajmp pilih ;melompat ke program pilih
puterkanan: ;blok program puterkanan
mov p0,a ;salin nilai a (akumulator) ke p0
rr a ;melakukan operasi pergeseran
call delay ;memanggil perintah delay
ajmp pilih ;melompat ke program pilih
pindah: ;blok program pindah
cpl 78h ;melakukan operasi complemen 78h
reti ;mengembalikan ke program yang
melakukan call
delay: ;blok program delay
mov r7,#0h ;salin lokasi 0h ke r7
delay1: ;blok program delay1
mov r6,#0 ;salin lokasi 0 ke r6
djnz r6,$ ;lompat $ ke r6
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 19
djnz r7,delay1 ;lompat delay1 ke r7
ret ;mengembalikan baris program yang memanggil call
end ;program berakhir
……………………………………………………………
program ini akan akan mengaktifkan fasilitas interrupt 0. Cara
penggunaan dari 0 ini adalah dengan menyeting register TCON=01h, IE=81h,
alamat vector=0003h.
Scrip ini menggunakan interrupt 0. Adanya interrupt ditandai dengan
nyala led yang berputar ke kanan dan ke kiri setiap interrupt 0 muncul. Proses
berputar ke kanan dan kekiri pada led ini terjadi secara bergantian (tidak
bersama-sama).
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 20
Gambar I.5 Rangakaian Lengkap Aplikasi Interrups
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 21
BAB V
PENUTUP
A. KESIMPULAN
1. Interrupt merupakan fasilitas pada mikrokontroler yang berfungsi untuk
menghentikan sementara program utama dan menjalankan program yang lain
(program interrupt) sampai selesai.kemudian akan menjalankan program utama
tersebut kembali. Waktu kerja dari interrupt tidak pernah diketahui oleh
program utama.
2. Vektor/Lokasi interupsi adalah nilai yang disimpan ke program Counter (PC)
pada saat terjadi interupsi sehingga program akan menuju ke alamat yang
ditunjukkan oleh program counter (PC).
3. Pada aplikasi yang menggunakan lebih dari satu interupsi,dapat saja terjadi
interupsi lain pada saat sebuah rutin interupsi sedang dijalankan.
4. Untuk menentukan apakah sebuah interupsi dapat menginterupsi saat sebuah
rutin interupsi lain sedang berjalan bergantung pada prioritas dari interupsi
tersebut
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 22
B. SARAN
Aplikasi rangkaian interrupt sederhana ini dapat dikembangkan dan mudah
dipelajari, komponen yang digunakan mudah didapat dan hargaya murah diharapkan
aplikasi penerapanya dapat dikembangkan lebih maksimal terutama dalam bidang
komunikasi.
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Proyek Mikrokontroler 23
DAFTAR PUSTAKA
(LAMEL) Tim Lab Mikroprossor Elektronika Pemrograman Mikrokontroler AT 89S51 [Book Section]. - Yogyakarya : ANDI OFFSET, 2006.
Balza Achmad Diktat Penerapan Mikroposesor jurusan Teknik Fisika Universitas Gadjah Mada 2004 [Journal]. - Yogyakarya : [s.n.], 2004.
global komputer [Online]. - mei Rabu, 2010. - http://www.globalkomputer.com/Bahasan/Programming/Topik/Interrupt.html.
Akatel/Dosen pengampu/Jainal Arifin, S.T/2010
Recommended