And once you include unanticipated environmental conditions (did you really anticipate partially surviving a direct lighting strike?) it is necessary to include a proper mechanism for dealing with unanticipated exceptions. While you do want to catch these in test, it is, practically speaking, impossible to test all code paths in the system. But there are some general considerations.
I found some nice tutorials of how to solve this kind of problems but they are build to be CMSIS compliant and according to them in such cases TivaC library cannot be used since it is not compliant to CMSIS and I really want to be able to use TivaC library.Īre there some kind of documentation or tutorials for me to study so I can resolve these handlers in some acceptable way so my system can recover itself in case of jumping in FaultIISR during operation, or maybe I'm complicating simple situation, and all I need is some kind of restart? I'm interested now in best way how to handle those interrupts for production code, I believe it is wrong way to leave it this way since I don't want my system to freeze at some point (when deployed). As I see, NmiSR(), FaultISR(), IntDefaultHandler() all end in the infinite loop so the error can be examined with the debugger.
I'm working with M4 MCU-s, mostly testing on TM4C123gxl and TM4C1294xl Tiva Launchpads. I have one kind of more general question regarding startup file in CCS. Other Parts Discussed in Thread: TEST, STRIKE