Hiya guys, need a bit of help here I have put this code in ----------------------------------------- void noreturn (void) interrupt 1 { send_serial("Timer0 Overflow"); } ------------------------------------------ but the target is not created when this code is in. what could it be??
place #pragma iv (0x0000) in your source code. The pragma above will force interrupts to the 0x0000 block. But, that space may already be used by monitor code... Beware. You said it's an eval board from a University - Is this something you're doing on your own or is it an assignment? It you were given an assignment to use timer0, then you must be able to use it (unless your prof isn't sharp enough to realize this). If you are winging this on your own, the problem could be that you just can't use timer0 on this eval board.
I do have acess to timer0. that was just an example, i will be needing 3 external interrupts also. i have chosse EX0, EX1, and CT3I/P1.5 But i now have a different problem, i can get the external interupts to work on the board, i did by changing the options, C51, int vectors options to 0xBF00. this made the interrupts work on the board, but when i went to simulate it, and clicked on a inturrpt the program jummped out and sat at the inturrupt vector ie IE0 jumped to 03h. why is this?
I've never used the Keil simulator, but somewhere in the options there should be a way to let it know you want to relocate where the hardware goes for interrupt vectors. Is there a place where you select what chip you are simulating? If so, maybe all you have to do is make sure the correct chip (one that has its int vectors at 0xBF00) is selected.