Fungsi Interrupt pada Arduino adalah suatu fungsi untuk memicu program lain secara eksternal atau internal.
Singkatnya, dengan kamu memberi masukan atau sebuah keluaran, kamu bisa memproses program lain.
Secara sederhana arduino sudah menyediakan fungsi khusus untuk penggunaan interupt yaitu dengan attachInterrupt (interrupt, function, mode) .
Khusus untuk Arduino Uno, hanya memiliki 2 pin interrupt yaitu INT0 pada pin 2 digital dan INT1 pada pin 3 digital.
Pada bagian fungsi bisa ditulis program fungsi yang dimaksud. Contoh untuk program fungsi void variasi() .
Mode Penggunaan Interrupt
Mode LOW. Pada mode ini interrupt akan diaktifkan saat pin int memiliki logika low dan akan aktif selama masih berlogika low. Artinya bila tidak ada trigger awal, intterupt dapat bekerja menjalankan program fungsi.
Mode CHANGE. Interrupt akan diaktifkan saat terjadi perubahan logika baik dari low ke high ataupun high ke low.
Mode RISING. Pengaktifan interrupt akan terjadi jika pin mengalami perubahan logika dari low ke high. Bedanya dengan CHANGE, ketika dari high ke low interrupt tidak akan aktif.
Mode FALLING. Perubahan logika pada pin int dari high ke low akan mengaktifkan fungsi interrupt. Ini menjadi kebalikan dari metode RISING.
Rangkaian Interrupt
Rangkaian Interrupt
Rangkaian Intterupt Running LED |
Pada program ini, inisialisasi input dan output pada void setup. Jelas sesuai dengan gambar proteus.
Pada void setup juga terdapat instruksi attachInterrupt (digitalPinToInterrupt(2) , variasi, RISING); untuk inisialisasi pemilihan pin digital 2, fungsi program dan mode interrupt.
Pada void loop terdapat fungsi switch case untuk memanggil program yang sesuai kanankiri, kirikanan, dan tengahkanankiri.
Namun bedanya ketika terdapat interrupt diaktifkan saat menekan tombol di pin digital 2 akan langsung mengalihkan program ke fungsi void variasi.
Yang selanjutnya mengalihkan program secara langsung dari yang awalnya kanankiri langsung loncat ke program kirikanan. Tanpa perlu menunggu program running led selesai dari kanan ke kiri.
Itu penjelasan singkat mengenai interrupt, aplikasinya banyak banget. Bisa digunakan untuk kontrol motor yang memerlukan banyak trigger yang dapat juga diaplikasikan dengan rangkaian elektronika daya.
Selamat mencoba!
Arduino , Elektronika , Mikrokontroller
gan led nya yang nyala cuman nomer 2, yang lain mati, gimana ya?
ReplyDeleteOm kalau pakai 3 tombol bisa nggk? 1. Kekanan
ReplyDelete2. Kemiri
3. Stop
1.kekanan
Delete2.kemiri
3.ketumbar
1.kemangi
Delete2.kemiri
3.ketumbar
nice information min
ReplyDeletesolder uap portable digital
I can set up my new idea from this post. It gives in depth information. Thanks for this valuable information for all,.. Arduino library for Proteus
ReplyDelete