1 /**************************************************
3 * Copyright 2010 IAR Systems. All rights reserved.
7 **************************************************/
10 ; The modules in this file are included in the libraries, and may be replaced
11 ; by any user-defined modules that define the PUBLIC symbol _program_start or
12 ; a user defined start symbol.
13 ; To override the cstartup defined in the library, simply add your modified
14 ; version to the workbench project.
16 ; The vector table is normally located at address 0.
17 ; When debugging in RAM, it can be located in RAM, aligned to at least 2^6.
18 ; The name "__vector_table" has special meaning for C-SPY:
19 ; it is where the SP start value is found, and the NVIC vector
20 ; table register (VTOR) is initialized to this address if != 0.
27 ;; Forward declaration of sections.
28 SECTION CSTACK:DATA:NOROOT(3)
30 SECTION .intvec:CODE:ROOT(2)
32 EXTERN __iar_program_start
38 DCD sfe(CSTACK) ; Top of Stack
39 DCD Reset_Handler ; Reset Handler
40 DCD NMI_Handler ; NMI Handler
41 DCD HardFault_Handler ; Hard Fault Handler
49 DCD SVC_Handler ; SVCall Handler
52 DCD PendSV_Handler ; PendSV Handler
53 DCD SysTick_Handler ; SysTick Handler
55 DCD DMA0_IRQHandler ; DMA channel 0 transfer complete/error interrupt
56 DCD DMA1_IRQHandler ; DMA channel 1 transfer complete/error interrupt
57 DCD DMA2_IRQHandler ; DMA channel 2 transfer complete/error interrupt
58 DCD DMA3_IRQHandler ; DMA channel 3 transfer complete/error interrupt
60 DCD FTFA_IRQHandler ; FTFA command complete/read collision interrupt
61 DCD LVD_LVW_IRQHandler ; Low Voltage Detect, Low Voltage Warning
62 DCD LLW_IRQHandler ; Low Leakage Wakeup
63 DCD I2C0_IRQHandler ; I2C0 interrupt
64 DCD I2C1_IRQHandler ; I2C0 interrupt 25
65 DCD SPI0_IRQHandler ; SPI0 interrupt
66 DCD SPI1_IRQHandler ; SPI1 interrupt
67 DCD UART0_IRQHandler ; UART0 status/error interrupt
68 DCD UART1_IRQHandler ; UART1 status/error interrupt
69 DCD UART2_IRQHandler ; UART2 status/error interrupt
70 DCD ADC0_IRQHandler ; ADC0 interrupt
71 DCD CMP0_IRQHandler ; CMP0 interrupt
72 DCD TPM0_IRQHandler ; TPM0 fault, overflow and channels interrupt
73 DCD TPM1_IRQHandler ; TPM1 fault, overflow and channels interrupt
74 DCD TPM2_IRQHandler ; TPM2 fault, overflow and channels interrupt
75 DCD RTC_IRQHandler ; RTC interrupt
76 DCD RTC_Seconds_IRQHandler ; RTC seconds interrupt
77 DCD PIT_IRQHandler ; PIT timer interrupt
78 DCD I2S0_IRQHandler ; I2S0 transmit interrupt
79 DCD USB0_IRQHandler ; USB0 interrupt
80 DCD DAC0_IRQHandler ; DAC0 interrupt
81 DCD TSI0_IRQHandler ; TSI0 interrupt
82 DCD MCG_IRQHandler ; MCG interrupt
83 DCD LPTimer_IRQHandler ; LPTimer interrupt
84 DCD LCD_IRQHandler ; Segment LCD Interrupt
85 DCD PORTA_IRQHandler ; Port A interrupt
86 DCD PORTD_IRQHandler ; Port D interrupt
87 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
89 ;;16-byte flash configuration field that stores default protection settings (loaded on reset)
90 ;;and security information that allows the MCU to restrict acces to the FTFL module.
102 FPROT0 EQU nFPROT0^0xFF
105 FPROT1 EQU nFPROT1^0xFF
108 FPROT2 EQU nFPROT2^0xFF
111 FPROT3 EQU nFPROT3^0xFF
116 SECTION FlashConfig:CONST:REORDER:ROOT(2)
119 DCB BackDoorK0, BackDoorK1, BackDoorK2, BackDoorK3
120 DCB BackDoorK4, BackDoorK5, BackDoorK6, BackDoorK7
121 DCB FPROT0, FPROT1, FPROT2, FPROT3
122 DCB FSEC, FOPT, 0xFF, 0xFF
123 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
125 ;; Default interrupt handlers.
128 PUBWEAK Reset_Handler
129 SECTION .text:CODE:NOROOT:REORDER(2)
134 LDR R0, =__iar_program_start
138 PUBWEAK HardFault_Handler
140 PUBWEAK PendSV_Handler
141 PUBWEAK SysTick_Handler
142 PUBWEAK DMA0_IRQHandler
143 PUBWEAK DMA1_IRQHandler
144 PUBWEAK DMA2_IRQHandler
145 PUBWEAK DMA3_IRQHandler
146 PUBWEAK Reserved20_IRQHandler
147 PUBWEAK FTFA_IRQHandler
148 PUBWEAK LVD_LVW_IRQHandler
149 PUBWEAK LLW_IRQHandler
150 PUBWEAK I2C0_IRQHandler
151 PUBWEAK I2C1_IRQHandler
152 PUBWEAK SPI0_IRQHandler
153 PUBWEAK SPI1_IRQHandler
154 PUBWEAK UART0_IRQHandler
155 PUBWEAK UART1_IRQHandler
156 PUBWEAK UART2_IRQHandler
157 PUBWEAK ADC0_IRQHandler
158 PUBWEAK CMP0_IRQHandler
159 PUBWEAK TPM0_IRQHandler
160 PUBWEAK TPM1_IRQHandler
161 PUBWEAK TPM2_IRQHandler
162 PUBWEAK RTC_IRQHandler
163 PUBWEAK RTC_Seconds_IRQHandler
164 PUBWEAK PIT_IRQHandler
165 PUBWEAK I2S0_IRQHandler
166 PUBWEAK USB0_IRQHandler
167 PUBWEAK DAC0_IRQHandler
168 PUBWEAK TSI0_IRQHandler
169 PUBWEAK MCG_IRQHandler
170 PUBWEAK LPTimer_IRQHandler
171 PUBWEAK LCD_IRQHandler
172 PUBWEAK PORTA_IRQHandler
173 PUBWEAK PORTD_IRQHandler
175 SECTION .text:CODE:REORDER:NOROOT(1)
186 Reserved20_IRQHandler
203 RTC_Seconds_IRQHandler