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

📄 main.lst

📁 应用松翰母体开发的航模飞机的源代码!有舵机控制功能
💻 LST
字号:
     1  000000             ;***********************************************
     2  000000             start:
     3  000000             	nop
     4  000000             	call		PortInitial
     5  000000             	call		RAMInitial
     6  000000             	call		SysInitial
     7  000000             	call		pdelay100ms
     8  000000             	call		PortInitial
     9  000000             	call		RAMInitial
    10  000000             	call		SysInitial
    11  000000             		
    12  000000             ;***********************************************
    13  000000             
    14  000000             mainloop:
    15  000000             	mov	a,#5ah
    16  000000             	mov 	wdtr,a
    17  000000             ;	call	mnchkrx
    18  000000             	call	mnint
    19  000000             	call	mnkey
    20  000000             	call	mnapp
    21  000000             	jmp	mainloop
    22  000000             	
    23  000000             ;***********************************************
    24  000000             RAMInitial:
    25  000000             	clr	Y    				;Select bank 0
    26  000000             	mov	A,#0x2f
    27  000000             	b0mov	Z,A				;Set @YZ address from 7fh
    28  000000             
    29  000000             ClrRAM10:
    30  000000             	clr	@YZ				;Clear @YZ content
    31  000000             	decms	Z  				;z = z - 1 , skip next if z=0
    32  000000             	jmp	ClrRAM10
    33  000000             	clr 	@YZ				;Clear address 0x00
    34  000000             ;--------------------set some content----------------
    35  000000             ;设定各控制脚归零点
    36  000000             	mov	a,#33
    37  000000             	b0mov	wingbuf,a
    38  000000             	b0mov	wingloadbuf,a	
    39  000000             ;//	mov	a,#33		
    40  000000             	b0mov   empennagebuf,a	
    41  000000             	b0mov	empennageloadbuf,a
    42  000000             ;//	mov	a,#33	
    43  000000             	b0mov   screwbuf,a
    44  000000                     b0mov	screwloadbuf,a
    45  000000             ;//     b0mov	a,#20	
    46  000000                     b0mov   swingbuf,a
    47  000000             	b0mov   swingloadbuf,a	
    48  000000             	ret
    49  000000             ;***********************************************
    50  000000             PortInitial:
    51  000000             	clr	p0
    52  000000             	clr	p1
    53  000000             	clr	p5
    54  000000             
    55  000000             	mov	A,#00h  	;//don't Pull up p5,p1,p0 port
    56  000000             	b0mov	p0ur,a
    57  000000             	b0mov	P1UR,A
    58  000000             	mov	A,#0ffh 	
    59  000000             	b0mov	P5UR,A	
    60  000000             	
    61  000000             	mov	A,#0feh
    62  000000             	mov	p0m,a
    63  000000             	mov	A,#0ffh
    64  000000             	mov	P1M,A
    65  000000             	mov	A,#0ffh	
    66  000000             	mov	P5M,A
    67  000000             	
    68  000000             	nop
    69  000000             	nop
    70  000000             	nop
    71  000000             	clr	p0
    72  000000             	clr	p1
    73  000000             	clr	p5
    74  000000             	ret
    75  000000             ;***********************************************
    76  000000             ;**********************************************
    77  000000             ;Name	:SysInitial
    78  000000             ;Function:
    79  000000             ;Input  :
    80  000000             ;Output	:
    81  000000             ;Register Used:
    82  000000             ;***********************************************
    83  000000             SysInitial:
    84  000000             	clr	PFLAG			;pflag = x,x,x,x,x,c,dc,z
    85  000000             	mov  	A,#00h			;Clear watchdog timer and initial system mode
    86  000000             	b0mov	OSCM,A
    87  000000             
    88  000000             	mov	A,#00110000B
    89  000000             	b0mov	T0M,A			; Set the T0 rate=Fcpu/64
    90  000000             	mov	A,#0h
    91  000000             	b0mov	T0C,A
    92  000000             	bclr	FT0enb			; Enable TIMER0
    93  000000             	bset	ft0ien			; Enable T0 interrupt
    94  000000             	bclr	ft0irq			; CLEAR TIMER0 INTERRUPT FLAG
    95  000000             
    96  000000             	MOV	A,#01110100B
    97  000000             	B0MOV	TC0M,A			;Set the TC0 rate=Fcpu/2
    98  000000             	mov	A,#156;206;
    99  000000             
   100  000000             ;	MOV	A,#01100100B
   101  000000             ;	B0MOV	TC0M,A			; Set the TC0 rate=Fcpu/64
   102  000000             ;	mov	A,#206			;200us
   103  000000             	b0mov	TC0C,A			; Set the TC0 timer
   104  000000             	b0mov	tc0r,a
   105  000000             ;	bclr fpwm0out
   106  000000             	b0bset	FTC0ENB			; Enable TIMER0
   107  000000             	bset	FTC0IEN			; Enable TC0 interrupt
   108  000000             	bclr	ftc0irq			; CLEAR TIMER0 INTERRUPT FLAG
   109  000000             
   110  000000             			; Enable P00 interrup
   111  000000             	@P00_EDGE	2		;@P00_EDGE=1-->Rising Edge ,=2-->falling EDg,=3-->bi-direction;	
   112  000000             	b0bclr	FP00IRQ
   113  000000             	b0bset	FP00IEN	
   114  000000             
   115  000000             	b0bset	FGIE			;//enable Interrupt gain
   116  000000             	ret
   117  000000             
   118  000000             ;***********************************************	
   119  000000             Pdelay100ms:
   120  000000             	mov	a,#100
   121  000000             	mov	r2,a
   122  000000             Pdelay1ms:
   123  000000             	mov	a,#100	
   124  000000             	mov	r1,a
   125  000000             Pdelay10us:
   126  000000             	jmp	$+1
   127  000000             	jmp	$+1
   128  000000             	jmp	$+1
   129  000000             	decms	r1
   130  000000             	jmp	Pdelay10us
   131  000000             	decms	r2
   132  000000             	jmp	Pdelay1ms
   133  000000             Pdelay90:
   134  000000             	ret	
   135  000000             	
   136  000000             	

⌨️ 快捷键说明

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