Other Parts Discussed in Thread: SYSBIOS
Tool/software:
I am currently using TIRTOS. I have several HWIs in the system and am considering adding a zero-latency ISR. I am using Hwi_Params with maskSetting = Hwi_MaskingOption_BITMASK and providing masks to Hwi_Params disableMask/restoreMask for nesting interrupts based on priority when using Hwi_create and the Hwi Dispatcher.
Can I do a similar thing with the zero-latency interrupt but manually change the associated IER within the interrupt function? See the following code:
interrupt void Zero_Latency ( void )
{
// Set interrupt priority:
volatile Uint16 TempPIEIER = PieCtrlRegs.PIEIER1.all;
IER |= M_INT1;
IER &= MINT1; // Set "global" priority
PieCtrlRegs.PIEACK.all = 0xFFFF; // Enable PIE interrupts
asm " clrc INTM"
// [Insert ISR Code here]
// Restore registers saved:
asm " setc INTM"
PieCtrlRegs.PIEIER1.all = TempPIEIER;
}
My goal is to be able to add a zero latency while keeping my PIE group priority nesting intact using both the HWIs under HWI dispatcher and the zero latency interrupt.
Can a HWI Dispatcher HWI interrupt a zero latency interrupt and visa versa depending on priority?
Thanks