Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Oleh : SGO Aplikasi Mikrokontroler (DTG2K3)

Presentasi serupa


Presentasi berjudul: "Oleh : SGO Aplikasi Mikrokontroler (DTG2K3)"— Transcript presentasi:

1 Oleh : SGO Aplikasi Mikrokontroler (DTG2K3)
INTERUPSI Oleh : SGO Aplikasi Mikrokontroler (DTG2K3)

2 Pengertian Sistem Interupsi adalah menghentikan aliran program akibat terjadinya triger tertentu dan memaksa eksekusi rutin/fungsi layanan interupsi, setelah selesai maka aliran program akan kembali ke pernyataan program sebelum terjadinya interupsi.

3 Interupt.h ISR (nama_vector) { …………. …………… }
Untuk menangani interupsi, dalam library winavr telah disediakan file : #include <avr/interupt.h> Dalam file di atas telah disediakan aturan khusus dalam membuat fungsi layanan interupsi (ISR = Interupt Service Routine), dengan format: ISR (nama_vector) { …………. …………… }

4 Pengaktifan Interupsi
Untuk menge-set gunakan pernyataan: sei (); set I Untuk meng-clear gunakan pernyataan: cli (); clear I jangan lupa memberikan spasi setelah sei atau cli, karena sifat intruksinya makro bukan merupakan suatu fungsi.

5 Interupsi Eksternal Adalah sebuah peripheral dalam chip yang bertugas mendeteksi triger dari luar yang akan membangkitkan interupsi yang bersangkutan.

6 Register Pengendali Interupsi
SREG register tempat bit-I berada Bit ke-7 I : Global Interupt Enable Bit ini (jika set) bertugas mengaktifkan semua interupsi setelah interupsi pheriperal yang bersangkutan diaktifkan. Bit ini akan di clear ketika terjadi interupsi dan kembali set ketika menemui intruksi RETI (akhir rutin interupsi)

7 Register Interupsi 2. MCU Control Register – MCUCR Hanya 4 bit yang berhubungan dengan interupsi eksternal, dimana bit tersebut digunakan untuk mendefinisikan input triger yang digunakakan

8 Keterangan PIN INT1 yang membangkitkan interupsi
Bit 3,2 – ISC11 dan ISC10 kontrol triger interupsi eksternal 1 (INT1) ISC 11 ISC10 Keterangan PIN INT1 yang membangkitkan interupsi Level rendah (low level) 1 Toggle Falling Edge (perpindahan 1 ke 0) Rising Edge (perpindahan 0 ke 1)

9 Keterangan PIN INT0 yang membangkitkan interupsi
Bit 1,0 – ISC01 dan ISC00 kontrol triger interupsi eksternal 0 (INT0) ISC 01 ISC00 Keterangan PIN INT0 yang membangkitkan interupsi Level rendah (low level) 1 Toggle Falling Edge (perpindahan 1 ke 0) Rising Edge (perpindahan 0 ke 1)

10 Register Interupt 3. General Interupt Control Register – GICR Bit -7 INT1 : Mengaktifkan interupsi eksternal satu Bit -6 INT0 : Mengaktifkan interupsi eksternal nol Bit -5 INT2 : Mengaktifkan interupsi eksternal dua 0 = disable dan 1 = enable

11 Register Interupt 4. General Interupt Flag Register – GIFR Akan set ketika mendeteksi adanya interupsi eksternal dan akan clear ketika cpu meng-eksekusi vektor interupsi

12 Keterangan PIN INT2 yang membangkitkan interupsi
Register Interupt 5. MCU Control and Status Register – MCUCSR Bit ke-6 ISC2 merupakan kontrol triger interupsi eksternal 2 (INT2) yang dimiliki selain ATMEGA8. ISC 2 Keterangan PIN INT2 yang membangkitkan interupsi Falling Edge (perpindahan 1 ke 0) 1 Rising Edge (perpindahan 0 ke 1)

13 Contoh Interupsi Eksternal
Buat Program Program utama yaitu LED berjalan, ketika ada interupsi maka led akan berkedip 10 kali

14 Lanj..

15 Lanj..

16 Program // External Interrupt 0 service routine
interrupt [EXT_INT0] void ext_int0_isr(void) { // Place your code here unsigned char rr=0; while(rr<5) PORTA=0x0f; delay_ms(100); PORTA=0xf0; rr++; }


Download ppt "Oleh : SGO Aplikasi Mikrokontroler (DTG2K3)"

Presentasi serupa


Iklan oleh Google