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

📄 h516s1.asm

📁 上课老师给的8086仿真器
💻 ASM
字号:
;系统晶振是 6.0 MHz

	ORG	0D00H
START:
	MOV	SP,#60H
        mov     A,#01H
        MOV     R0,#79H
        MOV     @R0,A
        INC     R0
        MOV     A,#10H
        MOV     @R0,A
        INC     R0
        MOV     A,#01H
        MOV     @R0,A
        INC     R0
        MOV     A,#03H
        MOV     @R0,A
        INC     R0
        MOV     A,#00H
        MOV     @R0,A
        INC     R0
        MOV     A,#08H
        MOV     @R0,A
  	MOV	A,#7EH
	MOV	DPTR,#1FFFH
	MOVX	@DPTR,A
	MOV	SCON,#50H	;串口 方式 1
	MOV	TMOD,#20H	;T1 方式 1
	MOV	TL1,#0CCH	;波特率 9600 的常数
	MOV	TH1,#0CCH
	SETB	TR1		;开中断
	CLR	ET1
        CLR     ES
REDIKEY:LCALL	KEYDISP 	;读键盘
	CJNE    A,#10H,SS0
SS0:    JNC     REDIKEY
        MOV	SBUF,A		;串口输出键盘输入的值
	NOP
SS:	JBC	TI,REDIKEY 	;是否发送完毕
	SJMP	SS

KEYDISP:LCALL DISP
	LCALL KEYSM
	MOV R4,A	      ;KEYDATA
	MOV R1,#76H	      ;DATASAME TIME
	MOV A,@R1
	MOV R2,A
	INC R1
	MOV A,@R1
	MOV R3,A	      ;LAST KEYDATA
	XRL A,R4
			      ;TWO TIME KEYDATA
	MOV R3,04H	      ;NEW KEYDATA---R3
	MOV R4,02H	      ;TIME---R4
	JZ KEYDISP1
	MOV R2,#88H
	MOV R4,#88H
KEYDISP1:DEC R4
	MOV A,R4
	XRL A,#82H
	JZ KEYDISP2
	MOV A,R4	      ;R4=TIME
	XRL A,#0EH
	JZ KEYDISP2
	MOV A,R4
	ORL A,R4
	JZ KEYDISP3
	MOV R4,#20H	      ;R4=20H
	DEC R2
	LJMP KEYDISP5
KEYDISP3:MOV R4,#0FH
KEYDISP2:MOV R2,04H
	MOV R4,03H
KEYDISP5:MOV R1,#76H
	MOV A,R2
	MOV @R1,A
	INC R1
	MOV A,R3
	MOV @R1,A
	MOV A,R4	      ;****
	CJNE R3,#10H,KEYDISP4
KEYDISP4:RET

DISP:	SETB 0D4H
	MOV R1,#7EH
	MOV R2,#20H
	MOV R3,#00H

DISP1:
	MOV DPTR,#DATACO
	MOV A,@R1
	MOVC A,@A+DPTR
	MOV DPTR,#0FF22H
	MOVX @DPTR,A
        MOV DPTR,#0FF21H
	MOV A,R2
	MOVX @DPTR,A
        LCALL DELAY
	DEC R1
	CLR C
	MOV A,R2
	RRC A
	MOV R2,A
	JNZ DISP1
        CLR 0D4H
        RET
DELAY:  MOV R6,#02H
DELAY0: MOV R7,#0FFH
DELAY1: DJNZ R7,DELAY1
        DJNZ R6,DELAY0
 	RET
DATACO: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
	DB 88H,83H,0C6H,0A1H,86H,8EH,0BFH,0CH,89H,0DEH

KEYSM:
	SETB 0D4H
	MOV A,#0FFH
	MOV DPTR,#0FF22H
	MOVX @DPTR,A		  ;OFF DISP
KEYSM0: MOV R2,#0FEH
	MOV R3,#08H
	MOV R0,#00H
KEYSM1: MOV A,R2
	MOV DPTR,#0FF21H
	MOVX @DPTR,A
	NOP
	RL A
	MOV R2,A
	MOV DPTR,#0FF23H
	MOVX A,@DPTR
	CPL A
	NOP
	NOP
	NOP
	ANL A,#0FH
	JNZ KEYSM2
	INC R0			;NOKEY
	DJNZ R3,KEYSM1
	SJMP KEYSM10

KEYSM2: 			;YKEY
	CPL A
	JB 0E0H,KEYSM3
	MOV A,#00H
	SJMP KEYSM7
KEYSM3: JB 0E1H,KEYSM4
	MOV A,#08H
	SJMP KEYSM7
KEYSM4: JB 0E2H,KEYSM5
	MOV A,#10H
	SJMP KEYSM7
KEYSM5: JB 0E3H,KEYSM10
	MOV A,#18H
KEYSM7: ADD A,R0
	CLR 0D4H
	CJNE A,#10H,KEYSM9
KEYSM9: JNC KEYSM10
	MOV DPTR,#KEYDATA
	MOVC A,@A+DPTR
KEYSM10:RET
KEYDATA:DB 07H,04H,08H,05H,09H,06H,0AH,0BH
	DB 01H,00H,02H,0FH,03H,0EH,0CH,0DH
	END

⌨️ 快捷键说明

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