This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

How to mask out all isr(hwi) in Timer isr?

Simple version: in any Hwi configuration, you can set "Masking Option" to decide how you want to mask out other Hwi(ISR). I understand Timer is also an ISR, but how can I set similar option to mask out other Hwi(ISR)s?

Complete version: I have a "enable/disable" signal that controls communication (if you know qMix), and I have to pull up this signal within 200us after the last byte is sent out on scia. Also I have to make sure the signal won't be pulled up until the last byte is "physically" sent out. When tx isr of scia tells me the last byte is sent to hardware, actually the last byte won't be sent out by hardware in about 1ms (I use 9600). So I have to wait for about 1ms. What I do is to check SciaRegs.SCICTL2.bit.TXEMPTY register until it is true, and delay a little (about 50us) then pull up the signal. This is not good since I have to be stuck in scia tx isr for about 1ms, which will mess up other high speed operation. So instead of waiting inside of scia tx isr, I start a Timer (C28xx Timer) of 800us, and do the same checking/waiting in the Timer isr instead of scia tx isr. In this way the MPU won't be stuck that long and give resource to other high speed operation. But I could not set "Masking Option" for Timer isr, and other Hwis interrupt my Timer isr, causing my signal is not "real time" enough and not reliable for the 200us criteria. Is there any way that I can do similar thing to mask out other Hwi(isr)s during Timer ISR? Do I have to do "Disable All Interrupt" at the beginning of Timer isr?

(Originally posted on Clock and Timing Forum, Arvind Sridhar suggested to post here.)