[an error occurred while processing this directive]
|
Q. I am using an ADSP-218x DSP and I have interrupt nesting disabled. If the DSP is servicing an interrupt (interrupt A) and another interrupt (interrupt B) occurs, then interrupt B is pending. During the servicing of interrupt A, can I obtain information about any pending interrupts? Is there any register that contains this record? If I wanted to have interrupt B serviced even though interrupt A was already being serviced, how could I accomplish this?
A. With the 218x family there is no way to determine if an interrupt is pending while another interrupt is being serviced. If you wanted to ensure that interrupt B would be serviced if it occurred during interrupt A's interrupt service routine (ISR), you should enable interrupt B by setting the appropriate bit in the IMASK register while in interrupt A's ISR. This will cause interrupt B to be serviced immediately if interrupt B is latched during A's ISR. Note that this is only valid for edge sensitive interrupts because they are the only ones that are latched.
Вопрошающий говорит, что он запрещает вложенность прерываний. И хочет получить тоже самое, что и я. А ему отвечают, что в прерывании А ему надо выставить соответсвующий бит в IMASK регистре и прерывание Б произойдёт после запроса на него.
Это действительно так?????
E-mail: info@telesys.ru