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

📄 4.lst

📁 数字钟
💻 LST
字号:

ASEM-51 V1.2                                         Copyright (c) 1996 by W.W. Heinz                                         PAGE 1





       MCS-51 Family Cross Assembler   A S E M - 5 1   V 1.2
       =====================================================



	Source File:	4.ASM
	Object File:	4.HEX
	List File:	4.LST



 Line  I  Addr  Code            Source

    1:		N      0030	DBUF 	EQU 	30H
    2:		N      0040	TEMP	EQU		40H
    3:		N      0000			ORG		00H
    4:	  0000	74 10				MOV 	A,#16
    5:	  0002	11 54		MAIN: 	ACALL 	DISP
    6:	  0004	11 08				ACALL	KEY1
    7:	  0006	01 02				AJMP	MAIN
    8:	  0008	75 90 F0	KEY1:   MOV		P1,#0F0H 	 	;读P1口前先写1
    9:	  000B	E5 90				MOV		A,P1			;读取键状态
   10:	  000D	B4 F0 02			CJNE	A,#0F0H,K11   	;判断是否有键按下
   11:	  0010	01 08		K10:	AJMP	KEY1
   12:	  0012	11 81		K11:	ACALL	DELAY
   13:	  0014	75 90 F0			MOV		P1,#0F0H
   14:	  0017	E5 90				MOV		A,P1
   15:	  0019	B5 F0 02			CJNE	A,0F0H,K12		;消除按键抖动
   16:	  001C	80 F2				SJMP	K10
   17:	  001E	F5 F0		K12:	MOV		B,A				;存列值
   18:	  0020	75 90 0F			MOV		P1,#0FH
   19:	  0023	E5 90				MOV		A,P1			;读行值
   20:	  0025	55 F0				ANL		A,B
   21:	  0027	F5 F0				MOV		B,A				;存键码
   22:	  0029	79 10				MOV		R1,#10H
   23:	  002B	7A 00				MOV		R2,#0
   24:	  002D	90 00 44			MOV		DPTR,#K1TAB		;键码表首地址
   25:	  0030	EA		K14:	MOV		A,R2
   26:	  0031	93				MOVC	A,@A+DPTR
   27:	  0032	B5 F0 0A			CJNE	A,B,K16			;比较,计算键值
   28:	  0035	75 90 0F			MOV		P1,#0FH
   29:	  0038	E5 90		K15:	MOV		A,P1
   30:	  003A	B4 0F FB			CJNE	A,#0FH,K15		;等待按键释放
   31:	  003D	EA				MOV		A,R2
   32:	  003E	22				RET
   33:	  003F	0A		K16:	INC		R2
   34:	  0040	D9 EE				DJNZ	R1,K14
   35:	  0042	01 10				AJMP	K10
   36:	  0044	81 41 21 11	K1TAB:	DB		81H,41H,21H,11H	;键码表
   37:	  0048	82 42 22 12			DB		82H,42H,22H,12H
   38:	  004C	84 44 24 14			DB		84H,44H,24H,14H
   39:	  0050	88 48 28 18			DB		88H,48H,28H,18H
   40:	  0054	F5 30		DISP:	MOV		DBUF,A			;键值存入缓存
   41:	  0056	78 30				MOV		R0,#DBUF
   42:	  0058	79 40				MOV		R1,#TEMP
   43:	  005A	90 00 6F	DP10: 	MOV		DPTR,#SEGTAB

ASEM-51 V1.2                                         Copyright (c) 1996 by W.W. Heinz                                         PAGE 2



 Line  I  Addr  Code            Source

   44:	  005D	E6				MOV		A,@R0
   45:	  005E	93				MOVC	A,@A+DPTR		;根据键值查表取段码
   46:	  005F	F7				MOV		@R1,A			;暂存段码
   47:	  0060	78 40				MOV		R0,#TEMP
   48:	  0062	7A 08		DP12:	MOV		R2,#8			;设置移位次数
   49:	  0064	E6				MOV		A,@R0
   50:	  0065	33		DP13: 	RLC		A				;段码移位输出
   51:	  0066	92 B0				MOV		P3.0,C
   52:	  0068	C2 B1				CLR 	P3.1
   53:	  006A	D2 B1				SETB	P3.1			;输出移位脉冲
   54:	  006C	DA F7				DJNZ	R2,DP13
   55:	  006E	22				RET
   56:	  006F	3F 06 5B 4F	SEGTAB: DB  	3FH,06H,5BH,4FH,66H,6DH
	  0073	66 6D
   57:	  0075	7D 07 7F 6F			DB  	7DH,07H,7FH,6FH,77H,7CH
	  0079	77 7C
   58:	  007B	58 5E 79 71			DB  	58H,5EH,79H,71H,00H,40H
	  007F	00 40
   59:	  0081	7C 01		DELAY:  MOV		R4,#01H
   60:	  0083	7D 88		AA1: 	MOV		R5,#088H
   61:	  0085	00		AA: 	NOP
   62:	  0086	DD FD				DJNZ	R5,AA
   63:	  0088	DC F9				DJNZ	R4,AA1
   64:	  008A	22				RET
   65:						END





                     register banks used:  ---

                     no errors




