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

📄 bus-rx.asm

📁 无线遥控玩具汽车源程序
💻 ASM
字号:
;遥控车接收程序.
;MCU:AT89C2051
;OSC:12M
;DATE:08.05.18
;接收相应功能:前进,后退,左转,右转.
;E-MAIL:chinameifen@21cn.com
;作者:徐增钟
;=================================================================
IN	EQU	P3.2		;RECEIVE
RXMA	BIT	05H
;=================================================================
	ORG	0000H
	AJMP	START
	ORG	0003H
	AJMP	INRX
	ORG	0030H
;================================================================
CLEAR_RAM:
	MOV	R1,#30H
	MOV	R3,#127
NEXT:	MOV	@R1,#00
	INC	R1
	DJNZ	R3,NEXT
	RET
;================================================================
START:
	MOV	SP,#50H
	MOV	P3,#0FFH	;
	MOV	P2,#0FFH	;
	MOV	P1,#00		;
	SETB	EA
	SETB	EX0
	CLR	RXMA

LOOP:   	
	CALL	NORX
	AJMP	LOOP
;====================================================================
INRX:	
	CLR	EX0
	MOV	R4,#4		;同步脉冲.
	MOV	TMOD,#01H
NX1:	MOV	TH0,#00		;计数初值为00.
	MOV	TL0,#00		;
	SETB	TR0
INC1:	JNB	IN,INC1		;低电平在此等
	CLR	TR0
	MOV	A,TH0		
	CJNE	A,#05H,EXIT	
HERE1:	JB	IN,HERE1	;等待0.5MS高电平结束.
	DJNZ	R4,NX1   
    
  	JNB	IN,$
	CLR	A
RD1: 	INC     A            	
RD2: 	JB     IN,RD2       
        MOV     R1,#05          
RD3: 	JB     IN,RD1       
        LCALL   DYMS5           
        DJNZ    R1,RD3       	
        DEC	A
	DEC	A
	DEC	A	
	DEC	A
	JZ	STOP		
	DEC	A
	DEC	A
	DEC	A	
	DEC	A
	DEC	A
	DEC	A
	JZ	K1	
	DEC	A	
	DEC	A
	DEC	A
	DEC	A
	DEC	A	
	DEC	A
	DEC	A
	DEC	A
	DEC	A	
	DEC	A
	DEC	A
	DEC	A
	DEC	A	
	DEC	A
	DEC	A
	DEC	A
	DEC	A	
	DEC	A
	JZ	FR		
	DEC	A
	DEC	A
	DEC	A	
	DEC	A
	DEC	A
	DEC	A
	JZ	FL		
	DEC	A	
	DEC	A
	DEC	A
	DEC	A
	DEC	A	
	DEC	A
	JZ	K2		
	DEC	A	
	DEC	A
	DEC	A
	DEC	A
	DEC	A	
	DEC	A
	JZ	BL		
	DEC	A
	DEC	A
	DEC	A	
	DEC	A
	DEC	A
	DEC	A
	JZ	BR		
	DEC	A	
	DEC	A
	DEC	A
	DEC	A
	DEC	A	
	DEC	A
	JZ	K3		
	DEC	A
	DEC	A
	DEC	A	
	DEC	A
	DEC	A
	DEC	A
	JZ	K4		
	NOP	
	NOP

EXIT:	SETB	EX0     
	RETI
	
STOP:	MOV	P1,#00
	AJMP	EXIT

K1:	
	MOV	P1,#00010000B	;F
	AJMP	EXIT
K2:
	MOV	P1,#00100000B	;B
	AJMP	EXIT
K3:	
	MOV	P1,#01000000B	;L
	AJMP	EXIT
K4:	
	MOV	P1,#10000000B	;R
	AJMP	EXIT

FR:	MOV	P1,#10010000B	;F+R
	AJMP	EXIT
FL:	
	MOV	P1,#01010000B	;F+L
	AJMP	EXIT
BR:	
	MOV	P1,#10100000B	;B+R
	AJMP	EXIT
BL:	
	MOV	P1,#01100000B	;B+L
	AJMP	EXIT
;==============================================================
NORX:
NET:			
	MOV	R1,#200  
RX:	JNB	IN,NET		
	CALL	DY1MS		
	DJNZ	R1,RX
	MOV	P1,#00		
NOSI:	
	RET
;==============================================================

DYMS5:
	MOV	R5,#135
	DJNZ	R5,$
	RET
;==============================================================
DY1MS:
	MOV	R6,#138
D2:
	DJNZ	R6,D2
	RET
;==============================================================
	END

⌨️ 快捷键说明

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