123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 |
- /*****************************************************************************
- * Copyright (c) 2014 Rowley Associates Limited. *
- * *
- * This file may be distributed under the terms of the License Agreement *
- * provided with this software. *
- * *
- * THIS FILE IS PROVIDED AS IS WITH NO WARRANTY OF ANY KIND, INCLUDING THE *
- * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. *
- *****************************************************************************/
- .macro ISR_HANDLER name=
- .section .vectors, "ax"
- .word \name
- .section .init, "ax"
- .thumb_func
- .weak \name
- \name:
- 1: b 1b /* endless loop */
- .endm
- .macro ISR_RESERVED
- .section .vectors, "ax"
- .word 0
- .endm
- .syntax unified
- .global reset_handler
- .section .vectors, "ax"
- .code 16
- .global _vectors
- .macro DEFAULT_ISR_HANDLER name=
- .thumb_func
- .weak \name
- \name:
- 1: b 1b /* endless loop */
- .endm
- _vectors:
- .word __stack_end__
- .word reset_handler
- ISR_HANDLER NMI_Handler
- ISR_HANDLER HardFault_Handler
- ISR_HANDLER MemoryManagement_Handler
- ISR_HANDLER BusFault_Handler
- ISR_HANDLER UsageFault_Handler
- ISR_RESERVED
- ISR_RESERVED
- ISR_RESERVED
- ISR_RESERVED
- ISR_HANDLER SVC_Handler
- ISR_HANDLER DebugMon_Handler
- ISR_RESERVED
- ISR_HANDLER PendSV_Handler
- ISR_HANDLER SysTick_Handler
- // External interrupts start here
- ISR_HANDLER POWER_CLOCK_IRQHandler
- ISR_HANDLER RADIO_IRQHandler
- ISR_HANDLER UARTE0_UART0_IRQHandler
- ISR_HANDLER SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler
- ISR_HANDLER SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler
- ISR_HANDLER NFCT_IRQHandler
- ISR_HANDLER GPIOTE_IRQHandler
- ISR_HANDLER SAADC_IRQHandler
- ISR_HANDLER TIMER0_IRQHandler
- ISR_HANDLER TIMER1_IRQHandler
- ISR_HANDLER TIMER2_IRQHandler
- ISR_HANDLER RTC0_IRQHandler
- ISR_HANDLER TEMP_IRQHandler
- ISR_HANDLER RNG_IRQHandler
- ISR_HANDLER ECB_IRQHandler
- ISR_HANDLER CCM_AAR_IRQHandler
- ISR_HANDLER WDT_IRQHandler
- ISR_HANDLER RTC1_IRQHandler
- ISR_HANDLER QDEC_IRQHandler
- ISR_HANDLER COMP_LPCOMP_IRQHandler
- ISR_HANDLER SWI0_EGU0_IRQHandler
- ISR_HANDLER SWI1_EGU1_IRQHandler
- ISR_HANDLER SWI2_EGU2_IRQHandler
- ISR_HANDLER SWI3_EGU3_IRQHandler
- ISR_HANDLER SWI4_EGU4_IRQHandler
- ISR_HANDLER SWI5_EGU5_IRQHandler
- ISR_HANDLER TIMER3_IRQHandler
- ISR_HANDLER TIMER4_IRQHandler
- ISR_HANDLER PWM0_IRQHandler
- ISR_HANDLER PDM_IRQHandler
- ISR_RESERVED /*Reserved */
- ISR_RESERVED /*Reserved */
- ISR_HANDLER MWU_IRQHandler
- ISR_HANDLER PWM1_IRQHandler
- ISR_HANDLER PWM2_IRQHandler
- ISR_HANDLER SPIM2_SPIS2_SPI2_IRQHandler
- ISR_HANDLER RTC2_IRQHandler
- ISR_HANDLER I2S_IRQHandler
- .section .vectors, "ax"
- _vectors_end:
- .section .init, "ax"
- .thumb_func
- reset_handler:
- #ifndef __NO_SYSTEM_INIT
- ldr r0, =__SRAM_segment_end__
- mov sp, r0
- bl SystemInit
- #endif
- b _start
- #ifndef __NO_SYSTEM_INIT
- .thumb_func
- .weak SystemInit
- SystemInit:
- bx lr
- #endif
|