📄 do_with_lcd_dis.asm
字号:
MOV @R0,#10
MOV R0,#LCD_2
MOV @R0,#10 ;消隐
MOV R0,#LCD_3
MOV @R0,#10 ;消隐
CALL RD_HMS
CALL BYTE3_TO_LCD_DIS
SETB TIME_BIT
DATE_TIME_SAME:
SETB COL1_BIT
SETB COL2_BIT
;显示当前费率时段
FL_NUM_END: MOV A,FL_NUM_JS
CJNE A,#2,FL_NUM_T3
SETB FDL_BIT
FL_NUM_T3: CJNE A,#3,FL_NUM_T4
SETB PDL_BIT
FL_NUM_T4: CJNE A,#4,FL_NUM_T
SETB GDL_BIT
FL_NUM_T: RET
;***************************************************
;2004.6.26 LCD显示通讯地址低3字节时间 当前费率号
;***************************************************
LCD_DIS_ADR012: MOV R0,#LCD_1
MOV @R0,#10
CALL RD_SNO
MOV R0,#LCD_2
MOV @R0,#10
MOV R0,#LCD_3
MOV @R0,#10 ;消隐
CALL BYTE3_TO_LCD_DIS
SETB BH_BIT
JMP FL_NUM_END
;;***************************************************
;2004.6.26 LCD显示标准转数 3字节 当前费率号度
;***************************************************
LCD_DIS_REV: MOV R0,#LCD_1
MOV @R0,#10
CALL RD_REV_BCD
CALL LCD2_5_0 ;压缩程序05-12-06 LIHENG
CALL BYTE2_TO_LCD_DIS
SETB REV_BIT
JMP FL_NUM_END
;***************************************************
;2005.11.17 LCD显示当上月有功总 4字节
;***************************************************
;LCD_DIS_SY_ZDL: MOV R0,#LCD_1
; MOV @R0,#10
; MOV FL_NUM_BAK,#2 ;
; CALL RD_JL_LAST_ZDL
; CALL CAL_TO_RD
; SETB ZDL_BIT
;SY_ZFPG_SAME:
; CALL BYTE4_TO_LCD_DIS
; SETB KW_BIT
; SETB H_BIT
; SETB DP_BIT
; SETB DL_BIT
; SETB SYDL_BIT
; RET
;***************************************************
;2005.11.18 LCD显示上月有功峰 4字节
;***************************************************
;LCD_DIS_SY_FDL: MOV R0,#LCD_1
; MOV @R0,#10
; MOV FL_NUM_BAK,#2
; CALL RD_JL_LAST_FL_INT
; CALL CAL_TO_RD
; SETB FDL_BIT
; JMP SY_ZFPG_SAME
;***************************************************
;2005.11.17 LCD显示上月有功平 4字节
;***************************************************
;LCD_DIS_SY_PDL: MOV R0,#LCD_1
; MOV @R0,#10
; MOV FL_NUM_BAK,#3
; CALL RD_JL_LAST_FL_INT
; CALL CAL_TO_RD
; SETB PDL_BIT
; JMP SY_ZFPG_SAME
;***************************************************
;2005.11.17 LCD显示上月有功谷 4字节
;***************************************************
;LCD_DIS_SY_GDL: MOV R0,#LCD_1
; MOV @R0,#10
; MOV FL_NUM_BAK,#4
; CALL RD_JL_LAST_FL_INT
; CALL CAL_TO_RD
; SETB GDL_BIT
; JMP SY_ZFPG_SAME
;***************************************************
;2004.6.26 LCD显示当前有功总 4字节
;***************************************************
LCD_DIS_NOW_PZ: MOV R0,#LCD_1
MOV @R0,#10
MOV FL_NUM_BAK,#2 ;
; CALL RD_JL_NOW_ZDL
CALL RD_NOW_ZDL
CALL CAL_TO_RD
SETB ZDL_BIT
NOW_ZFPG_SAME:
CALL BYTE4_TO_LCD_DIS
SETB KW_BIT
SETB H_BIT
SETB DP_BIT
SETB DL_BIT
SETB NOW_BIT
RET
;***************************************************
;2004.6.26 LCD显示当前有功峰 4字节
;***************************************************
LCD_DIS_NOW_PF: MOV R0,#LCD_1
MOV @R0,#10
MOV FL_NUM_BAK,#2
; CALL RD_JL_NOW_FL_DL
CALL RD_NOW_FL_DL
; CALL CAL_TO_RD
SETB FDL_BIT
JMP NOW_ZFPG_SAME
;***************************************************
;2004.6.26 LCD显示当前有功平 4字节
;***************************************************
LCD_DIS_NOW_PP: MOV R0,#LCD_1
MOV @R0,#10
MOV FL_NUM_BAK,#3
; CALL RD_JL_NOW_FL_DL
; CALL CAL_TO_RD
CALL RD_NOW_FL_DL
SETB PDL_BIT
JMP NOW_ZFPG_SAME
;***************************************************
;2004.6.26 LCD显示当前有功谷 4字节
;***************************************************
LCD_DIS_NOW_PG: MOV R0,#LCD_1
MOV @R0,#10
MOV FL_NUM_BAK,#4
; CALL RD_JL_NOW_FL_DL
; CALL CAL_TO_RD
CALL RD_NOW_FL_DL
SETB GDL_BIT
JMP NOW_ZFPG_SAME
;***************************************************
;2004.6.26 LCD显示当前有功反向总 4字节
;***************************************************
;LCD_DIS_NOW_FZ: MOV R0,#LCD_1
; MOV @R0,#10
; MOV FL_NUM_BAK,#6 ;
; CALL RD_NOW_ZDL
; CALL CAL_TO_RD
; SETB ZDL_BIT
; SETB REVP_BIT
; JMP NOW_ZFPG_SAME
;***************************************************
;2004.6.26 LCD显示当前有功反向峰 4字节
;***************************************************
;LCD_DIS_NOW_FF: MOV R0,#LCD_1
; MOV @R0,#10
; MOV FL_NUM,#6
; CALL RD_NOW_FL_DL
; SETB FDL_BIT
; SETB REVP_BIT
; JMP NOW_ZFPG_SAME
;***************************************************
;2004.6.26 LCD显示当前有功反向平 4字节
;***************************************************
;LCD_DIS_NOW_FP: MOV R0,#LCD_1
; MOV @R0,#10
; MOV FL_NUM,#7
; CALL RD_NOW_FL_DL
; SETB PDL_BIT
; SETB REVP_BIT
; JMP NOW_ZFPG_SAME
;***************************************************
;2004.6.26 LCD显示当前有功反向谷 4字节
;***************************************************
;LCD_DIS_NOW_FG: MOV R0,#LCD_1
; MOV @R0,#10
; MOV FL_NUM,#8
; CALL RD_NOW_FL_DL
; SETB GDL_BIT
; SETB REVP_BIT
; JMP NOW_ZFPG_SAME
;***************************************************
;2005.5.19 LCD显示当前正向无功电量
;***************************************************
;LCD_DIS_NOW_WZ:
; CALL RD_JL_NOW_W
; CALL CAL_TO_RD
; SETB NOW_BIT
;LCD_DIS_WG:
; MOV R0,#LCD_1
; MOV @R0,#10
; SETB WG_BIT
; CALL BYTE4_TO_LCD_DIS
; SETB DP_BIT
; SETB DL_BIT
; RET
;***************************************************
;2005.5.19 LCD显示上月正向无功电量
;***************************************************
;LCD_DIS_SY_WGDL:CALL RD_JL_LAST_W
; CALL CAL_TO_RD
; SETB SYDL_BIT
; JMP LCD_DIS_WG
;***************************************************
;2005.5.19 LCD显示VA 电压
;***************************************************
LCD_DIS_VA: MOV R0,#LCD_1;8.16压缩修改
MOV @R0,#V
CALL LCD2_5_0 ;压缩程序05-12-06 LIHENG
MOV DPH,#2
MOV DPL,#UA_L
CALL RD_VI
CALL BYTE2_TO_LCD_DIS
;SETB DP_BIT
RET
;***************************************************
;2005.5.19 LCD显示IA 电流
;***************************************************
LCD_DIS_IA: MOV R0,#LCD_1;8.16压缩修改
MOV @R0,#1
CALL LCD2_5_0 ;压缩程序05-12-06 LIHENG
MOV DPH,#2
MOV DPL,#IA_L
CALL RD_VI
CALL BYTE2_TO_LCD_DIS
SETB DP_BIT
RET
;***************************************************
;2005.5.19 LCD显示当前需量
;***************************************************
;LCD_DIS_NOW_XL: MOV R0,#LCD_1
; MOV @R0,#10
; CALL LCD2_5_0 ;压缩程序05-12-06 LIHENG
; CALL RD_NOW_Y_XL
;LCD_XL1:
; MOV RD_BUF0,RD_BUF1
; MOV RD_BUF1,RD_BUF2
; CALL BYTE2_TO_LCD_DIS
; SETB DP_BIT
; SETB XL_BIT
; SETB KW_BIT
; RET
;***************************************************
;2005.5.19 LCD显示当前一分钟功率
;***************************************************
;LCD_DIS_NOW_GL: MOV R0,#LCD_1
; MOV @R0,#10
; CALL LCD2_5_0 ;压缩程序05-12-06 LIHENG
; MOV DPH,#1
; MOV DPL,#NOW_GL_L
; CALL DPTR_TO_RD4
; MOV A,RD_BUF0
; ADD A,RD_BUF1
; ADD A,RD_BUF2
; ADD A,#'X'
; CJNE A,RD_BUF3,LCD_GL
; JMP LCD_GL1
;LCD_GL: MOV RD_BUF0,#0
; MOV RD_BUF1,#0
; MOV RD_BUF2,#0
;LCD_GL1:
; MOV RD_BUF0,RD_BUF1
; MOV RD_BUF1,RD_BUF2
; CALL BYTE2_TO_LCD_DIS
; SETB DP_BIT
; SETB KW_BIT
; RET
;************************************************************
; 显示版本号
;************************************************************
DISP_V:
MOV R0,#LCD_1
MOV @R0,#10
MOV R0,#LCD_2
MOV @R0,#MC_H
MOV R0,#LCD_3
MOV @R0,#MC_M
MOV R0,#LCD_4
MOV @R0,#MC_L
MOV R0,#LCD_5
MOV @R0,#10
MOV R0,#LCD_6
MOV @R0,#V
MOV R0,#LCD_7
MOV @R0,#V_H
MOV R0,#LCD_8
MOV @R0,#V_M
MOV R0,#LCD_9
MOV @R0,#V_L
SETB DP_BIT
RET
;;****************************************
;2004.6.12 将显示数据进行分离以显示
;入口参数:RD_BUF0、1、2、3,BUF0为低字节
;出口参数:LCD_2...LCD_9,为6.2数据宽
;****************************************
BYTE4_TO_LCD_DIS:
MOV A,RD_BUF3
ANL A,#0F0H
SWAP A
MOV R0,#LCD_2
MOV @R0,A
MOV R0,#LCD_3
ANL RD_BUF3,#0FH
MOV @R0,RD_BUF3
BYTE3_TO_LCD_DIS:
MOV A,RD_BUF2
ANL A,#0F0H
SWAP A
MOV R0,#LCD_4
MOV @R0,A
MOV R0,#LCD_5
ANL RD_BUF2,#0FH
MOV @R0,RD_BUF2
BYTE2_TO_LCD_DIS:
MOV A,RD_BUF1
ANL A,#0F0H
SWAP A
MOV R0,#LCD_6
MOV @R0,A
MOV R0,#LCD_7
ANL RD_BUF1,#0FH
MOV @R0,RD_BUF1
BYTE1_TO_LCD_DIS:
MOV A,RD_BUF0
ANL A,#0F0H
SWAP A
MOV R0,#LCD_8
MOV @R0,A
MOV R0,#LCD_9
ANL RD_BUF0,#0FH
MOV @R0,RD_BUF0
RET
;*************************************************
LOOP_R1_TO_R0: ;2005.5.20移动到此
MOV A,@R1
MOV @R0,A
INC R0
INC R1
DJNZ R7,LOOP_R1_TO_R0
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;05.9.8 LIHENG
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
LCD_CLR: CLR H18_BIT
MOV LCD_8BIT,#0
MOV A,LCD_B10
ANL A,#00010000B ;QDL
MOV LCD_B10,A
MOV A,LCD_B11
ANL A,#10000001B ;FF OFF GJ
MOV LCD_B11,A
MOV A,LCD_B12
ANL A,#00001100B ; GZ PROG
MOV LCD_B12,A
RET
;************************************************
;压缩程序 05-12-06 LIHENG
;************************************************
LCD2_5_0: MOV R0,#LCD_2
MOV @R0,#10
MOV R0,#LCD_3
MOV @R0,#10
MOV R0,#LCD_4
MOV @R0,#10
MOV R0,#LCD_5
MOV @R0,#10
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -