Interupsi Interrupt Mikrokontroler ATmega 8535

Register Port C Bit 7 6 5 4 3 2 1 PORT C7 PORT C6 PORT C5 PORT C4 PORT C3 PORT C2 PORT C1 PORT C0 Read Write RW RW RW RW RW RW RW RW Initial Value Bit 7 6 5 4 3 2 1 DDC7 DDC6 DDC5 DDC4 DDC3 DDC2 DDC1 DDC0 Read Write RW RW RW RW RW RW RW RW Initial Value Bit 7 6 5 4 3 2 1 PINC7 PINC6 PINC5 PINC4 PINC3 PINC2 PINC1 PINC0 Read Write R R R R R R R R Initial Value NA NA NA NA NA NA NA NA Register Port D Bit 7 6 5 4 3 2 1 PORT D7 PORT D6 PORT D5 PORT D4 PORT D3 PORT D2 PORT D1 PORT D0 Read Write RW RW RW RW RW RW RW RW Initial Value Bit 7 6 5 4 3 2 1 DDD7 DDD6 DDD5 DDD4 DDD3 DDD2 DDD1 DDD0 Read Write RW RW RW RW RW RW RW RW Initial Value Bit 7 6 5 4 3 2 1 PIND7 PIND6 PIND5 PIND4 PIND3 PIND2 PIND1 PIND0 Read Write R R R R R R R R Initial Value NA NA NA NA NA NA NA NA

2.8.5. Interupsi Interrupt

Menurut Heryanto 2008 interupsi interrupt adalah suatu kondisi dimana mikrokontroler ATmega 8535 akan berhenti sementara dari program utama untuk Universitas Sumatera Utara melayani instruksi-instruksi pada interupsi. Kemudian kembali mengerjakan instruksi program utama setelah instruksi-instruksi pada instruksi selesai dikerjakan. Mikrokontroler ATmega 8535 memiliki 3 interupsi eksternal, yaitu INT0, INT1 dan INT2 sebagaimana tertera pada Tabel 2.3. Interupsi eksternal bisa dilakukan dengan memberikan logika 1 pada pin interupsi yang bersangkutan. Tabel 2.3. Hubungan PIN dan Interupsi Jenis Interupsi PIN INT0 PORT D 2 INT1 PORT D 3 INT2 PORT B 2 Sumber : Heryanto 2008 Terdapat dua register yang mengatur kondisi dan cara pengangtifan interupsi, yaitu register MCUCR Mikro Control Unit Control Register dan GICR General Interrupt Control Register seperti terlihat pada Tabel.2.4. dan 2.5. Tabel 2.4. Register MCUCR untuk Pengaturan Tipe Interupsi Eksternal Tabel 2.5. Register GICR untuk Mengatur Interupsi Eksternal Interupsi Eksternal ini memberikan cara membangkitkan interupsi melalui piranti lunak. Interupsi Eksternal dipicu oleh pin INT0, INT1, dan INT2 Winoto, 2010. Jika difungsikan, interupsi akan terpicu meskipun pin INT0-2 diatur sebagai output. Interupsi Eksternal dapat dipicu pada tepi naik, tepi turun atau level rendah INT0INT1, atau hanya pada tepi naik atau turun saja INT2 Data Sheet mikrokontroler ATmega 8535. Pengaturan hal-hal tadi dilakukan pada MCUCR. SM2 SE SM1 SM0 ISC11 ISC10 ISC01 ISC00 MCUCR Bit 7 6 5 4 3 2 1 INT1 INT0 INT2 - - - IVSEL IVCE GICR Bit 7 6 5 4 3 2 1 Universitas Sumatera Utara Interupsi eksternal 1 diaktifkan oleh pin eksternal INT1 apabila bit-1 pada Status Register SREG dan interupsi pada GICR diset. Level dan tepi pada pin INT1 yang mengaktifkan interupsi didefinisikan di dalam Tabel 2.6. Nilai pada pin INT1 disampel sebelum mendeteksi tepi. Jika interupsi tepi yang terpilih, pulsa yang berakhir lebih lama daripada perioda 1 clock akan membangkitkan interupsi. Pulsa yang lebih pendek tidak dijamin mampu membangkitkan interupsi Data Sheet mikrokontroler ATmega 8535. Jika interupsi level rendah dipilih, level rendah harus ditahan hingga selesainya instruksi pengeksekusian yang sedang berjalan membangkitkan interupsi. Tabel 2.6. Logika 0 dan 1 ISC11 ISC10 Deskripsi Kondisi low level pada INT1 membangkitkan permintaan interupsi 1 Kondisi berubahnya logika pada INT1 membangkitkan permintaan interupsi 1 Tepi turun INT1 membangkitkan permintaan interupsi 1 1 Tepi naik INT1 membangkitkan permintaan interupsi Sumber : Data Sheet Mikrokontroler ATmega 8535

2.9. Bahasa Pemrograman C