Hello TI,
We have been working with the RM46 for a timing-critical application and are using GIOA[6]/[7] as inputs to trigger its ISR gioHighLevelInterrupt().
To measure the time to enter the interrupt we are setting a pin in the interrupt routine and measuring the delay between an applied input and the pin being set.
Now, the time from trigger until the pin is set is about 1.5 μs which is fine for our application. However, it is not exactly 1.5 μs but more around 1.5 μs ± 120 ns.
We would really like to decrease that variance as much as possible, even if at cost of time to enter the routine - we are just looking for it to be as consistent as possible.
The ISR that sets the pin is set as FIQ. There are a few other FIQ interrupts, we have already tried to disable them but the issue persists.
Some solutions we have tried already:
- We have tried to run the program with all other interrupts disabled.
- We tried setting other pins inside the ISR to see if the time to set the pin was the issue.
- We tried to set high/low/either polarity on the interrupt trigger.
So the question is basically - is there anything we can do to ensure that the processor takes the same time to enter the interrupt routine every time? It does not necessarily have to be faster than it already is, just consistent.
Thanks in advance.