On Tuesday 23 Sep 2003 10:25 pm, you wrote: > Roberts II, Charles K. wrote : > > I was taught the following convention when it comes to ISR's > > > > I have an ISR which monitors the Interrupt bits, > > Your ISR doesn't "monitor" anything (normaly). That's > a "polling" routine and not an "interrupt" driven routine. > > > So the ISR is only called when an interrupt signal is received > > by the micro and causes it to start reading code at specified > > at the interrupt vector. > > This is not what you said above, or ? > (But is correct.) > > Now, what your ISR has to do first is *now* to check the > interrupt bits to find out *which* interrupt event trigged it > and then probably jump to some specific "handler" for each event. > > Note also that many architectures (not the PICmicro) has "soft-interrupts", > such as an specific interrupt vector for "illegal instruction" or "divide > by zero" or whatever. Those are internaly generated interrupts that has > nothing to do with any external event, but from the ISR's standpoint work > the same way. > And others vector each interrupt to a different address so there is no need to check which interrupt occured. Ian -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu