36 #include <rtos_map/adi_rtos_map.h> 41 extern uint32_t __etext;
42 extern uint32_t __data_start__;
43 extern uint32_t __data_end__;
44 extern uint32_t __copy_table_start__;
45 extern uint32_t __copy_table_end__;
46 extern uint32_t __zero_table_start__;
47 extern uint32_t __zero_table_end__;
48 extern uint32_t __bss_start__;
49 extern uint32_t __bss_end__;
50 extern uint32_t __StackTop;
55 typedef void( *pFunc )( void );
62 extern void _start(
void) __attribute__((noreturn));
64 extern int __START(
void) __attribute__((noreturn));
67 #ifndef __NO_SYSTEM_INIT 75 void Default_Handler(
void);
82 #define __STACK_SIZE 0x00000400 84 static uint8_t stack[__STACK_SIZE] __attribute__ ((aligned(8), used, section(
".stack")));
87 #define __HEAP_SIZE 0x00000C00 90 static uint8_t heap[__HEAP_SIZE] __attribute__ ((aligned(8), used, section(
".heap")));
97 void Reset_Handler (
void) __attribute__ ((weak, alias(
"Reset_Handler_C")));
98 void NMI_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
99 void HardFault_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
100 void MemManage_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
101 void BusFault_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
102 void UsageFault_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
103 void SVC_HANDLER (
void) __attribute__ ((weak, alias(
"Default_Handler")));
104 void DebugMon_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
105 void PENDSV_HANDLER (
void) __attribute__ ((weak, alias(
"Default_Handler")));
106 void SYSTICK_HANDLER (
void) __attribute__ ((weak, alias(
"Default_Handler")));
109 void RTC1_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
110 void Ext_Int0_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
111 void Ext_Int1_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
112 void Ext_Int2_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
113 void Ext_Int3_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
114 void WDog_Tmr_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
115 void Vreg_over_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
116 void Battery_Voltage_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
117 void RTC0_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
118 void GPIO_A_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
119 void GPIO_B_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
120 void GP_Tmr0_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
121 void GP_Tmr1_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
122 void Flash0_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
123 void UART_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
124 void SPI0_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
125 void SPI2_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
126 void I2C0_Slave_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
127 void I2C0_Master_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
128 void DMA_Err_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
129 void DMA_SPI2_TX_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
130 void DMA_SPI2_RX_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
133 void DMA_SPI0_TX_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
134 void DMA_SPI0_RX_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
135 void DMA_SPI1_TX_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
136 void DMA_SPI1_RX_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
137 void DMA_UART_TX_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
138 void DMA_UART_RX_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
139 void DMA_I2C0_STX_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
140 void DMA_I2C0_SRX_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
141 void DMA_I2C0_MX_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
142 void DMA_AES0_IN_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
143 void DMA_AES0_OUT_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
144 void DMA_FLASH0_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
147 void Crypto_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
148 void DMA_ADC0_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
149 void GP_Tmr2_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
150 void Crystal_osc_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
151 void SPI1_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
152 void PLL_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
153 void RNG_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
154 void Beep_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
155 void ADC_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
156 void DMA_SIP0_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
157 void DMA_SIP1_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
158 void DMA_SIP2_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
159 void DMA_SIP3_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
160 void DMA_SIP4_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
161 void DMA_SIP5_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
162 void DMA_SIP6_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
163 void DMA_SIP7_Int_Handler (
void) __attribute__ ((weak, alias(
"Default_Handler")));
168 const pFunc __Vectors[] __attribute__ ((section(
".vectors"))) = {
193 WDog_Tmr_Int_Handler,
194 Vreg_over_Int_Handler,
195 Battery_Voltage_Int_Handler,
205 I2C0_Slave_Int_Handler,
206 I2C0_Master_Int_Handler,
208 DMA_SPI2_TX_Int_Handler,
209 DMA_SPI2_RX_Int_Handler,
212 DMA_SPI0_TX_Int_Handler,
213 DMA_SPI0_RX_Int_Handler,
214 DMA_SPI1_TX_Int_Handler,
215 DMA_SPI1_RX_Int_Handler,
216 DMA_UART_TX_Int_Handler,
217 DMA_UART_RX_Int_Handler,
218 DMA_I2C0_STX_Int_Handler,
219 DMA_I2C0_SRX_Int_Handler,
220 DMA_I2C0_MX_Int_Handler,
221 DMA_AES0_IN_Int_Handler,
222 DMA_AES0_OUT_Int_Handler,
223 DMA_FLASH0_Int_Handler,
227 DMA_ADC0_Int_Handler,
229 Crystal_osc_Int_Handler,
244 DMA_SIP0_Int_Handler,
245 DMA_SIP1_Int_Handler,
246 DMA_SIP2_Int_Handler,
247 DMA_SIP3_Int_Handler,
248 DMA_SIP4_Int_Handler,
249 DMA_SIP5_Int_Handler,
250 DMA_SIP6_Int_Handler,
251 DMA_SIP7_Int_Handler,
259 void Reset_Handler_C(
void) {
260 uint32_t *pSrc, *pDest;
261 uint32_t *pTable __attribute__((unused));
269 #ifdef __STARTUP_COPY_MULTIPLE 280 pTable = &__copy_table_start__;
282 for (; pTable < &__copy_table_end__; pTable = pTable + 3) {
283 pSrc = (uint32_t*)*(pTable + 0);
284 pDest = (uint32_t*)*(pTable + 1);
285 for (; pDest < (uint32_t*)(*(pTable + 1) + *(pTable + 2)) ; ) {
300 pDest = &__data_start__;
302 for ( ; pDest < &__data_end__ ; ) {
317 #ifdef __STARTUP_CLEAR_BSS_MULTIPLE 325 pTable = &__zero_table_start__;
327 for (; pTable < &__zero_table_end__; pTable = pTable + 2) {
328 pDest = (uint32_t*)*(pTable + 0);
329 for (; pDest < (uint32_t*)(*(pTable + 0) + *(pTable + 1)) ; ) {
333 #elif defined (__STARTUP_CLEAR_BSS) 342 pDest = &__bss_start__;
344 for ( ; pDest < &__bss_end__ ; ) {
349 #ifndef __NO_SYSTEM_INIT 354 #define __START _start 364 void Default_Handler(
void) {
void SystemInit(void)
Sets up the microcontroller system. Initializes the System and updates the relocate vector table...
void SPORT0A_Int_Handler(void)
void SPORT0B_Int_Handler(void)
void DMA_SPORT0B_Int_Handler(void)
void DMA_SPORT0A_Int_Handler(void)