release/EM_CMSIS_3.20.6/Device/SiliconLabs/EFM32GG/Source/IAR/startup_efm32gg.c

Go to the documentation of this file.
00001 /**************************************************************************/
00033 #include "em_device.h"        /* The correct device header file. */
00034 
00035 #pragma language=extended
00036 #pragma segment="CSTACK"
00037 
00038 /* IAR start function */
00039 extern void __iar_program_start(void);
00040 /* CMSIS init function */
00041 extern void SystemInit(void);
00042 
00043 /* Auto defined by linker */
00044 extern unsigned char CSTACK$$Limit;
00045 
00046 __weak void Reset_Handler(void)
00047 {
00048   SystemInit();
00049   __iar_program_start();
00050 }
00051 
00052 __weak void NMI_Handler(void)
00053 {
00054   while(1);
00055 }
00056 
00057 __weak void HardFault_Handler(void)
00058 {
00059   while(1);
00060 }
00061 
00062 __weak void MemManage_Handler(void)
00063 {
00064   while(1);
00065 }
00066 
00067 __weak void BusFault_Handler(void)
00068 {
00069   while(1);
00070 }
00071 
00072 __weak void UsageFault_Handler(void)
00073 {
00074   while(1);
00075 }
00076 
00077 __weak void SVC_Handler(void)
00078 {
00079   while(1);
00080 }
00081 
00082 __weak void DebugMon_Handler(void)
00083 {
00084   while(1);
00085 }
00086 
00087 __weak void PendSV_Handler(void)
00088 {
00089   while(1);
00090 }
00091 
00092 __weak void SysTick_Handler(void)
00093 {
00094   while(1);
00095 }
00096 
00097 __weak void DMA_IRQHandler(void)
00098 {
00099   while(1);
00100 }
00101 
00102 __weak void GPIO_EVEN_IRQHandler(void)
00103 {
00104   while(1);
00105 }
00106 
00107 __weak void TIMER0_IRQHandler(void)
00108 {
00109   while(1);
00110 }
00111 
00112 __weak void USART0_RX_IRQHandler(void)
00113 {
00114   while(1);
00115 }
00116 
00117 __weak void USART0_TX_IRQHandler(void)
00118 {
00119   while(1);
00120 }
00121 
00122 __weak void USB_IRQHandler(void)
00123 {
00124   while(1);
00125 }
00126 
00127 __weak void ACMP0_IRQHandler(void)
00128 {
00129   while(1);
00130 }
00131 
00132 __weak void ADC0_IRQHandler(void)
00133 {
00134   while(1);
00135 }
00136 
00137 __weak void DAC0_IRQHandler(void)
00138 {
00139   while(1);
00140 }
00141 
00142 __weak void I2C0_IRQHandler(void)
00143 {
00144   while(1);
00145 }
00146 
00147 __weak void I2C1_IRQHandler(void)
00148 {
00149   while(1);
00150 }
00151 
00152 __weak void GPIO_ODD_IRQHandler(void)
00153 {
00154   while(1);
00155 }
00156 
00157 __weak void TIMER1_IRQHandler(void)
00158 {
00159   while(1);
00160 }
00161 
00162 __weak void TIMER2_IRQHandler(void)
00163 {
00164   while(1);
00165 }
00166 
00167 __weak void TIMER3_IRQHandler(void)
00168 {
00169   while(1);
00170 }
00171 
00172 __weak void USART1_RX_IRQHandler(void)
00173 {
00174   while(1);
00175 }
00176 
00177 __weak void USART1_TX_IRQHandler(void)
00178 {
00179   while(1);
00180 }
00181 
00182 __weak void LESENSE_IRQHandler(void)
00183 {
00184   while(1);
00185 }
00186 
00187 __weak void USART2_RX_IRQHandler(void)
00188 {
00189   while(1);
00190 }
00191 
00192 __weak void USART2_TX_IRQHandler(void)
00193 {
00194   while(1);
00195 }
00196 
00197 __weak void UART0_RX_IRQHandler(void)
00198 {
00199   while(1);
00200 }
00201 
00202 __weak void UART0_TX_IRQHandler(void)
00203 {
00204   while(1);
00205 }
00206 
00207 __weak void UART1_RX_IRQHandler(void)
00208 {
00209   while(1);
00210 }
00211 
00212 __weak void UART1_TX_IRQHandler(void)
00213 {
00214   while(1);
00215 }
00216 
00217 __weak void LEUART0_IRQHandler(void)
00218 {
00219   while(1);
00220 }
00221 
00222 __weak void LEUART1_IRQHandler(void)
00223 {
00224   while(1);
00225 }
00226 
00227 __weak void LETIMER0_IRQHandler(void)
00228 {
00229   while(1);
00230 }
00231 
00232 __weak void PCNT0_IRQHandler(void)
00233 {
00234   while(1);
00235 }
00236 
00237 __weak void PCNT1_IRQHandler(void)
00238 {
00239   while(1);
00240 }
00241 
00242 __weak void PCNT2_IRQHandler(void)
00243 {
00244   while(1);
00245 }
00246 
00247 __weak void RTC_IRQHandler(void)
00248 {
00249   while(1);
00250 }
00251 
00252 __weak void BURTC_IRQHandler(void)
00253 {
00254   while(1);
00255 }
00256 
00257 __weak void CMU_IRQHandler(void)
00258 {
00259   while(1);
00260 }
00261 
00262 __weak void VCMP_IRQHandler(void)
00263 {
00264   while(1);
00265 }
00266 
00267 __weak void LCD_IRQHandler(void)
00268 {
00269   while(1);
00270 }
00271 
00272 __weak void MSC_IRQHandler(void)
00273 {
00274   while(1);
00275 }
00276 
00277 __weak void AES_IRQHandler(void)
00278 {
00279   while(1);
00280 }
00281 
00282 __weak void EBI_IRQHandler(void)
00283 {
00284   while(1);
00285 }
00286 
00287 __weak void EMU_IRQHandler(void)
00288 {
00289   while(1);
00290 }
00291 
00292 
00293 /* With IAR, the CSTACK is defined via project options settings */
00294 #pragma data_alignment=256
00295 #pragma location = ".intvec"
00296 const void * const __vector_table[]=  {
00297     &CSTACK$$Limit,
00298     (void *) Reset_Handler,           /*  1 - Reset (start instruction) */
00299     (void *) NMI_Handler,             /*  2 - NMI */
00300     (void *) HardFault_Handler,       /*  3 - HardFault */
00301     (void *) MemManage_Handler,
00302     (void *) BusFault_Handler,
00303     (void *) UsageFault_Handler,
00304     (void *) 0,
00305     (void *) 0,
00306     (void *) 0,
00307     (void *) 0,
00308     (void *) SVC_Handler,
00309     (void *) DebugMon_Handler,
00310     (void *) 0,
00311     (void *) PendSV_Handler,
00312     (void *) SysTick_Handler,
00313     (void *) DMA_IRQHandler,  /* 0 - DMA */
00314     (void *) GPIO_EVEN_IRQHandler,  /* 1 - GPIO_EVEN */
00315     (void *) TIMER0_IRQHandler,  /* 2 - TIMER0 */
00316     (void *) USART0_RX_IRQHandler,  /* 3 - USART0_RX */
00317     (void *) USART0_TX_IRQHandler,  /* 4 - USART0_TX */
00318     (void *) USB_IRQHandler,  /* 5 - USB */
00319     (void *) ACMP0_IRQHandler,  /* 6 - ACMP0 */
00320     (void *) ADC0_IRQHandler,  /* 7 - ADC0 */
00321     (void *) DAC0_IRQHandler,  /* 8 - DAC0 */
00322     (void *) I2C0_IRQHandler,  /* 9 - I2C0 */
00323     (void *) I2C1_IRQHandler,  /* 10 - I2C1 */
00324     (void *) GPIO_ODD_IRQHandler,  /* 11 - GPIO_ODD */
00325     (void *) TIMER1_IRQHandler,  /* 12 - TIMER1 */
00326     (void *) TIMER2_IRQHandler,  /* 13 - TIMER2 */
00327     (void *) TIMER3_IRQHandler,  /* 14 - TIMER3 */
00328     (void *) USART1_RX_IRQHandler,  /* 15 - USART1_RX */
00329     (void *) USART1_TX_IRQHandler,  /* 16 - USART1_TX */
00330     (void *) LESENSE_IRQHandler,  /* 17 - LESENSE */
00331     (void *) USART2_RX_IRQHandler,  /* 18 - USART2_RX */
00332     (void *) USART2_TX_IRQHandler,  /* 19 - USART2_TX */
00333     (void *) UART0_RX_IRQHandler,  /* 20 - UART0_RX */
00334     (void *) UART0_TX_IRQHandler,  /* 21 - UART0_TX */
00335     (void *) UART1_RX_IRQHandler,  /* 22 - UART1_RX */
00336     (void *) UART1_TX_IRQHandler,  /* 23 - UART1_TX */
00337     (void *) LEUART0_IRQHandler,  /* 24 - LEUART0 */
00338     (void *) LEUART1_IRQHandler,  /* 25 - LEUART1 */
00339     (void *) LETIMER0_IRQHandler,  /* 26 - LETIMER0 */
00340     (void *) PCNT0_IRQHandler,  /* 27 - PCNT0 */
00341     (void *) PCNT1_IRQHandler,  /* 28 - PCNT1 */
00342     (void *) PCNT2_IRQHandler,  /* 29 - PCNT2 */
00343     (void *) RTC_IRQHandler,  /* 30 - RTC */
00344     (void *) BURTC_IRQHandler,  /* 31 - BURTC */
00345     (void *) CMU_IRQHandler,  /* 32 - CMU */
00346     (void *) VCMP_IRQHandler,  /* 33 - VCMP */
00347     (void *) LCD_IRQHandler,  /* 34 - LCD */
00348     (void *) MSC_IRQHandler,  /* 35 - MSC */
00349     (void *) AES_IRQHandler,  /* 36 - AES */
00350     (void *) EBI_IRQHandler,  /* 37 - EBI */
00351     (void *) EMU_IRQHandler,  /* 38 - EMU */
00352 
00353 };