1			AREA    |.flash_start|, CODE, READONLY  ,ALIGN=4
2
3Reset_Handler PROC
4			EXPORT  Reset_Handler
5			IMPORT  __main
6			LDR 	R0, =__main
7			BX 		R0
8			ENDP
9
10
11hard_fault_handler PROC
12			EXPORT  hard_fault_handler
13            IMPORT HardFault_Handler
14			ldr r0,=HardFault_Handler
15			bx r0
16			nop
17			ENDP
18
19svc_handler PROC
20			EXPORT  svc_handler
21			ldr r0,=SVC_IRQHandler
22			bx r0
23			nop
24			ENDP
25
26pendsv_handler PROC
27			EXPORT  pendsv_handler
28            IMPORT  PendSV_Handler
29			ldr r0,=PendSV_Handler
30			bx r0
31			nop
32			ENDP
33
34systick 	PROC
35			EXPORT systick
36            IMPORT SysTick_Handler
37			ldr r0,=SysTick_Handler
38			bx r0
39			nop
40			ENDP
41
42irq0 		PROC
43			EXPORT irq0
44			movs r0,#4*0
45			b isr
46			ENDP
47
48irq1 		PROC
49			EXPORT irq1
50			movs r0,#4*1
51			b isr
52			ENDP
53
54irq2 		PROC
55			EXPORT irq2
56			movs r0,#4*2
57			b isr
58			ENDP
59
60irq3 		PROC
61			EXPORT irq3
62			movs r0,#4*3
63			b isr
64			ENDP
65
66irq4 		PROC
67			EXPORT irq4
68			movs r0,#4*4
69			b isr
70			ENDP
71
72irq5 		PROC
73			EXPORT irq5
74			movs r0,#4*5
75			b isr
76			ENDP
77
78irq6 		PROC
79			EXPORT irq6
80			movs r0,#4*6
81			b isr
82			ENDP
83
84irq7 		PROC
85			EXPORT irq7
86			movs r0,#4*7
87			b isr
88			ENDP
89
90irq8 		PROC
91			EXPORT irq8
92			movs r0,#4*8
93			b isr
94			ENDP
95
96irq9 		PROC
97			EXPORT irq9
98			movs r0,#4*9
99			b isr
100			ENDP
101
102irq10 		PROC
103			EXPORT irq10
104			movs r0,#4*10
105			b isr
106			ENDP
107
108irq11 		PROC
109			EXPORT irq11
110			movs r0,#4*11
111			b isr
112			ENDP
113
114irq12 		PROC
115			EXPORT irq12
116			movs r0,#4*12
117			b isr
118			ENDP
119
120irq13 		PROC
121			EXPORT irq13
122			movs r0,#4*13
123			b isr
124			ENDP
125
126irq14 		PROC
127			EXPORT irq14
128			movs r0,#4*14
129			b isr
130			ENDP
131
132irq15 		PROC
133			EXPORT irq15
134			movs r0,#4*15
135			b isr
136			ENDP
137
138irq16 		PROC
139			EXPORT irq16
140			movs r0,#4*16
141			b isr
142			ENDP
143
144irq17 		PROC
145			EXPORT irq17
146			movs r0,#4*17
147			b isr
148			ENDP
149
150irq18 		PROC
151			EXPORT irq18
152			movs r0,#4*18
153			b isr
154			ENDP
155
156irq19 		PROC
157			EXPORT irq19
158			movs r0,#4*19
159			b isr
160			ENDP
161
162irq20 		PROC
163			EXPORT irq20
164			movs r0,#4*20
165			b isr
166			ENDP
167
168irq21 		PROC
169			EXPORT irq21
170			movs r0,#4*21
171			b isr
172			ENDP
173
174irq22 		PROC
175			EXPORT irq22
176			movs r0,#4*22
177			b isr
178			ENDP
179
180irq23 		PROC
181			EXPORT irq23
182			movs r0,#4*23
183			b isr
184			ENDP
185
186irq24 		PROC
187			EXPORT irq24
188			movs r0,#4*24
189			b isr
190			ENDP
191
192irq25 		PROC
193			EXPORT irq25
194			movs r0,#4*25
195			b isr
196			ENDP
197
198irq26 		PROC
199			EXPORT irq26
200			movs r0,#4*26
201			b isr
202			ENDP
203
204irq27 		PROC
205			EXPORT irq27
206			movs r0,#4*27
207			b isr
208			ENDP
209
210irq28 		PROC
211			EXPORT irq28
212			movs r0,#4*28
213			b isr
214			ENDP
215
216irq29 		PROC
217			EXPORT irq29
218			movs r0,#4*29
219			b isr
220			ENDP
221
222irq30		PROC
223			EXPORT irq30
224			movs r0,#4*30
225			b isr
226			ENDP
227
228irq31 		PROC
229			EXPORT irq31
230			movs r0,#4*31
231			b isr
232			ENDP
233
234
235isr    		PROC
236			ldr r1,=isr_table
237			ldr r0,[r0, r1]
238			bx r0
239			ENDP
240
241				ALIGN
242NMI_IRQHandler  		PROC
243						EXPORT      NMI_IRQHandler				[WEAK]
244						B	.
245						ENDP
246
247HARD_FAULT_IRQHandler   PROC
248						EXPORT      HARD_FAULT_IRQHandler		[WEAK]
249						B	.
250						ENDP
251
252SVC_IRQHandler   		PROC
253						EXPORT      SVC_IRQHandler				[WEAK]
254						B	.
255						ENDP
256
257PENDSV_IRQHandler   	PROC
258						EXPORT      PENDSV_IRQHandler			[WEAK]
259						B	.
260						ENDP
261
262SYSTICK_IRQHandler   	PROC
263						EXPORT      SYSTICK_IRQHandler			[WEAK]
264						B	.
265						ENDP
266
267EXTI0_IRQHandler   		PROC
268						EXPORT      EXTI0_IRQHandler			[WEAK]
269						B	.
270						ENDP
271
272EXTI1_IRQHandler   		PROC
273						EXPORT      EXTI1_IRQHandler			[WEAK]
274						B	.
275						ENDP
276
277EXTI2_IRQHandler   		PROC
278						EXPORT      EXTI2_IRQHandler			[WEAK]
279						B	.
280						ENDP
281
282EXTI3_IRQHandler   		PROC
283						EXPORT      EXTI3_IRQHandler			[WEAK]
284						B	.
285						ENDP
286
287EXTI4_IRQHandler   		PROC
288						EXPORT      EXTI4_IRQHandler			[WEAK]
289						B	.
290						ENDP
291
292EXTI5_IRQHandler   		PROC
293						EXPORT      EXTI5_IRQHandler			[WEAK]
294						B	.
295						ENDP
296
297Default_Handler PROC
298; ToDo:  Add here the export definition for the device specific external interrupts handler
299                EXPORT		USB_IRQHandler	 	[WEAK]
300				EXPORT		IIC_IRQHandler   	[WEAK]
301				EXPORT		QSPI_IRQHandler  	[WEAK]
302				EXPORT		SPI0_IRQHandler  	[WEAK]
303				EXPORT		SPI1_IRQHandler  	[WEAK]
304				EXPORT		UART0_IRQHandler 	[WEAK]
305				EXPORT		UART1_IRQHandler 	[WEAK]
306				EXPORT 		MEMCP_IRQHandler 	[WEAK]
307				EXPORT		RSA_IRQHandler   	[WEAK]
308				EXPORT		SCI0_IRQHandler  	[WEAK]
309				EXPORT		SCI1_IRQHandler  	[WEAK]
310				EXPORT		BT_IRQHandler 		[WEAK]
311				EXPORT		GPIO_IRQHandler    	[WEAK]
312				EXPORT		TIMER0_IRQHandler	[WEAK]
313				EXPORT		TIMER1_IRQHandler	[WEAK]
314				EXPORT		TIMER2_IRQHandler	[WEAK]
315				EXPORT		TIMER3_IRQHandler	[WEAK]
316				EXPORT		TIMER4_IRQHandler	[WEAK]
317				EXPORT		TIMER5_IRQHandler	[WEAK]
318				EXPORT		TIMER6_IRQHandler	[WEAK]
319				EXPORT		TIMER7_IRQHandler	[WEAK]
320				EXPORT		TIMER8_IRQHandler 	[WEAK]
321				EXPORT		SM4_IRQHandler   	[WEAK]
322				EXPORT		SEC_IRQHandler		[WEAK]
323				EXPORT		MSR_IRQHandler		[WEAK]
324				EXPORT		TRNG_IRQHandler		[WEAK]
325				EXPORT 		WDT_IRQHandler		[WEAK]
326
327; ToDo:  Add here the names for the device specific external interrupts handler
328USB_IRQHandler
329IIC_IRQHandler
330QSPI_IRQHandler
331SPI0_IRQHandler
332SPI1_IRQHandler
333UART0_IRQHandler
334UART1_IRQHandler
335MEMCP_IRQHandler
336RSA_IRQHandler
337SCI0_IRQHandler
338SCI1_IRQHandler
339BT_IRQHandler
340GPIO_IRQHandler
341TIMER0_IRQHandler
342TIMER1_IRQHandler
343TIMER2_IRQHandler
344TIMER3_IRQHandler
345TIMER4_IRQHandler
346TIMER5_IRQHandler
347TIMER6_IRQHandler
348TIMER7_IRQHandler
349TIMER8_IRQHandler
350SM4_IRQHandler
351SEC_IRQHandler
352MSR_IRQHandler
353TRNG_IRQHandler
354WDT_IRQHandler
355                B       .
356                ENDP
357
358
359
360			EXPORT isr_table
361isr_table	DCD     USB_IRQHandler
362			DCD 	IIC_IRQHandler
363			DCD 	QSPI_IRQHandler
364			DCD 	SPI0_IRQHandler
365			DCD 	SPI1_IRQHandler
366			DCD 	UART0_IRQHandler
367			DCD 	UART1_IRQHandler
368			DCD 	MEMCP_IRQHandler
369			DCD 	RSA_IRQHandler
370			DCD 	SCI0_IRQHandler
371			DCD 	SCI1_IRQHandler
372			DCD 	BT_IRQHandler
373			DCD 	GPIO_IRQHandler
374			DCD 	TIMER0_IRQHandler
375			DCD 	TIMER1_IRQHandler
376			DCD 	TIMER2_IRQHandler
377			DCD 	TIMER3_IRQHandler
378			DCD 	TIMER4_IRQHandler
379			DCD 	TIMER5_IRQHandler
380			DCD 	TIMER6_IRQHandler
381			DCD 	TIMER7_IRQHandler
382			DCD 	TIMER8_IRQHandler
383			DCD 	SM4_IRQHandler
384			DCD 	SEC_IRQHandler
385			DCD 	MSR_IRQHandler
386			DCD 	TRNG_IRQHandler
387			DCD 	WDT_IRQHandler
388			END
389
390
391
392
393
394
395
396
397