proyek mikroprosessor dan interface

28
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 Akatel/Dosen pengampu/Jainal Arifin, S.T/2010

Upload: erico-septiahari

Post on 19-Jun-2015

216 views

Category:

Documents


2 download

DESCRIPTION

ericoseptiahari@gmail .com FB

TRANSCRIPT

Page 1: Proyek Mikroprosessor Dan Interface

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

Page 2: Proyek Mikroprosessor Dan Interface

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

Page 3: Proyek Mikroprosessor Dan Interface

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

Page 4: Proyek Mikroprosessor Dan Interface

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

Page 5: Proyek Mikroprosessor Dan Interface

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

Page 6: Proyek Mikroprosessor Dan Interface

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

Page 7: Proyek Mikroprosessor Dan Interface

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

Page 8: Proyek Mikroprosessor Dan Interface

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

Page 9: Proyek Mikroprosessor Dan Interface

Proyek Mikrokontroler 9

Buka RUN > CMD maka akan tampil layar berikut ini :

Akatel/Dosen pengampu/Jainal Arifin, S.T/2010

Page 10: Proyek Mikroprosessor Dan Interface

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

Page 11: Proyek Mikroprosessor Dan Interface

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

Page 12: Proyek Mikroprosessor Dan Interface

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

Page 13: Proyek Mikroprosessor Dan Interface

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

Page 14: Proyek Mikroprosessor Dan Interface

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

Page 15: Proyek Mikroprosessor Dan Interface

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

Page 16: Proyek Mikroprosessor Dan Interface

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

Page 17: Proyek Mikroprosessor Dan Interface

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

Page 18: Proyek Mikroprosessor Dan Interface

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

Page 19: Proyek Mikroprosessor Dan Interface

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

Page 20: Proyek Mikroprosessor Dan Interface

Proyek Mikrokontroler 20

Gambar I.5 Rangakaian Lengkap Aplikasi Interrups

Akatel/Dosen pengampu/Jainal Arifin, S.T/2010

Page 21: Proyek Mikroprosessor Dan Interface

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

Page 22: Proyek Mikroprosessor Dan Interface

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

Page 23: Proyek Mikroprosessor Dan Interface

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