ASEM-51 V1.2                                         Copyright (c) 1996 by W.W. Heinz                                         PAGE 3





	       L I S T   O F   S Y M B O L S
	       =============================


SYMBOL				  TYPE     VALUE	LINE
------------------------------------------------------------
AA				  CODE	    0085	  61
AA1				  CODE	    0083	  60
AC				  BIT	      D6
ACC				  DATA	      E0
B				  DATA	      F0
CY				  BIT	      D7
DBUF				  NUMBER    0030	   1
DELAY				  CODE	    0081	  59
DISP				  CODE	    0054	  40
DP10				  CODE	    005A	  43
DP12				  CODE	    0062	  48
DP13				  CODE	    0065	  50
DPH				  DATA	      83
DPL				  DATA	      82
EA				  BIT	      AF
ES				  BIT	      AC
ET0				  BIT	      A9
ET1				  BIT	      AB
EX0				  BIT	      A8
EX1				  BIT	      AA
EXTI0				  CODE	    0003
EXTI1				  CODE	    0013
F0				  BIT	      D5
IE				  DATA	      A8
IE0				  BIT	      89
IE1				  BIT	      8B
INT0				  BIT	      B2
INT1				  BIT	      B3
IP				  DATA	      B8
IT0				  BIT	      88
IT1				  BIT	      8A
K10				  CODE	    0010	  11
K11				  CODE	    0012	  12
K12				  CODE	    001E	  17
K14				  CODE	    0030	  25
K15				  CODE	    0038	  29
K16				  CODE	    003F	  33
K1TAB				  CODE	    0044	  36
KEY1				  CODE	    0008	   8
MAIN				  CODE	    0002	   5
OV				  BIT	      D2
P				  BIT	      D0
P0				  DATA	      80
P1				  DATA	      90
P2				  DATA	      A0
P3				  DATA	      B0
PCON				  DATA	      87
PS				  BIT	      BC
PSW				  DATA	      D0
PT0				  BIT	      B9

ASEM-51 V1.2                                         Copyright (c) 1996 by W.W. Heinz                                         PAGE 4



SYMBOL				  TYPE     VALUE	LINE
------------------------------------------------------------
PT1				  BIT	      BB
PX0				  BIT	      B8
PX1				  BIT	      BA
RB8				  BIT	      9A
RD				  BIT	      B7
REN				  BIT	      9C
RESET				  CODE	    0000
RI				  BIT	      98
RS0				  BIT	      D3
RS1				  BIT	      D4
RXD				  BIT	      B0
SBUF				  DATA	      99
SCON				  DATA	      98
SEGTAB				  CODE	    006F	  56
SINT				  CODE	    0023
SM0				  BIT	      9F
SM1				  BIT	      9E
SM2				  BIT	      9D
SP				  DATA	      81
T0				  BIT	      B4
T1				  BIT	      B5
TB8				  BIT	      9B
TCON				  DATA	      88
TEMP				  NUMBER    0040	   2
TF0				  BIT	      8D
TF1				  BIT	      8F
TH0				  DATA	      8C
TH1				  DATA	      8D
TI				  BIT	      99
TIMER0				  CODE	    000B
TIMER1				  CODE	    001B
TL0				  DATA	      8A
TL1				  DATA	      8B
TMOD				  DATA	      89
TR0				  BIT	      8C
TR1				  BIT	      8E
TXD				  BIT	      B1
WR				  BIT	      B6

⌨️ 快捷键说明

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