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

📄 ex9-9.lst

📁 《单片机原理实用教程——基于Proteus虚拟仿真》一书的配套光盘
💻 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:	EX9-9.ASM
	Object File:	EX9-9.HEX
	List File:	EX9-9.LST



 Line  I  Addr  Code            Source

    1:		N      0000		ORG 0000H
    2:	  0000	02 00 30	START:	LJMP MAIN
    3:		N      0030		ORG 0030H
    4:	  0030	12 00 8B	MAIN:   LCALL INIT	    ;主程序开始,调用液晶模块初始化子程序
    5:	  0033	12 00 B6		LCALL WPAD          ;调用自定义汉字字符子程序
    6:	  0036	7A 81			MOV   R2,#81H       ;从第1行第2位开始,设置DDRAM地址
    7:	  0038	12 00 73		LCALL WRTC          ;写入
    8:	  003B	7C 0E			MOV   R4,#14        ;第1行共14个字符
    9:	  003D	90 00 4F		MOV   DPTR,#ZIFU    ;指向显示字符代码首地址
   10:	  0040	12 00 C0		LCALL WP1           ;第1行字符代码写入DDRAM
   11:	  0043	7A C4			MOV   R2,#0C4H      ;设置第2行DDRAM地址
   12:	  0045	12 00 73		LCALL WRTC          ;写入
   13:	  0048	7C 0C			MOV   R4,#12        ;第2行共12个字符
   14:	  004A	12 00 C0		LCALL WP1           ;第2行字符代码写入DDRAM
   15:	  004D	80 FE			SJMP  $
   16:	  004F	48 65 6C 6C	ZIFU:	DB   "Hello Everyboy" ;显示字符
	  0053	6F 20 45 76
	  0057	65 72 79 62
	  005B	6F 79
   17:	  005D	32 30 30 38		DB   "2008",00H,"10",01H,"26",02H,20H
	  0061	00 31 30 01
	  0065	32 36 02 20
   18:
   19:
   20:				;忙标志判断子程序
   21:	  0069	75 A0 7F	WAIT:	MOV  P2,#7FH
   22:	  006C	78 F1			MOV  R0,#0F1H      ;读忙标志地址
   23:	  006E	E2			MOVX A,@R0
   24:	  006F	20 E7 F7		JB   ACC.7,WAIT
   25:	  0072	22			RET
   26:
   27:				;写指令代码子程序
   28:	  0073	12 00 69	WRTC:	LCALL WAIT	    ;判断BF标志
   29:	  0076	EA			MOV   A,R2
   30:	  0077	78 F0			MOV   R0,#0F0H      ;写指令地址
   31:	  0079	F2			MOVX  @R0,A
   32:	  007A	22			RET
   33:
   34:				;写数据子程序
   35:	  007B	12 00 69	WRTD:	LCALL WAIT	    ;判断BF标志
   36:	  007E	EA			MOV   A,R2
   37:	  007F	78 F2			MOV   R0,#0F2H      ;写数据地址
   38:	  0081	EA			MOV   A,R2

