| ??? 12/24/01 18:53 Read: times |
#18062 - RE: catching all interrupts |
Is there a way not to loose the interrupts? Can we keep other interrupts
on pending state during an interrupt routine? You can't loose interrupts. You can loose interrupt flags set by hardware (and thus the pending interrupt) only if you clear the flags during the higher interrupt is serviced. Remember, all of the bits that generate interrupts can be set or cleared by software, with the same result as though it had been set or cleared by hardware. That is, interrupts can be generated or pending interrupts can be canceled in software. More than that, are interrupt flags not cleared by hardware when the service routine is vectored to. How can you loose such interrupt where even you must not forget to clear in software the requested flags ? The only interrupts you should take care more than others are the interrupts level-activated, when the external requesting source is what controls the request flag, rather than on-chip hardware. This is the only request you can loose. Because the interrupt flags are sampled at S5P2 of every machine cycle (standard MCS51 not fast Dallas), even the above situation could be solved if you hold the external pins for at least 12 oscillator, then interrupt flag will be set. The only thing you must be worried is the response time until the service routine is started. And not the fact that you will loose interrupts. However if you have applications which requires more than two priority levels that are provided by on-chip hardware (once again for standard MCS51) devices you can take a look at the end of 80C51 family architecture guide where you will find how to simulate a third piority level in software. Regards, Silviu |
| Topic | Author | Date |
| catching all interrupts | 01/01/70 00:00 | |
| RE: catching all interrupts | 01/01/70 00:00 | |
| RE: catching all interrupts | 01/01/70 00:00 | |
| RE: catching all interrupts | 01/01/70 00:00 | |
| RE: catching all interrupts | 01/01/70 00:00 | |
RE: catching all interrupts- to Simon | 01/01/70 00:00 |



