#======================================================================
#文件名称：main.s      
#功能概要：汇编编程控制小灯闪烁
#版权所有：苏州大学NXP嵌入式中心(sumcu.suda.edu.cn)
#版本更新：2013-06-05 V1.0; 2016-03-03 V2.0
#======================================================================
#include "include.S"

#start 主函数定义开始
    .section   .text.main
    .global main               @定义全局变量，在芯片初始化之后调用
    .align 2                   @指令对齐
    .type main function        @定义主函数类
    .align 2
#end  主函数定义结束
main:
    cpsid i                    @关闭总中断
    #小灯初始化, r0,r3是light_init的入口参数
    ldr r0,=LIGHT_BLUE         @r0指明端口和引脚（用=是因为宏常数>=256,且用ldr)
    mov r3,#LIGHT_OFF          @r3指明引脚的初始状态
    bl light_init              @调用小灯初始化函数
	cpsie  i                   @开总中断
#主循环开始==================================================================
main_loop1:
    ldr r4,=RUN_COUNTER_MAX    @取延时值到r4
    mov r5,#0                  @从零计数
loop:
    add r5,#1                  @加1计数
    cmp r4,r5                  @r4值与r5值比较
    bne loop                   @不相等，则跳转loop
    bl light_change            @相等，则调用小灯亮暗转变函数
    bne main_loop1             @跳转main_loop1
#主循环结束==================================================================
.end

