Skip to main content

External Interrupt in PIC


Gangguan berlaku dalam kehidupan berlaku dengan izin Tuhan, anda kena redha. Sebabnya anda hamba ciptaan, yang mencipta adalah Tuhan. Contohnya, anda sedang makan roti canai, panggilan telefon adalah gangguan, namun anda layan, berhenti makan seketika dan selepas bercakap2, dan sambung balik kerja anda memakan roti canai.

Dan tidak ketinggalan ganguan luaran (external interrupt) boleh anda lakukan ketika pemprograman dalam PIC microcontroller. Anda pencipta kepada software dan anda tidak mahu hardware ciptaan anda sengal semacam je. Tidak kira ganguan berlaku pada bahagian masa yang mana, program anda masih boleh memastikan PC(Program Counter) program menangkapnya.

Misalnya, anda ada main program loop yang berjalan berterusan dan kemudian push button ditekan oleh pengguna dan anda ingin main program loop melayannya.
Ada dua pilihan,

1. Anda membuat loop yang secara berterusan menyemak port input sama ada terdapat perubahan high to low atau low to high, TETAPI tidak akan ada JAMINAN main program loop anda cukup pantas untuk melihat suis terjadi tepat pada masa yang sama main program loop sedang menjejaki port input tersebut.
contoh:

if(PORTA.F0)c++;
//kod yang panjang.
.
.
.
.
.

2.Guna kaedah external interrupt.
Mereka bergerak di belakang main program, dan mereka berkuasa untuk menghentikan sementara main loop dan melayan kehendak rutin interrupt(ISR) yang telah anda sediakan secara berasingan di dalam kod anda. Setelah selesai, mereka menyerahkan PC kepada main loop, dan mereka bergerak di belakang main loop sentiasa. Ia sangat setia. Anda tidak bakal akan dipermainkan oleh interrupt.
contoh:
.
.
.
.
.
void interrupt_INT0(){
LED = 1;
Delay_ms(200);//To prevent switch bounce
Delay_ms(1000);//LED on
INTCON.INT0IF = 0;//Clear flag
}


void main(){
init_sys_pic();
while(1)
.
.
.
.
.
.


PIC 16 series ada 1 external interrupt. INT0.
PIC 18 series ada 3 external interrupt. INT0, INT1 dan INT2.

Document External Interrupt PIC18F
Contoh C programming, guna 3 external interrupt, dan melibatkan priority.

Comments

Popular posts from this blog

5x7matrix of LED's, PIC and Proteus Simulation

Simulation 5x7 Matrix LED with continuous three modes of display. The Circuit Display ABCDEFGHI in three different modes 1. Blinking, then 2. Moving from Left, and 3. Moving from Right Documentation and Software Here. Youtube video Simulation in Proteus 7.4 Portable (SnagIt 5.0 version.... to old laaa.... first time created with any movie editing. The output file from SnagIt is AVI, then convert to WMV format to upload into the Youtube...more light.. successes... but no sound). My Windows Movie Maker in Vista always execute problem.) 2 Jenis 5x7 matrix LED Common Cathode(ROW) - Left Common Anod (ROW) - Right Rujukan.

Program Akademik Baharu Ijazah Sarjana Muda Teknologi Kejuruteraan di UTeM

Image di atas sengaja di biarkan melebar sebab keasliannya dari link asal. Untuk maklumat lebih lanjut, klik link di bawah. http://www.utem.edu.my/ftk/ Bil / Nama Program / Kod UPU Ijazah Sarjana Muda Teknologi Kejuruteraan Elektrik (Kuasa Industri) dengan Kepujian CY31 Ijazah Sarjana Muda Teknologi Kejuruteraan Elektrik (Automasi Industri & Robotik) dengan Kepujian CY32 Ijazah Sarjana Muda Teknologi Kejuruteraan Elektronik (Telekomunikasi) dengan Kepujian CY41 Ijazah Sarjana Muda Teknologi Kejuruteraan Elektronik (Elektronik Industri) dengan Kepujian CY42 Ijazah Sarjana Muda Teknologi Kejuruteraan Komputer (Sistem Komputer) dengan Kepujian CY81 Ijazah Sarjana Muda Teknologi Kejuruteraan Mekanikal (Teknologi Automotif) dengan Kepujian CY51 Ijazah Sarjana Muda Teknologi Kejuruteraan Mekanikal (Sistem Penyejukan dan Penyaman Udara) dengan Kepujian CY52 Ijazah Sarjana Muda Teknologi Kejuruteraan Mekanikal (Teknologi Penyelenggaraan) dengan Kepujian CY53 Ijazah Sarjana Muda Teknologi K...

Ijazah Sarjana Muda Teknologi Kejuruteraan Elektrik (Kuasa Industri) dengan Kepujian

Bachelor's Degree in Electrical Engineering Technology (Industrial Power) with Honours (Ijazah Sarjana Muda Teknologi Kejuruteraan Elektrik (Kuasa Industri) dengan Kepujian)  Kurikulum BARU, SESI 2012/2013  SEMESTER CODE SUBJECT CATEGORY CREDIT PRE- REQUISITE SEMESTER 1 BTKU 1013 Technical Mathematics P 3 BTKR 1304 Digital Electronics & Systems K 4 BTKR 1313 Computer Aided Design K 3 BTKK 1303 Electrical Circuit Fundamental K 3 BTKR 1323 Measurement K 3 BLHW 1702 Islamic and Asian Civilizations W 2 BKKX xxxx Co-Curriculum I W 1 TOTAL CREDITS THIS SEMESTER 19 SEMESTER 2 BTKU 1023 Calculus For T...