ASEM-51 V1.2                                         Copyright (c) 1996 by W.W. Heinz                                         PAGE 2



 Line  I  Addr  Code            Source

   39:	  0082	F2			MOVX  @R0,A
   40:	  0083	22			RET
   41:
   42:				;读数据子程序
   43:	  0084	12 00 69	RDD:    LCALL WAIT	    ;判断BF标志
   44:	  0087	78 F3			MOV   R0,#0F3H	    ;读数据地址
   45:	  0089	E2			MOVX  A,@R0
   46:	  008A	22			RET
   47:
   48:				;初始化子程序
   49:	  008B	12 00 E2	INIT:	LCALL TIM1           ;延时15ms
   50:	  008E	7A 38			MOV   R2,#38H        ;功能设置命令,设定8位字长,2行,5*7点阵
   51:	  0090	12 00 73		LCALL WRTC           ;写入
   52:	  0093	12 00 F2		LCALL TIM3           ;延时100us
   53:	  0096	7A 38			MOV   R2,#38H
   54:	  0098	12 00 73		LCALL WRTC           ;写入
   55:	  009B	12 00 F2		LCALL TIM3           ;延时100us
   56:	  009E	7A 38			MOV   R2,#38H
   57:	  00A0	12 00 73		LCALL WRTC           ;写入
   58:	  00A3	12 00 F2		LCALL TIM3           ;延时100us
   59:	  00A6	7A 01			MOV   R2,#01H        ;清屏命令
   60:	  00A8	12 00 73		LCALL WRTC           ;写入
   61:	  00AB	7A 06			MOV   R2,#06H        ;输入方式命令
   62:	  00AD	12 00 73		LCALL WRTC           ;写入
   63:	  00B0	7A 0E			MOV   R2,#0EH        ;开显示、光标不闪命令
   64:	  00B2	12 00 73		LCALL WRTC           ;写入
   65:	  00B5	22			RET
   66:
   67:				;自定义汉字字符子程序
   68:	  00B6	7A 40		WPAD:	MOV   R2,#40H        ;设置CGRAM首地址为0
   69:	  00B8	12 00 73		LCALL WRTC           ;写入CGRAM首地址
   70:	  00BB	7C 18			MOV   R4,#24         ;3个汉字共24字节子模数据
   71:	  00BD	90 00 CA		MOV   DPTR,#ZIMO     ;指向字模首地址
   72:	  00C0	E4		WP1:    CLR   A
   73:	  00C1	93			MOVC  A,@A+DPTR
   74:	  00C2	FA			MOV   R2,A
   75:	  00C3	12 00 7B		LCALL WRTD           ;写入1字节字模数据
   76:	  00C6	A3			INC   DPTR
   77:	  00C7	DC F7			DJNZ  R4,WP1
   78:	  00C9	22			RET
   79:	  00CA	08 0F 12 0F	ZIMO:	DB  08H,0FH,12H,0FH,0AH,1FH,02H,00H;“年”
	  00CE	0A 1F 02 00
   80:	  00D2	0F 09 0F 09		DB  0FH,09H,0FH,09H,0FH,09H,11H,00H;“月”
	  00D6	0F 09 11 00
   81:	  00DA	0F 09 09 0F		DB  0FH,09H,09H,0FH,09H,09H,0FH,00H;“日”
	  00DE	09 09 0F 00
   82:
   83:				;延时15ms子程序
   84:	  00E2	7D 03		TIM1:	MOV   R5,#03H
   85:	  00E4	12 00 EA	TT1:	LCALL TIM2
   86:	  00E7	DD FB			DJNZ  R5,TT1
   87:	  00E9	22			RET
   88:				;延时5ms子程序
   89:	  00EA	7C 32		TIM2:	MOV   R4,#50
   90:	  00EC	12 00 F2	TT2:	LCALL TIM3
   91:	  00EF	DC FB			DJNZ  R4,TT2

ASEM-51 V1.2                                         Copyright (c) 1996 by W.W. Heinz                                         PAGE 3



 Line  I  Addr  Code            Source

   92:	  00F1	22			RET
   93:				;延时100us子程序
   94:	  00F2	7B 32		TIM3:	MOV   R3,#50
   95:	  00F4	DB FE		TT3:	DJNZ  R3,TT3
   96:	  00F6	22			RET
   97:
   98:					END
   99:





                     register banks used:  ---

                     no errors



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





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


SYMBOL				  TYPE     VALUE	LINE
------------------------------------------------------------
AC				  BIT	      D6
ACC				  DATA	      E0
B				  DATA	      F0
CY				  BIT	      D7
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
INIT				  CODE	    008B	  49
INT0				  BIT	      B2
INT1				  BIT	      B3
IP				  DATA	      B8
IT0				  BIT	      88
IT1				  BIT	      8A
MAIN				  CODE	    0030	   4
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
PT1				  BIT	      BB
PX0				  BIT	      B8
PX1				  BIT	      BA
RB8				  BIT	      9A
RD				  BIT	      B7
RDD				  CODE	    0084	  43
REN				  BIT	      9C
RESET				  CODE	    0000
RI				  BIT	      98
RS0				  BIT	      D3
RS1				  BIT	      D4
RXD				  BIT	      B0
SBUF				  DATA	      99
SCON				  DATA	      98
SINT				  CODE	    0023

ASEM-51 V1.2                                         Copyright (c) 1996 by W.W. Heinz                                         PAGE 5



SYMBOL				  TYPE     VALUE	LINE
------------------------------------------------------------
SM0				  BIT	      9F
SM1				  BIT	      9E
SM2				  BIT	      9D
SP				  DATA	      81
START				  CODE	    0000	   2
T0				  BIT	      B4
T1				  BIT	      B5
TB8				  BIT	      9B
TCON				  DATA	      88
TF0				  BIT	      8D
TF1				  BIT	      8F
TH0				  DATA	      8C
TH1				  DATA	      8D
TI				  BIT	      99
TIM1				  CODE	    00E2	  84
TIM2				  CODE	    00EA	  89
TIM3				  CODE	    00F2	  94
TIMER0				  CODE	    000B
TIMER1				  CODE	    001B
TL0				  DATA	      8A
TL1				  DATA	      8B
TMOD				  DATA	      89
TR0				  BIT	      8C
TR1				  BIT	      8E
TT1				  CODE	    00E4	  85
TT2				  CODE	    00EC	  90
TT3				  CODE	    00F4	  95
TXD				  BIT	      B1
WAIT				  CODE	    0069	  21
WP1				  CODE	    00C0	  72
WPAD				  CODE	    00B6	  68
WR				  BIT	      B6
WRTC				  CODE	    0073	  28
WRTD				  CODE	    007B	  35
ZIFU				  CODE	    004F	  16
ZIMO				  CODE	    00CA	  79

⌨️ 快捷键说明

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