sp; LCALL wdatsz
MOV com,33H ;设置起始为第1行
LCALL Wcom
MOV com,34H ;设置第1行0页
LCALL Wcom
MOV com,35H ;设置第1行0列
LCALL Wcom
MOV R1,#64 ;写入日
LCALL wdatnyr
m0: lcall xszsfm
lcall xsznyr
lcall xszxq
lcall zh
lcall dz
SJMP m0
;***************************************************显示星期子程序<占用区0>
xszxq: push dph ;保护现场
push dpl
push acc
push psw
clr psw.3 ;进入第0组工作寄存器
clr psw.4
CLR CS2
SETB CS1
MOV 33H,#0C0H ;设行单元初值
MOV 34H,#0BAH ;设页单元初值
MOV 35H,#58H ;设列单元初值
MOV com,33H ;设置起始为第1行
LCALL Wcom
MOV com,34H ;设置第1行0页
LCALL Wcom
MOV com,35H ;设置第1行0列
LCALL Wcom
MOV A,25H
CJNE A,#1,LOOP16
MOV R1,#0
LCALL Wxqsz
LJMP xxxx
LOOP16: CJNE A,#2,LOOP17
MOV R1,#24
LCALL Wxqsz
LJMP xxxx
LOOP17: CJNE A,#3,LOOP18
MOV R1,#48
LCALL Wxqsz
LJMP xxxx
LOOP18: CJNE A,#4,LOOP19
MOV R1,#72
LCALL Wxqsz
LJMP xxxx
LOOP19: CJNE A,#5,LOOP20
MOV R1,#96
LCALL Wxqsz
LJMP xxxx
LOOP20: CJNE A,#6,LOOP21
MOV R1,#120
LCALL Wxqsz
LJMP xxxx
LOOP21: MOV R1,#144
LCALL Wxqsz
xxxx: pop psw ;回复现场
pop acc
pop dph
pop dpl
RET
;***************************************************显示月日子程序<占用区0>
xsznyr: push dph ;保护现场
push dpl
push acc
push psw
clr psw.3 ;进入第0组工作寄存器
clr psw.4
CLR CS1
SETB CS2
MOV 33H,#0C0H ;设行单元初值
MOV 34H,#0B8H ;设页单元初值
MOV 35H,#78H ;设列单元初值
MOV com,33H ;设置起始为第1行
LCALL Wcom
MOV com,34H ;设置第1行0页
LCALL Wcom
MOV com,35H ;设置第1行0列
LCALL Wcom
MOV A,27H
ANL A,#0F0h
CJNE A,#0,LOOP10
MOV R1,#0A0H
LCALL WDATSZ
SJMP LOOP11 ;月十位为0时消隐
LOOP10: MOV R1,A ;否则月十位输出数字
LCALL WDATSZ
LOOP11: CLR CS2
SETB CS1
MOV 33H,#0C0H ;设行单元初值
MOV 34H,#0B8H ;设页单元初值
MOV 35H,#40H ;设列单元初值
MOV com,33H ;设置起始为第1行
LCALL Wcom
MOV com,34H ;设置第1行0页
LCALL Wcom
MOV com,35H ;设置第1行0列
LCALL Wcom
MOV A,27H
ANL A,#0Fh
SWAP A
MOV R1,A ;写月个位
LCALL WDATSZ
MOV 33H,#0C0H ;设行单元初值
MOV 34H,#0B8H ;设页单元初值
MOV 35H,#58H ;设列单元初值
MOV com,33H ;设置起始为第1行
LCALL Wcom
MOV com,34H ;设置第1行0页
LCALL Wcom
MOV com,35H ;设置第1行0列
LCALL Wcom
MOV A,26H
ANL A,#0F0h
CJNE A,#0,LOOP12
MOV R1,#0A0H
LCALL WDATSZ
SJMP LOOP13 ;日十位为0时消隐
LOOP12: MOV R1,A ;否则日十位输出数字
LCALL WDATSZ
LOOP13: MOV com,33H ;设置起始为第1行
LCALL Wcom
MOV com,34H ;设置第1行0页
LCALL Wcom
MOV com,35H ;设置第1行0列
LCALL Wcom
MOV A,26H
ANL A,#0Fh
SWAP A
MOV R1,A ;写日个位
LCALL WDATSZ
pop psw ;回复现场
pop acc
pop dph
pop dpl
RET
;***************************************************显示时分秒子程序<占用区0>
xszsfm: push dph ;保护现场
push dpl
push acc
push psw
clr psw.3 ;进入第0组工作寄存器
clr psw.4
CLR CS1
SETB CS2
MOV 33H,#0C0H ;设行单元初值
MOV 34H,#0BCH ;设页单元初值
MOV 35H,#60H ;设列单元初值
MOV com,33H ;设置起始为第1行
LCALL Wcom
MOV com,34H ;设置第1行0页
LCALL Wcom
MOV com,35H ;设置第1行0列
LCALL Wcom
MOV A,2fh ;写入时十位
swap A
MOV R1,A
LCALL WDATSZ
MOV com,33H ;重新设行单元
LCALL Wcom
MOV com,34H ;重新设页单元
LCALL Wcom
MOV com,35H &