我也碰到一个问题,一直进不了中断,大家能否帮我看看
void KBIInit(void) {
PB0IE = 1; /* Enable KBI PB0 */
PB1IE = 1;
PB2IE = 1;
PB3IE = 1;
PB0PU = TRUE;
PB1PU = TRUE;
PB2PU = TRUE;
PB3PU = TRUE;
}
我的中断程序
interrupt void KBIIsr(void) {
UINT8 u8keys;
u8keys = ~PTAD;
// Still in debounce time - just return
//if (gu16timerEvents[1] != 0) {
//KBI1SC_KBACK = 1;
//return;
//}
if ((u8keys & KBI_SW1) == KBI_SW1) {
LED1=LED_ON;
//gu16timerEvents[1] = gu16msTimer + KBI_DEBOUNCE;
//gu16Events |= KBI2_EVENT;
}
if ((u8keys & KBI_SW2) == KBI_SW2) {
LED2=LED_ON;
//gu16timerEvents[1] = gu16msTimer + KBI_DEBOUNCE;
//gu16Events |= KBI3_EVENT;
}
if ((u8keys & KBI_SW3) == KBI_SW3) {
LED3=LED_ON;
//gu16timerEvents[1] = gu16msTimer + KBI_DEBOUNCE;
//gu16Events |= KBI4_EVENT;
}
if ((u8keys & KBI_SW4) == KBI_SW4) {
//gu16timerEvents[1] = gu16msTimer + KBI_DEBOUNCE;
//gu16Events |= KBI5_EVENT;
}
KBI1SC_KBACK = 1;
} |