Hi, I'm writing my first ever MCU program using CodeWarrior and MC68HC908QY4 processor. When I go to set the KBSCR_MODEK = 1 so that my keyboard interrupt is low-level and falling edge sensitive, it falsly triggers a keyboard interrupt. I've tried everything they said in the datasheets but still no luck. Anyone know what to do? Below is my code: #include <hidef.h> /* for EnableInterrupts macro */ #include <MC68HC908QY4.h> /* include peripheral declarations */ #define EVER (;;) void main(void) { EnableInterrupts; /* enable interrupts. Same as CLI command */ /* include your code here */ //setting CONFIG1 and CONFIG2 CONFIG1 = 0x2B; //00101011 CONFIG2 = 0x01; //00000001 //setting ADSCR ADSCR = 0x23; //00100011 Continous ADC on AD3 //enabling keyboard inputs KBSCR_IMASKK = 1; KBIER = 0x13; //00010011 KBSCR_MODEK = 1; KBSCR_ACKK = 1; KBSCR_IMASKK = 0; } interrupt 15 void KBI_ISR(void){ KBSCR_ACKK = 1; //acknowledging interrupt asm STOP; } the way i know it is triggering the interrupt is when i run the debugger in codewarrior, the program stops at 247 CPU cycles and when i then halt the debugger, it goes to "asm STOP;" line. now, if i remove the "KBSCR_MODEK = 1;" line, the debugger runs to the end of the main function and stops like it is supposed to. any help would be appreciated. thanks, Aria
KBSCR_MODEK triggering keyboard interrupt! (HC908QY4)
Started by ●August 9, 2005
Reply by ●August 9, 20052005-08-09