init.s

来自「proteus仿真ARM7的几个经典例子」· S 代码 · 共 79 行

S
79
字号
;**--------------文件信息--------------------------------------------------------------------------------
;**文   件   名: Init.s
;**创   建   人: 陈明计
;**最后修改日期: 2003年7月1日
;**描        述: lpc210x初始化代码,每个工程应当有独立的初始化代码,一般不需要改动
;**              特殊情况应当在这个文件上修改而来   
;********************************************************************************************************/

;引入的外部标号在这声明
    IMPORT  __main                          ;C语言主程序入口 
    IMPORT  InitStack                       ;初始化堆栈
    IMPORT  TargetResetInit                 ;目标板基本初始化
    
;给外部使用的标号在这声明
    EXPORT  Reset
    EXPORT __rt_div0
    EXPORT __user_initial_stackheap

;段声明
    CODE32
    AREA    Init,CODE,READONLY
    
;/*********************************************************************************************************
;** 函数名称: Reset
;** 功能描述: 复位入口
;** 
;** 输 入: 无
;**
;** 输 出: 无
;**         
;** 全局变量: 无
;** 调用模块: 无
;********************************************************************************************************/
Reset
        BL      InitStack               ;初始化堆栈
        BL      TargetResetInit         ;目标板基本初始化
        							    ;跳转到c语言入口
        B       __main


;/*********************************************************************************************************
;** 函数名称: __user_initial_stackheap 
;** 功能描述: 库函数初始化堆和栈,不能删除
;** 
;** 输 入: 参考库函数手册
;**
;** 输 出: 参考库函数手册
;**         
;** 全局变量: 无
;** 调用模块: 无
;********************************************************************************************************/
__user_initial_stackheap    
    LDR   r0,=bottom_of_heap
    MOV   pc,lr

;/*********************************************************************************************************
;** 函数名称: __rt_div0
;** 功能描述: 整数除法除数为0错误处理函数,替代原始的__rt_div0减少目标代码大小
;** 
;** 输 入: 参考库函数手册
;**
;** 输 出: 无
;**         
;** 全局变量: 无
;** 调用模块: 无
;********************************************************************************************************/
__rt_div0

        B       __rt_div0

;/* 分配堆空间 */
        AREA    Myheap, DATA, NOINIT, ALIGN=2
bottom_of_heap     SPACE   256  ;库函数的堆空间

    END
;/*********************************************************************************************************
;**                            End Of File
;********************************************************************************************************/

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?