INTERRUPT
00.16Chapter 1. PENDAHULUAN
Chapter 2. INTERUPT
Instruksi 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.
Chapter 3. KOMPONEN RANGKAIAN
1. MCS51 Mikrokontroler tipe AT89S51 merupakan mikrokontroler keluarga MCS-51 dengan konfigurasi yang sama persis dengan AT89C51 yang cukup terkenal, hanya saja AT89S51 mempunyai fitur ISP (In-System Programmable Flash Memory). Fitur ini memungkinkan mikrokontroler dapat diprogram langsung dalam suatu sistem elektronik tanpa melalui Programmer Board atau Downloader Board.Personal Computer.
2. LED Sebuah LED adalah sejenis dioda semikonduktor istimewa. Seperti sebuah dioda normal, LED terdiri dari sebuah chip bahan semikonduktor yang diisi penuh, atau di-dop, dengan ketidakmurnian untuk menciptakan sebuah struktur yang disebut p-n junction.
3.SWITCH
Chapter 4. RANGKAIAN
Rangkaian dibawah menujukkan prototype untuk interrupt sederhana,fungsi switch diluar adalah sebagai interrup(interuppsi) sistem utama yang berada pada void main,maka jika seandainya void main berjalan walau tidak dimasukkan fungsi didalamnya,fungsi interrupt masih tetap diaktifkan.Sehingga ketika switch hidup,maka fungsi utama akan diinterupsi oleh fungsi dari interrupt itu sendiri
Chapter 5. Listing Rangkaian
#include <at89x51.h>
unsigned int i;
void eksternal0_int() interrupt 0 //fungsi untuk interrup eksternal 0
{
P1=0x0f;
for(i=0;i<60000;i++){;}
}
void eksternal1_int() interrupt 2 //fungsi untuk interrup eksternal 1
{
P1=0xf0;
for(i=0;i<60000;i++){;}
}
main(){
EX0=1; //enable interupsi ekternal 0
EX1=1; //enable interupsi ekternal 1
EA=1; //enable global interrup
while(1)
{
P1=0xff;
}
}