INTERUPSI

11
INTERUPSI

description

INTERUPSI. Pengantar tentang proses eksekusi program. Instruksi-instruksi yang dieksekusi mikrokontroler diletakkan pada memori program - PowerPoint PPT Presentation

Transcript of INTERUPSI

Page 1: INTERUPSI

INTERUPSI

Page 2: INTERUPSI

Pengantar tentang proses eksekusi program

• Instruksi-instruksi yang dieksekusi mikrokontroler diletakkan pada memori program

• Secara default, CPU akan mengeksekusi instruksi-instruksi mulai dari alamat 0x0000 kemudian diteruskan ke alamat 0x0001 dst secara berurutan. Pengalamatan instruksi diatur oleh progam counter

• Jika terjadi suatu lompatan (percabangan,pemanggilan subrutin, atau loop) eksekusi program akan keluar dari urutan alamat tersebut dan menuju alamat tujuan lompatan

Page 3: INTERUPSI

Pengertian Interupsi

• Kondisi yang membuat suatu komputer/mikroprosesor berhenti mengerjakan rutin utama dan beralih(melompat ke vektor interupsi) untuk mengerjakan rutin interupsi

Page 4: INTERUPSI

Pengertian Interupsi

Instruksi 1

Instruksi 2

Instruksi 3

Instruksi n

1.INTERUPSI

2.LOMPAT KE RUTIN INTERUPSI

RUTIN INTERUPSI

SUMBER INTERUPSI

RUTIN INTRSELESAI

3.Kembali ke program utama

LOOP PROGRAM UTAMA

Page 5: INTERUPSI

Vektor interupsi

• Alamat memori program yang menjadi tujuan pertama lompatan program ketika terjadi suatu interupsi

• Vektor interupsi ini sifatnya spesifik dan sudah fix untuk masing-masing sumber interupsi

• Setiap sumber interupsi memiliki vektor interupsinya sendiri-sendiri

Page 6: INTERUPSI

Sumber interupsi

• Kondisi yang menyebabkan terjadinya suatu interupsi

• Kondisi ini bermacam-macam, ada yang berasal dari luar (ext. interrupt) dan ada yang berasal dari dalam

• Sumber dan vektor interupsinya ditunjukkan pada tabel sbb

Page 7: INTERUPSI
Page 8: INTERUPSI

Inisialisasi interupsi

• Untuk dapat menggunakan fasilitas interupsi, harus dilakukan inisialisasi pada awal program

• Inisialisasi digunakan untuk mengaktifkan interupsi

• Inisialisasi mencakup :– Enable sumber interupsi yang diinginkan– Enable interupsi global

Page 9: INTERUPSI

Rutin interupsi

• Rutin yang dikerjakan ketika terjadi interupsi• Rutin ini bisa terletak pada alamat vektor

interupsi atau bisa diletakkan pada alamat lain• Umumnya pada teknik pemrograman,pada

alamat vektor interupsi diberi instruksi untuk lompat ke alamat rutin interupsi

• Suatu rutin interupsi harus diakhiri dengan perintah RETI (return from interrupt)

Page 10: INTERUPSI

Interupsi Eksternal

• 3 sumber interupsi eksternal pada atmega8535 : INT0(PD2),INT1(PD3),INT2(PB2)

• Kondisi eksternal yang menyebabkan interupsi bisa diatur melalui register MCUCR (silakan lihat datasheet ATmega8535 hal 68) dan MCUCSR(hal 69)

Page 11: INTERUPSI

Register enable interupsi eksternal

• Suatu bit pada register ini harus diset supaya interupsi bisa di-enable

• Terletak pada register GICR (datasheet hal 69)

• Bit-bit yang dipengaruhi ketika terjadi interupsi ada pada GIFR – general interrupt flag register (hal 70)