1 | /**
|
2 | *@brief The minimal vector table for a Cortex M3. Note that the proper constructs
|
3 | * must be placed on this to ensure that it ends up at physical address
|
4 | * 0x00000000.
|
5 | */
|
6 | __attribute__ ((section(".isr_vector")))
|
7 | void (* const g_pfnVectors[])(void) =
|
8 | {
|
9 | /*----------Core Exceptions------------------------------------------------ */
|
10 | (void *)&pulStack[STACK_SIZE-1], /*!< The initial stack pointer */
|
11 | Reset_Handler, /*!< Reset Handler */
|
12 | NMI_Handler, /*!< NMI Handler */
|
13 | HardFault_Handler, /*!< Hard Fault Handler */
|
14 | MemManage_Handler, /*!< MPU Fault Handler */
|
15 | BusFault_Handler, /*!< Bus Fault Handler */
|
16 | UsageFault_Handler, /*!< Usage Fault Handler */
|
17 | 0,0,0,0, /*!< Reserved */
|
18 | SVC_Handler, /*!< SVCall Handler */
|
19 | DebugMon_Handler, /*!< Debug Monitor Handler */
|
20 | 0, /*!< Reserved */
|
21 | PendSV_Handler, /*!< PendSV Handler */
|
22 | SysTick_Handler, /*!< SysTick Handler */
|
23 |
|
24 | /*----------External Exceptions---------------------------------------------*/
|
25 | WWDG_IRQHandler, /*!< 0: Window WatchDog */
|
26 | PVD_IRQHandler, /*!< 1: PVD through EXTI Line detection */
|
27 | TAMP_STAMP_IRQHandler, /*!< 2: Tamper and TimeStamps through the EXTI line*/
|
28 | RTC_WKUP_IRQHandler, /*!< 3: RTC Wakeup through the EXTI line */
|
29 | FLASH_IRQHandler, /*!< 4: FLASH */
|
30 | RCC_IRQHandler , /*!< 5: RCC */
|
31 | EXTI0_IRQHandler, /*!< 6: EXTI Line0 */
|
32 | EXTI1_IRQHandler, /*!< 7: EXTI Line1 */
|
33 | EXTI2_IRQHandler, /*!< 8: EXTI Line2 */
|
34 | EXTI3_IRQHandler, /*!< 9: EXTI Line3 */
|
35 | EXTI4_IRQHandler, /*!< 10: EXTI Line4 */
|
36 | DMA1_Stream0_IRQHandler, /*!< 11: DMA1 Stream 0 */
|
37 | DMA1_Stream1_IRQHandler, /*!< 12: DMA1 Stream 1 */
|
38 | DMA1_Stream2_IRQHandler, /*!< 13: DMA1 Stream 2 */
|
39 | DMA1_Stream3_IRQHandler, /*!< 14: DMA1 Stream 3 */
|
40 | DMA1_Stream4_IRQHandler, /*!< 15: DMA1 Stream 4 */
|
41 | DMA1_Stream5_IRQHandler, /*!< 16: DMA1 Stream 5 */
|
42 | DMA1_Stream6_IRQHandler, /*!< 17: DMA1 Stream 6 */
|
43 | ADC_IRQHandler, /*!< 18: ADC1, ADC2 and ADC3s */
|
44 | CAN1_TX_IRQHandler, /*!< 19: CAN1 TX */
|
45 | CAN1_RX0_IRQHandler, /*!< 20: CAN1 RX0 */
|
46 | CAN1_RX1_IRQHandler, /*!< 21: CAN1 RX1 */
|
47 | CAN1_SCE_IRQHandler, /*!< 22: CAN1 SCE */
|
48 | EXTI9_5_IRQHandler, /*!< 23: External Line[9:5]s */
|
49 | TIM1_BRK_TIM9_IRQHandler, /*!< 24: TIM1 Break and TIM9 */
|
50 | TIM1_UP_TIM10_IRQHandler, /*!< 25: TIM1 Update and TIM10 */
|
51 | TIM1_TRG_COM_TIM11_IRQHandler,/*!< 26: TIM1 Trigger and Commutation and TIM11*/
|
52 | TIM1_CC_IRQHandler, /*!< 27: TIM1 Capture Compare */
|
53 | TIM2_IRQHandler, /*!< 28: TIM2 */
|
54 | TIM3_IRQHandler, /*!< 29: TIM3 */
|
55 | TIM4_IRQHandler, /*!< 30: TIM4 */
|
56 | I2C1_EV_IRQHandler, /*!< 31: I2C1 Event */
|
57 | I2C1_ER_IRQHandler, /*!< 32: I2C1 Error */
|
58 | I2C2_EV_IRQHandler, /*!< 33: I2C2 Event */
|
59 | I2C2_ER_IRQHandler, /*!< 34: I2C2 Error */
|
60 | SPI1_IRQHandler, /*!< 35: SPI1 */
|
61 | SPI2_IRQHandler, /*!< 36: SPI2 */
|
62 | USART1_IRQHandler, /*!< 37: USART1 */
|
63 | USART2_IRQHandler, /*!< 38: USART2 */
|
64 | USART3_IRQHandler, /*!< 39: USART3 */
|
65 | EXTI15_10_IRQHandler, /*!< 40: External Line[15:10]s */
|
66 | RTC_Alarm_IRQHandler, /*!< 41: RTC Alarm (A and B) through EXTI Line */
|
67 | OTG_FS_WKUP_IRQHandler, /*!< 42: USB OTG FS Wakeup through EXTI line */
|
68 | TIM8_BRK_TIM12_IRQHandler, /*!< 43: TIM8 Break and TIM12 */
|
69 | TIM8_UP_TIM13_IRQHandler, /*!< 44: TIM8 Update and TIM13 */
|
70 | TIM8_TRG_COM_TIM14_IRQHandler,/*!< 45:TIM8 Trigger and Commutation and TIM14*/
|
71 | TIM8_CC_IRQHandler, /*!< 46: TIM8 Capture Compare */
|
72 | DMA1_Stream7_IRQHandler, /*!< 47: DMA1 Stream7 */
|
73 | FSMC_IRQHandler, /*!< 48: FSMC */
|
74 | SDIO_IRQHandler, /*!< 49: SDIO */
|
75 | TIM5_IRQHandler, /*!< 50: TIM5 */
|
76 | SPI3_IRQHandler, /*!< 51: SPI3 */
|
77 | UART4_IRQHandler, /*!< 52: UART4 */
|
78 | UART5_IRQHandler, /*!< 53: UART5 */
|
79 | TIM6_DAC_IRQHandler, /*!< 54: TIM6 and DAC1&2 underrun errors */
|
80 | TIM7_IRQHandler, /*!< 55: TIM7 */
|
81 | DMA2_Stream0_IRQHandler, /*!< 56: DMA2 Stream 0 */
|
82 | DMA2_Stream1_IRQHandler, /*!< 57: DMA2 Stream 1 */
|
83 | DMA2_Stream2_IRQHandler, /*!< 58: DMA2 Stream 2 */
|
84 | DMA2_Stream3_IRQHandler, /*!< 59: DMA2 Stream 3 */
|
85 | DMA2_Stream4_IRQHandler, /*!< 60: DMA2 Stream 4 */
|
86 | ETH_IRQHandler, /*!< 61: Ethernet */
|
87 | ETH_WKUP_IRQHandler, /*!< 62: Ethernet Wakeup through EXTI line */
|
88 | CAN2_TX_IRQHandler, /*!< 63: CAN2 TX */
|
89 | CAN2_RX0_IRQHandler, /*!< 64: CAN2 RX0 */
|
90 | CAN2_RX1_IRQHandler, /*!< 65: CAN2 RX1 */
|
91 | CAN2_SCE_IRQHandler, /*!< 66: CAN2 SCE */
|
92 | OTG_FS_IRQHandler, /*!< 67: USB OTG FS */
|
93 | DMA2_Stream5_IRQHandler, /*!< 68: DMA2 Stream 5 */
|
94 | DMA2_Stream6_IRQHandler, /*!< 69: DMA2 Stream 6 */
|
95 | DMA2_Stream7_IRQHandler, /*!< 70: DMA2 Stream 7 */
|
96 | USART6_IRQHandler, /*!< 71: USART6 */
|
97 | I2C3_EV_IRQHandler, /*!< 72: I2C3 event */
|
98 | I2C3_ER_IRQHandler, /*!< 73: I2C3 error */
|
99 | OTG_HS_EP1_OUT_IRQHandler, /*!< 74: USB OTG HS End Point 1 Out */
|
100 | OTG_HS_EP1_IN_IRQHandler, /*!< 75: USB OTG HS End Point 1 In */
|
101 | OTG_HS_WKUP_IRQHandler, /*!< 76: USB OTG HS Wakeup through EXTI */
|
102 | OTG_HS_IRQHandler, /*!< 77: USB OTG HS */
|
103 | DCMI_IRQHandler, /*!< 53: DCMI */
|
104 | CRYP_IRQHandler, /*!< 53: CRYP crypto */
|
105 | HASH_RNG_IRQHandler, /*!< 53: Hash and Rng */
|
106 | FPU_IRQHandler /*!< 53: FPU */
|
107 |
|
108 | };
|