Pada AVR ATMega32 terdiri dari interupt hardware(interrupt eksternal) dan interrupt software(polling virtual atau timer interrupt). Interrupt eksternal adalah pin eksternal yang dapat menginterrupt prosessor jika terjadi perubahan logika di pin tersebut. Interrupt ini akan dieksekusi prosessor sesuai dengan prioritas pada vektornya. Artinya, jika prosessor sedang mengeksekusi sebuah interrupt yang memiliki prioritas tinggi, maka prosessor tidak akan melayani permintaan interrupt yang memiliki prioritas lebih rendah. prioritas tertinggi berada pada nomor vektor terkecil
dari tabel diatas maka interrupsi tertinggi adalah interupsi reset.
Pin interupsi eksternal pada ATMega yaitu
1. INT0
2. INT1
3. INT2
untuk INT0 dan INT1, interupsi dapat disebabkan (dipicu) oleh rising edge(transisi logika naik, dari low menuju high) falling edge(transisi logika turun, dari high menuju low), maupun setiap terjadi perubahan logika pada pin tersebut. sedangkan untuk INT2 hanya falling dan rising edge.
berikut contoh pembuatan program interupsi eksternal dengan code wizard CVAVR
generate wizard tersebut maka akan muncul seperti beriku
ganti "//place your code here" dengan perintah yang ingin di jalankan setelah adanya interupsi. untuk lebih lengkapnya silahkan download contohnya disini