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

📄 jk8-2.asm

📁 微机原理课程 所有讲义PPT 课程全实验(包括代码程序设计实验报告) 习题及答案
💻 ASM
字号:
BASEADD	EQU	8000H
PA_8255	EQU	BASEADD+0
PB_8255	EQU	BASEADD+1
PC_8255	EQU	BASEADD+2
CN_8255	EQU	BASEADD+3
PO_273	EQU	BASEADD+4
PI_244	EQU	BASEADD+8
CW8255	EQU	88H
STROKE	EQU	00H
org	0000h
ljmp	ini_dat
org	0200h
INI_DAT:	MOV	DPTR,#CN_8255
	MOV	A,#CW8255
	MOVX	@DPTR,A
MONITOR:ACALL	TESTKEY
	JNB	STROKE,MONITOR
	MOV	B,A
	ACALL	DELAY
	ACALL	TESTKEY
	JNB	STROKE,MONITOR
	XRL	A,B
	JNZ	MONITOR
	ACALL	READKEY
	ORL	A,B
	MOV	B,A
	MOV	R7,#0
	MOV	DPTR,#KEY_TAB
SKEY:	MOV	A,R7
	MOVC	A,@A+DPTR
	XRL	A,B
	JZ	VALIDKEY
	INC	R7
	CJNE	R7,#8,SKEY
	SJMP	MONITOR
VALIDKEY:MOV	A,R7
BP:	RET
KEY_TAB:	DB	11H,12H,14H,18H,21H,22H,24H,28H
TESTKEY:	CLR	STROKE
	MOV	DPTR,#PC_8255
	MOV	A,#0F0H
	MOVX	@DPTR,A
	MOVX	A,@DPTR
	ANL	A,#30H
	XRL	A,#30H
	JZ	NOKEY
	SETB	STROKE
NOKEY:	RET
READKEY:PUSH	IE
	CLR	EA
	CLR	STROKE
	MOV	DPTR,#CN_8255
	MOV	A,#CW8255
	XRL	A,#09H
	MOVX	@DPTR,A
	MOV	DPTR,#PC_8255
	MOV	A,#0FH
	MOVX	@DPTR,A
	MOVX	A,@DPTR
	ANL	A,#0FH
	XRL	A,#0FH
	JZ	KEYOUT
	SETB	STROKE
KEYOUT:	PUSH	ACC
	MOV	DPTR,#CN_8255
	MOV	A,#CW8255
	MOVX	@DPTR,A
	POP	ACC
	POP	IE
	RET
DELAY:MOV	R3,#200
DIMS:	MOV	R2,#02H
DL:	MOV	R5,#0FFH
DL1:	DJNZ	R5,DL1
	DJNZ	R2,DL
	DJNZ	R3,DIMS
	RET	
	end

⌨️ 快捷键说明

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