Instruksi INTERRUPT CONTROL – INT(89)


int89Instruksi INT(89) berfungsi untuk mengontrol/mengarahkan interupsi dan melakukan satu dari tujuh fungsi yang dapat dipilih sesuai dengan nilai parameter C1. Instruksi INT(89) memiliki tiga buah operand yakni C1, 000, dan C2. C1 adalah konstanta dengan nilai 000 – 004, 100, dan 200. Berikut adalah fungsi instruksi INT(89) berdasarkan nilai operand C1:
1. Mask/Unmask Interrupt Inputs (C1 = 000)
2. Clear Interrupt Inputs (C1 = 001)
3. Read Current Mask Status of Interrupt Inputs (C1 = 002)
4. Restart Decrementing Counter and Unmask Interrupt (C1 = 003)
5. Restart Incrementing Counter and Unmask Interrupt (C1 = 004)
6. Mask All Interrupts (C1 = 100)
7. Unmask All Interrupts (C1 = 200)

1. Fungsi Mask/Unmask Interrupt Inputs
Fungsi ini digunakan untuk menghalangi atau mengijinkan interupsi dari kaki Input 000.03 – 000.06. Interupsi yang dihalangi (masked) akan dicatat  dan diabaikan oleh CPU. Interupsi yang diijinkan (unmasked) akan direspon dan program interupsinya akan dieksekusi.

Operand C2 (word) pada instruksi INT(89) digunakan untuk mengijinkan (unmasking) atau menghalangi (masking) masukan interupsi. Untuk mengijinkan masukan interupsi, maka bit yang bersesuaian harus direset. Dan sebaliknya, untuk menghalangi masukan interupsi, maka bit yang berseuaian harus diset. Bit ke-0 untuk Input 000.03, bit ke-1 untuk Input 000.04, bit ke-2 untuk Input 000.05, dan bit ke-3 untuk Input 000.06. Berikut adalah contoh penggunaan instruksi INT(89) untuk mengijinkan masukan interupsi 000.03 dan menghalangi masukan interupsi yang lainnya.

intfungsi1

Instruksi INT(89) akan dieksekusi pada siklus pertama program. C1 = 000 berarti menjalankan fungsi Mask/Unmask Interrupt Inputs. C2 = 000EH = 00000000 00001110B berarti mengijinkan masukan interupsi 000.03 dan menghalangi masukan interupsi yang lainnya.

Pada awal operasi, semua masukan interupsi berada dalam kondisi terhalangi. Oleh karena itu perlu dilakukan unmasking agar masukan interupsi dapat digunakan.

2. Fungsi Clear Interrupt Inputs
Fungsi ini digunakan untuk menghapus masukan interupsi. Karena CPU mencatat masukan interupsi meskipun dalam keadaan masked, maka program interupsi akan langsung dieksekusi seketika setelah masukan interupsinya di-unmasked, kecuali catatan interupsinya dihapus terlebih dahulu.

Penghapusan catatan interupsi ini perlu dilakukan jika kita ingin mengaktifkan interupsi ditengah-tengah jalannya program. Lain halnya jika unmasking dilakukan pada siklus pertama program, maka proses clearing ini tidak perlu dilakukan. Berikut adalah contoh penggunaan instruksi INT(89) untuk menghapus masukan interupsi sebelum interupsi di-unmasking.

intfungsi2

Ketika SENSOR berubah kondisi dari OFF menjadi ON, maka instruksi INT(89) pertama akan menghapus masukan interupsi dari semua kaki input (000.03 – 000.06). Selanjutnya, instruksi INT(89) berikutnya akan mengijinkan masukan interupsi Input 000.03 dan menghalangi masukan interupsi yang lainnya.

Maaf, sekian saja dulu. Fungsi-fungsi instruksi INT(89) yang lain, cara setup-nya, dan contoh programnya saya sambung lain waktu. Insya Allah…

Selamat belajar!

Artikel lain yang berhubungan: Fungsi-fungsi Interupsi CPM2A.

One comment

  1. wahyu · April 22, 2009

    saya pemula dalam hal PLC, tp saat ini saya sedang membuat tugas akhir yang berhubungan dengan PLC. dan dalam pengerjaan tugas akhir ini saya menghadapi banyak sekali kendala2, kl bs meminta referensi kepada siapa saya bisa meminta bantuan dalam mengerjakan tugas akhir saya. tolong segera di balas.

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s