I use keil software simulator Evatronix muc(80515) timer2,but can't trigger timer2 interrupt(TF2).
void Timer2_Init(void) { T2CON = (T2CON & 0xFC); //stop timer2 TF2 = 0; //clear overflow flag TH2 = 0x4D; TL2 = 0xE0; ET2 = 1; //open timer2 interrupt T2CON = (T2CON & 0xFC) | 0x01; //start timer2 }
void Timer2_Isr(void) interrupt 5 { Timer2_Init(); P0 = P0 ^ 0xFF; }
void main(void) { EAL = 1; //open all interrupt Timer2_Init(); while(1) { ; } }
Is that code 80515 keil simulator don't trigger timer2 interrupt.
void Timer2_Init(void) { T2CON = (T2CON & 0xFC); /*stop timer2*/ TF2 = 0; /*clear overflow flag*/ TH2 = 0x4D; TL2 = 0xE0; ET2 = 1; /*open timer2 interrupt*/ T2CON = (T2CON & 0xFC) | 0x01; /*start timer2*/ } void Timer2_Isr(void) interrupt 5 { Timer2_Init(); P0 = P0 ^ 0xFF; } void main(void) { EAL = 1; /*open all interrupt*/ Timer2_Init(); while(1) { ; } }
EAL = 1; /*open all interrupt*/ what is 'EAL', never head of it in C51