The friendly Operating System for the Internet of Things
vectors_cortexm.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2015 Freie Universit├Ąt Berlin
3  *
4  * This file is subject to the terms and conditions of the GNU Lesser
5  * General Public License v2.1. See the file LICENSE in the top level
6  * directory for more details.
7  */
8 
19 #ifndef VECTORS_DEFAULT_H
20 #define VECTORS_DEFAULT_H
21 
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
25 
30 #define WEAK_DEFAULT __attribute__((weak,alias("dummy_handler")))
31 
35 #define ISR_VECTORS __attribute__((used,section(".vectors")))
36 
43 #define CPU_NONISR_EXCEPTIONS (15)
44 
55 void reset_handler_default(void);
56 
64 void nmi_default(void);
65 
73 void hard_fault_default(void);
74 
75 /* The following four exceptions are only present for Cortex-M3 and -M4 CPUs */
76 #if defined(CPU_ARCH_CORTEX_M3) || defined(CPU_ARCH_CORTEX_M4) || \
77  defined(CPU_ARCH_CORTEX_M4F)
78 
84 void mem_manage_default(void);
85 
91 void bus_fault_default(void);
92 
100 void usage_fault_default(void);
101 
108 void debug_mon_default(void);
109 #endif
110 
119 void dummy_handler_default(void);
120 
121 #ifdef __cplusplus
122 }
123 #endif
124 
125 #endif /* VECTORS_DEFAULT_H */
126 
void reset_handler_default(void)
This function is the default entry point after a system reset.
void hard_fault_default(void)
Hard fault exception handler.
void nmi_default(void)
Non-maskable interrupt handler.
void dummy_handler_default(void)
Default handler used as weak alias for not implemented ISR vectors.