led.asm

来自「这些是基于dp51仿真仪的程序」· 汇编 代码 · 共 47 行

ASM
47
字号
SDA	EQU	P1.0
CLK	EQU	P1.1

	ORG	4000H
	AJMP	MAIN
	ORG	4100H
MAIN:
	MOV	SP,#60H

LEDRESET:
	MOV	R2,#7FH
	MOV	R1,#08H
	CLR	P1.7
LEDUP:	ACALL	TXDBYTE
	ACALL	DELAY
	MOV	A,R2
	RR	A	
	MOV	R2,A
	DJNZ	R1,LEDUP
	AJMP	LEDRESET

;若发送的数据存放在R2中
TXDBYTE:
	   PUSH	   PSW
	   PUSH	   ACC
	   MOV	   A,R2	
	   MOV	   R3,#08H
TXDUP:	   RLC	   A
	   MOV	   SDA,C
	   CLR	   CLK
	   SETB	   CLK
	   DJNZ	   R3,TXDUP
	   POP	   ACC
           POP	   PSW
	   RET
g
;延时子程序
DELAY:     MOV     R7,      #0b0H     ;12M时钟下延时1MS	
DELAY0:    MOV     R6,      #0f0H
DELAY1:	   nop    
	   nop
	   nop	
	   DJNZ    R6,      DELAY1
           DJNZ    R7,      DELAY0
           RET
	   END

⌨️ 快捷键说明

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