📄 init.s
字号:
#*********************************************************************************************
# File: init.s
# Author: embest
# Desc: C start up codes.Configure memory, Initialize ISR ,stacks,initialize C-variables
# Fill zeros into zero-initialized C-variables
# History:
#*********************************************************************************************
/*------------------------------------------------------------------------------------------*/
/* global symbol define */
/*------------------------------------------------------------------------------------------*/
.global _start
/*------------------------------------------------------------------------------------------*/
/* code */
/*------------------------------------------------------------------------------------------*/
.text
_start:
# Set interrupt / exception vectors
b Reset_Handler
Undefined_Handler:
b Undefined_Handler
SWI_Handler:
b SWI_Handler
Prefetch_Handler:
b Prefetch_Handler
Abort_Handler:
b Abort_Handler
nop /* Reserved vector */
IRQ_Handler:
b IRQ_Handler
FIQ_Handler:
b FIQ_Handler
Reset_Handler:
ldr sp, =0x00002000
# *********************************************************
# Branch on C code Main function (with interworking) *
# Branch must be performed by an interworking call as *
# either an ARM or Thumb.main C function must be *
# supported. This makes the code not position-independant.*
# A Branch with link would generate errors *
# *********************************************************
.extern __main
ldr r0, = __main
mov lr, pc
# jump to __main()
bx r0
# *********************************************************
# * Loop for ever *
# * End of application. Normally, never occur. *
# * Could jump on Software Reset ( B 0x0 ). *
# *********************************************************
End:
b End
.end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -