⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 light_init.lst

📁 系统采用SONIX单片机作为控制核心
💻 LST
字号:
     1  000000             ;***********************************************************************************************
     2  000000             ;File name	:light_init.asm
     3  000000             ;Author		:guangyu_yang
     4  000000             ;Purpose	:Training
     5  000000             ;Data		:2/8/2007
     6  000000             ;Dscription	:系统初始化				
     7  000000             ;Version:	v1.1
     8  000000             ;Hardware&IDE:	m2 1.14
     9  000000             ;Copyright(C).SONIX TECHNOLOGY CO.,Ltd.		   
    10  000000             ;*************************************************************************************************
    11  000000             sysinit:
    12  000000             	mov	a,#5ah
    13  000000             	b0mov	wdtr,a		;清狗
    14  000000             	call	init_oscm	;系统运行状态初始化
    15  000000             	call	init_ram	;ram初始化
    16  000000             	call	init_io		;io口初始化
    17  000000             	call	init_t0		;t0初始化
    18  000000             	call	premain
    19  000000             	ret
    20  000000             
    21  000000             init_oscm:
    22  000000             	mov	a,#00h		;系统在正常状态运行
    23  000000             	b0mov	oscm,a
    24  000000              	ret
    25  000000             
    26  000000             ;初始化RAM
    27  000000             init_ram:                    	;清BANK0		   	
    28  000000                     clr	Y               
    29  000000             	b0mov   Z , #7fh
    30  000000             clr_bank0:               
    31  000000             	clr     @YZ
    32  000000             	decms   Z
    33  000000             	jmp     clr_bank0
    34  000000             	clr     @YZ
    35  000000             				;清BAKN1
    36  000000             	mov	a,#1
    37  000000             	b0mov	Y,A
    38  000000             	mov	A,#0x7f
    39  000000             	b0mov	Z,A				;Set @YZ address from 17fh
    40  000000             
    41  000000             ClrRAM20:
    42  000000             	clr 		@YZ				;Clear @YZ content
    43  000000             	decms		Z   				;z = z - 1 , skip next if z=0
    44  000000             	jmp 		ClrRAM20
    45  000000             	clr 		@YZ				;Clear address 0x100
    46  000000             	ret
    47  000000             		 
    48  000000             
    49  000000             init_io:
    50  000000             	;p1口初始化
    51  000000             	mov	a,#00h		;0输入,1输出
    52  000000             	mov	p1m,a
    53  000000             	mov	a,#0ffh		;设置IO口为输入,上拉
    54  000000             	mov	p1ur,a
    55  000000             	;p2口初始化
    56  000000              	b0mov	a,#0ffh
    57  000000             	mov	p2m,a	
    58  000000             	clr	p2		;关闭所有的LED
    59  000000             	
    60  000000             	mov	a,#0ffh
    61  000000             	mov	p0m,a
    62  000000             	mov	p3m
    63  000000             	mov	p4m
    64  000000             	mov	p5m
    65  000000             	clr	p0
    66  000000             	clr	p3
    67  000000             	clr	p4
    68  000000             	clr 	p5		;将P5口设为输出低
    69  000000             	ret
    70  000000             
    71  000000             init_t0:
    72  000000             	b0bclr	ft0ien		;清定时中断
    73  000000             	b0bclr	ft0enb
    74  000000             	mov	a,div64		;设置T0的分频数,64分频
    75  000000             	b0mov	t0m,a
    76  000000             	mov	a,#64h		;设置T0间隔时间的初始值10MS
    77  000000             	b0mov	t0c,a
    78  000000             	b0bset	ft0ien
    79  000000             	b0bset  ft0enb	
    80  000000             	b0bclr	ft0irq
    81  000000             	
    82  000000             premain:
    83  000000             	mov	a,#01h		;赋初值
    84  000000             	b0mov	keyinbuf,a
    85  000000             	b0mov	keychkbuf,a
    86  000000             	b0mov	keycvtbuf,a
    87  000000             	b0mov	keyoldbuf,a
    88  000000             	mov	a,#64h		;用来做流水灯延时10*100MS
    89  000000             	b0mov	delayvalue,a
    90  000000             	;b0mov	adddelaybuf,a
    91  000000             	;bomov	subdelaybuf,a
    92  000000             	;bomov	delayvalbuf,a
    93  000000             	ret

⌨️ 快捷键说明

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