I am using Atmel AT89C51CC03, and it is configured so in Keil too. The data sheet lists the SPI interrupt vector as 0x0053h, and I do define my interrupt as interrupt #10. However, the map file show my SPI interrupt has address of 0x0026h.
Does anyone know why is that? Anything I can do to make it right?
Thanks in advance!
If you wished, You could prevent that by ensuring that you do provide an ISR for all possible interrupts; eg,
static void dummyISRxx(void) interrupt xx { for(;;); }
You could use this to prevent any unexpected behaviour if one of the "unused" interrupts should, somehow, accidentally get enabled...
You guys are right. I do have a LJMP at 0x53. Then I still do not know what causes my problem. In my interrupt routine, I basically toggle P4_0, but on my scope, I can see the P4_0 toggles even when chip select is high. Too bad that I can not post screen shot here, but basically my MOSI rest at 2.7V, and every 12.5 usec, there are two small pulses pull the voltage to 3.6V. P4_0 toggles at the rising edge of the first small pulse, and my chip select is solid high. I know the voltage is a little strange and I don't know what cause these small pulses, but if the chip select is high, then it should not trigger interrupt at all, right? Any suggestions? Thanks,
Can you post it somewhere else, and then provide a Link here?
Take me a while to bypass company firewall, but here you are:
www.flickr.com/.../42986638@N02/3963290758/
www.flickr.com/.../42986638@N02/3963290852/