AJMP START ORG 0030H ; START: LCALL FORMAT MOV A,#00H
MOV DPTR,#8000H MOVX @DPTR,A
LCALL DY1 ; 调用延时DY1,提供AD转换器的转换时间,
; 延时时间大致为256us MOVX A,@DPTR LCALL CONVER LCALL DISP8279
LCALL DELAY ; 调用延时DELAY,提供8279显示的延时时间,参数自己选择,
; 大致为512个机器周期,也就是500us。 AJMP START
FORMAT:
MOV 78H,#0H ; ; MOV 79H,#8H ; MOV 7AH,#0H ; MOV 7BH,#9H ; MOV 7CH,#12H ;- MOV 7DH,#12H ;- MOV 7EH,#0H ;0 MOV 7FH,#0H ;0 RET
CONVER: MOV R0,A ANL A,#0FH MOV 7FH,A MOV A,R0 SWAP A ANL A,#0FH MOV 7EH,A RET
; 将累加器字符分拆成两个十六进制数存入7FH和7EH DISP8279: C8279 EQU 0E001H ;)7fffH D8279 EQU 0E000H ;7FFEH MOV DPTR,#C8279 MOV A,#0H
MOVX @DPTR,A ; 写8279方式字 MOV A,#2aH
MOVX @DPTR,A ;写分频系数 MOV A,#0D0H
MOVX @DPTR,A ;清显示
MOV A,#90H
MOVX @DPTR,A ;设置从左边开始写入数据 DISP1: MOVX A,@DPTR
JB ACC.7,DISP1 ;读8279工作是否正常 MOV R0,#78H ;显示缓冲首址 MOV R1,#08H DISP2: MOV A,@R0
MOV DPTR,#TAB
MOVC A,@A+DPTR ;查字型 MOV DPTR,#D8279 cpl a
MOVX @DPTR,A ;送字型到8279显示 INC R0
DJNZ R1,DISP2
RET ;显示子程序,缓冲区为78H-7FH ;字型代码
TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H ;0,1,2,3,4,5,6,7 DB 80H,90H,88H,83H,0C6H,0A1H,86H,08EH ;8,9,A,B,C,D,E,F
DB 08CH,0C1H,0BFH,91H,H,0C7H,0FFH,07FH ; P(10),U(11),-(12),Y(13),H(14),L(15),关(16) ,.(17)
CLEAR8279:MOV DPTR,#C8279 ;清显示 子程序 MOV A,#0D0H MOVX @DPTR,A RET DY1: MOV R7,#001h DJNZ R7,$
RET DELAY: MOV R6,#001h DELY2:MOV R7,#001h DELY1:DJNZ R7,DELY1 DJNZ R6,DELY2 RET END
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- kqyc.cn 版权所有 赣ICP备2024042808号-2
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务