We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hello all, I am working on a personal project - an RTOS for a XC167. It is fun and all goes well (still need to cut off some time of a context switch duration though - currently around 118 micro) and I am hoping to write one more system call to allow a task to wait for an interrupt to occur. I was going to allow this type of call: rtos_interrupt_wait(int32u interrupt) which puts a task in a seperate queue (out of the ready list) until the interrupt occurs. but in order to catch an intercept, you must always compile your code with a function that declares itself as an ISR, not? that implies that I should write some kind of macro to catches an interrupt, and copy-paste it with different interrupt numbers to handle all possibilities. but is there a better, more code efficient way? I failed to program my interrupt vector table (at least when its beginning was located at memory 0x0). Thanks in advance, Tamir
can I modify the contents of the interrupt vector table while the program is running? Yes, you can. It's standard technique when you need to remap memory which contains the interrupt vector table. my instinct says NO... You don't need to rely on your instinct. It's all in the manuals. Regards, - mike