I’m busy pin-pointing issues I have with the debugger on EMX in combination with RLP on latest 4.1 release.
I have a simple application that calls a Init() method in RLP. That Init method configures TIMER3 to overflow at 1khz and installs an interrupt handler for that timer:
When I run the project, it deploys and runs. When I hit stop, the debugger stops. When I press run, debugger hangs in “Rebooting” phase, I need to reset my board.
So question: Why does installing an interrupt lock up? Is TIMER3 in use by something else in the core? Or is it because my interrupt handler doesn’t clear some flag?
The interrupt handler contains this code in order to clear the interrupt flag:
If I toggle a pin in the ISR, it’s toggled at 1000hz.
I’ve seen that, when I disable the timer before stopping the debugger, I can redeploy without problems. So VS can’t reboot the device when there is a timer running with interrupt attached.
So additional question: can I detect that debugging is stopped from RLP?