How to avoid freezing on unassigned ISRs?

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
User9260
Level 1
Level 1
The initialization provided by DAVE results in endless loops for every interrupt handler which is not explicitly defined somewhere in the firmware. See the macro Insert_ExceptionHandler in file startup_XMC4400.s. If for some reason such a vector gets called, the affected device will effectively freeze.

A better solution might be inserting a call to one specific subroutine by the macro Insert_ExceptionHandler. For example, the specific subroutine could have the name UnsupportedException_IRQHandler and would be weak, too. Existing firmware behavior would be retained, but you could implement void UnsupportedException_IRQHandler (void) somewhere in your firmware, which would handle all these events without freezing the device.

Any suggestions for the necessary modifications in startup_XMC4400.s?

TIA, Rudi
0 Likes
2 Replies
Travis
Employee
Employee
First solution authored Welcome! 500 replies posted
Hi Rudi1895,

Sorry to say that we don't usually modify the startup_XMC4400.s, unless you know what you are doing.

Anyway I will forward this thread to the DAVE team for consideration and review.

Best Regards
Travis
0 Likes
User9260
Level 1
Level 1
Hi Travis,

thank you for your support!

Best Regards,
Rudi
0 Likes