aboutsummaryrefslogtreecommitdiffstats
path: root/stm32conf/lanchon-stm32/src/exceptions/stm32exceptions.c.prolog
diff options
context:
space:
mode:
Diffstat (limited to 'stm32conf/lanchon-stm32/src/exceptions/stm32exceptions.c.prolog')
-rw-r--r--stm32conf/lanchon-stm32/src/exceptions/stm32exceptions.c.prolog20
1 files changed, 20 insertions, 0 deletions
diff --git a/stm32conf/lanchon-stm32/src/exceptions/stm32exceptions.c.prolog b/stm32conf/lanchon-stm32/src/exceptions/stm32exceptions.c.prolog
new file mode 100644
index 0000000..140f151
--- /dev/null
+++ b/stm32conf/lanchon-stm32/src/exceptions/stm32exceptions.c.prolog
@@ -0,0 +1,20 @@
+/* Exception handlers for STM32 (by Lanchon)
+ *
+ * This code is meant to handle exceptions that the application does not expect.
+ * Handlers that are part of the application should be defined elsewhere. */
+
+#include "stm32exceptions.h"
+
+#ifndef CUSTOM_EXCEPTION_HANDLER
+ #ifdef DEBUG
+ /* Use individual infinite loops to ease debugging. */
+ #define DEFAULT_EXCEPTION_HANDLER(handler, name, number, address) while (1);
+ #else
+ /* Avoid individual infinite loops when not debugging. */
+ #define SHARED_EXCEPTION_HANDLER
+ #endif
+#endif
+
+/* Undefined handlers will default to a shared infinite loop (see lanchon-stm32-isrs.S). */
+#ifndef SHARED_EXCEPTION_HANDLER
+