;12887的数据格式 ;00 秒 ;02 分 ;04 时 ;07--09 日,月,年 main: mov r2,#78h mov r0,#08h m0: mov @r0,#0 inc r0 djnz r2,m0 ;给初值00000000 mov sp,#70h mov dptr,#6003h mov a,#81h movx @dptr,a ;设置8255 ;----------------------------------------------------------------- mov dptr,#0c00ah ;片选接138的Y6,开始地址C000H mov a,#20h movx @dptr,a ;打开晶振 inc dptr mov a,#82h movx @dptr,a ;B寄存器控制字 inc dptr clr a movx @dptr,a ;C寄存器用于中断,屏蔽 mov r2,#10 mov dptr,#0c000h m1: movx @dptr,a inc dptr djnz r2,m1 ;送初始时间为000000000000 mov dptr,#0c00bh mov a,#2 movx @dptr,a ;更新转换正常进行 loop: mov dptr,#0c00ah movx a,@dptr jnb acc.7,lop1 ajmp loop ;-------------------------------------------------------------- lop1: mov dptr,#0c009h ;------------------------ mov r0,#22h lop2: movx a,@dptr mov @r0,a dec dpl inc r0 cjne r0,#25h,lop2 ;取年,月,日-->22H--24H mov dptr,#0c004h ;--------------------- lop3: movx a,@dptr mov @r0,a dec dpl dec dpl inc r0 cjne r0,#28h,lop3 ;取时,分,秒-->25H--27H mov r0,#22h ;--------------------- mov r1,#54h lop4: mov a,@r0 swap a anl a,#0fh mov @r1,a inc r1 mov a,@r0 anl a,#0fh mov @r1,a inc r1 inc r0 cjne r1,#60h,lop4 ;拆成非压缩BCD码 acall dsp1 sjmp loop DSP1: MOV R0,#54h MOV DPTR,#6000H DSP0: MOV R3,#20H MOV R4,#6 DSP3: MOV A,@R0 MOVX @DPTR,A INC DPTR MOV A,R3 MOVX @DPTR,A CLR A MOVX @DPTR,A INC R0 DEC DPL MOV A,R3 RR A MOV R3,A DJNZ R4,DSP3 DSP4: MOV R3,#80H MOV R4,#4 P5: MOV A,@R0 MOVX @DPTR,A ORL A,R3 MOVX @DPTR,A XRL A,R3 MOVX @DPTR,A INC R0 MOV A,R3 RR A MOV R3,A DJNZ R4,P5 MOV A,@R0 MOVX @DPTR,A INC DPTR MOV A,#80H MOVX @DPTR,A CLR A MOVX @DPTR,A ;下降沿显示 DEC DPL INC R0 MOV A,@R0 MOVX @DPTR,A INC DPTR MOV A,#40H MOVX @DPTR,A CLR A MOVX @DPTR,A ;------------------------------------- ; 以下为增加显示 ;------------------------------------- MOV DPTR,#2026H MOVX A,@DPTR MOV R4,A ANL A,#0FH MOV DPTR,#6000H MOVX @DPTR,A INC DPTR INC DPTR MOV A,#10H MOVX @DPTR,A CLR A MOVX @DPTR,A ;------------------------------ MOV A,R4 ANL A,#0F0H SWAP A DEC DPL DEC DPL MOVX @DPTR,A MOV A,#20H INC DPL INC DPL MOVX @DPTR,A CLR A MOVX @DPTR,A ;------------------------------- MOV DPTR,#2027H MOVX A,@DPTR MOV R4,A ANL A,#0FH MOV DPTR,#6000H MOVX @DPTR,A INC DPL INC DPL MOV A,#40H MOVX @DPTR,A CLR A MOVX @DPTR,A ;------------------------------ MOV A,R4 ANL A,#0F0H JNZ P6 MOV A,#0F0H P6: SWAP A DEC DPL DEC DPL MOVX @DPTR,A MOV A,#080H INC DPL INC DPL MOVX @DPTR,A CLR A MOVX @DPTR,A RET T12M:MOV R7,#30H TM: MOV R6,#0FFH TM6:DJNZ R6,TM6 DJNZ R7,TM RET