📄 ask_zb_data.asm
字号:
MOV R0,#ZB_BUF14 ;发送数据填在ZB_BUF14、15、16、17
MOV R1,#RD_BUF0
MOV R7,#4
CALL LOOP_R1_TO_R0
INC FL_NUM
;MOV FL_NUM,#4 ;2004.6.12,第3费率表底
CALL RD_ZR_FL_INT
MOV R0,#ZB_BUF18 ;发送数据填在ZB_BUF18、19、20、21
MOV R1,#RD_BUF0
MOV R7,#4
CALL LOOP_R1_TO_R0
RET
;**************************************************************
;ZB读FL X电量,进行BCD CHANG 校验 MOV TO ZB_BUF6--9
;**************************************************************
ZFS_ZR_DL234:
MOV FL_NUM,A ;2004.6.12
CALL RD_ZR_FL_INT
; MOV R0,#ZB_BUF6 ;发送数据填在ZB_BUF6、7、8、9
; MOV R1,#RD_BUF0
; MOV R7,#4
; CALL LOOP_R1_TO_R0
; RET
JMP ZFS_DATA_RD4
;**************************************************************
;ZB读总电量,进行BCD CHANG 校验 MOV TO ZB_BUF6--9
;**************************************************************
ZFS_ZR_ZDL: ;MOV FL_NUM_BAK,#2
CALL RD_ZR_ZDL
; MOV R0,#ZB_BUF6
; MOV R1,#CAL_BUF0
; MOV R7,#4
; CALL LOOP_R1_TO_R0
; RET
JMP ZFS_DATA_CAL4
;***********************************************
;ZB读所有电量
;***********************************************
ZFS_JL_ZR_DL_ALL:
MOV FL_NUM,FL_NUM_BAK
CALL ZFS_JL_ZR_ZDL
MOV FL_NUM,FL_NUM_BAK
CALL RD_JL_ZR_FL_INT
MOV R0,#ZB_BUF10 ;发送数据填在ZB_BUF10、11、12、13
MOV R1,#CAL_BUF0
MOV R7,#4
CALL LOOP_R1_TO_R0
INC FL_NUM_BAK
CALL RD_JL_ZR_FL_INT
MOV R0,#ZB_BUF14 ;发送数据填在ZB_BUF14、15、16、17
MOV R1,#CAL_BUF0
MOV R7,#4
CALL LOOP_R1_TO_R0
INC FL_NUM_BAK
CALL RD_JL_ZR_FL_INT
MOV R0,#ZB_BUF18 ;发送数据填在ZB_BUF18、19、20、21
MOV R1,#CAL_BUF0
MOV R7,#4
CALL LOOP_R1_TO_R0
RET
;**************************************************************
;ZB读FL X电量,进行BCD CHANG 校验 MOV TO ZB_BUF6--9
;**************************************************************
ZFS_JL_ZR_DL234:
MOV FL_NUM_BAK,A ;2004.6.12
LCALL RD_JL_ZR_FL_INT
; MOV R0,#ZB_BUF6 ;发送数据填在ZB_BUF6、7、8、9
; MOV R1,#CAL_BUF0
; MOV R7,#4
; CALL LOOP_R1_TO_R0
; RET
JMP ZFS_DATA_CAL4
;**************************************************************
;ZB读总电量,进行BCD CHANG 校验 MOV TO ZB_BUF6--9
;**************************************************************
ZFS_JL_ZR_ZDL: ;MOV FL_NUM_BAK,#2
CALL RD_JL_ZR_ZDL
; MOV R0,#ZB_BUF6
; MOV R1,#CAL_BUF0
; MOV R7,#4
; CALL LOOP_R1_TO_R0
; RET
JMP ZFS_DATA_CAL4
;*************************************************
;读最大需量
;*************************************************
ZFS_ZR_XL: CALL RD_ZR_XL
JMP ZFS_DATA_3
;*************************************************
;读最大需量发生时间
;*************************************************
ZFS_ZR_XL_TIME:
CALL RD_ZR_XL_TIME
JMP ZFS_DATA_5
;*************************************************
;读无功总电量
;*************************************************
ZFS_ZR_W_ZDL: CALL RD_JL_ZR_W
; MOV R0,#ZB_BUF6
; MOV R1,#CAL_BUF0
; MOV R7,#4
; CALL LOOP_R1_TO_R0
; RET
JMP ZFS_DATA_CAL4
;******************************************************
;ZB 读上月所有电量
;2004.6.16 ZB 读上月冻结所有电量,16字节
;***********************************************
ZFS_UP_MM_DL_ALL:
NOP
MOV FL_NUM,FL_NUM_BAK
CALL ZFS_UP_MM_DL
MOV FL_NUM,FL_NUM_BAK
CALL RD_LAST_FL_INT
MOV R0,#ZB_BUF10 ;发送数据填在ZB_BUF10、11、12、13
MOV R1,#RD_BUF0
MOV R7,#4
CALL LOOP_R1_TO_R0
INC FL_NUM
CALL RD_LAST_FL_INT
MOV R0,#ZB_BUF14 ;发送数据填在HW_BUF14、15、16、17
MOV R1,#RD_BUF0
MOV R7,#4
CALL LOOP_R1_TO_R0
INC FL_NUM
CALL RD_LAST_FL_INT
MOV R0,#ZB_BUF18 ;发送数据填在HW_BUF18、19、20、21
MOV R1,#RD_BUF0
MOV R7,#4
CALL LOOP_R1_TO_R0
RET
;*************************************************
;ZB 读上月总电量 MOV TO ZB_BUF6--9
; ZB 读上月冻结电量
;*************************************************
ZFS_UP_MM_DL: CALL RD_LAST_ZDL
; MOV R0,#ZB_BUF6
; MOV R1,#CAL_BUF0
; MOV R7,#4
; CALL LOOP_R1_TO_R0
; RET
JMP ZFS_DATA_CAL4
;*************************************************
;ZB 读上月FLX电量 MOV TO ZB_BUF6--9
;*************************************************
ZFS_UP_MM_DL234:MOV FL_NUM,A
LCALL RD_LAST_FL_INT
; MOV R0,#ZB_BUF6
; MOV R1,#RD_BUF0
; MOV R7,#4
; CALL LOOP_R1_TO_R0
; RET
JMP ZFS_DATA_RD4
;******************************************************
;ZB 读上月所有电量
;2004.6.16 ZB 读上月冻结所有电量,16字节
;***********************************************
ZFS_JL_UP_MM_DL_ALL:
NOP
MOV FL_NUM,FL_NUM_BAK
CALL ZFS_JL_UP_MM_DL
MOV FL_NUM,FL_NUM_BAK
CALL RD_JL_LAST_FL_INT
MOV R0,#ZB_BUF10 ;发送数据填在ZB_BUF10、11、12、13
MOV R1,#CAL_BUF0
MOV R7,#4
CALL LOOP_R1_TO_R0
INC FL_NUM_BAK
CALL RD_JL_LAST_FL_INT
MOV R0,#ZB_BUF14 ;发送数据填在HW_BUF14、15、16、17
MOV R1,#CAL_BUF0
MOV R7,#4
CALL LOOP_R1_TO_R0
INC FL_NUM_BAK
CALL RD_JL_LAST_FL_INT
MOV R0,#ZB_BUF18 ;发送数据填在HW_BUF18、19、20、21
MOV R1,#CAL_BUF0
MOV R7,#4
CALL LOOP_R1_TO_R0
RET
;*************************************************
;ZB 读上月总电量 MOV TO ZB_BUF6--9
; ZB 读上月冻结电量
;*************************************************
ZFS_JL_UP_MM_DL:
CALL RD_JL_LAST_ZDL
; MOV R0,#ZB_BUF6
; MOV R1,#CAL_BUF0
; MOV R7,#4
; CALL LOOP_R1_TO_R0
; RET
JMP ZFS_DATA_CAL4
;*************************************************
;ZB 读上月FLX电量 MOV TO ZB_BUF6--9
;*************************************************
ZFS_JL_UP_MM_DL234:
MOV FL_NUM_BAK,A
CALL RD_JL_LAST_FL_INT
; MOV R0,#ZB_BUF6
; MOV R1,#CAL_BUF0
; MOV R7,#4
; CALL LOOP_R1_TO_R0
; RET
JMP ZFS_DATA_CAL4
;*************************************************
;读最大需量
;
;*************************************************
ZFS_LAST_XL: CALL RD_LAST_XL
JMP ZFS_DATA_3
;*************************************************
;读最大需量发生时间
;
;*************************************************
ZFS_LAST_XL_TIME:
CALL RD_LAST_XL_TIME
JMP ZFS_DATA_5
;*************************************************
;读无功总电量
;*************************************************
ZFS_LAST_W_ZDL: CALL RD_JL_LAST_W
; MOV R0,#ZB_BUF6
; MOV R1,#CAL_BUF0
; MOV R7,#4
;; CALL LOOP_R1_TO_R0
; RET
JMP ZFS_DATA_CAL4
;**************************************************************
;电压A
;**************************************************************
ZFS_VA: MOV DPH,#2
MOV DPL,#UA_L
JMP ZFS_VI
;**************************************************************
;电流A
;**************************************************************
ZFS_IA: MOV DPH,#2
MOV DPL,#IA_L
ZFS_VI: MOVX A,@DPTR
MOV RD_BUF0,A
INC DPTR
MOVX A,@DPTR
MOV RD_BUF1,A
INC DPTR
MOVX A,@DPTR
MOV RD_BUF2,A
MOV A,RD_BUF0
ADD A,RD_BUF1
ADD A,#'X'
CJNE A,RD_BUF2,ZFS_I_RET
ZFS_DATA_2: MOV R0,#ZB_BUF6
MOV @R0,RD_BUF0
INC R0
MOV @R0,RD_BUF1
RET
ZFS_I_RET: MOV RD_BUF0,#0
MOV RD_BUF1,#0
JMP ZFS_DATA_2
;**************************************************************
;
;**************************************************************
ZFS_GL: MOV DPH,#1
MOV DPL,#NOW_GL_L
MOVX A,@DPTR ;
MOV RD_BUF0,A
INC DPTR
MOVX A,@DPTR
MOV RD_BUF1,A
INC DPTR
MOVX A,@DPTR
MOV RD_BUF2,A
INC DPTR
MOVX A,@DPTR
MOV RD_BUF3,A
MOV A,RD_BUF0
ADD A,RD_BUF1
ADD A,RD_BUF2
ADD A,#'X'
CJNE A,RD_BUF3,ZFS_RD_GL
JMP ZFS_DATA_3
ZFS_RD_GL: MOV RD_BUF0,#0
MOV RD_BUF1,#0
MOV RD_BUF2,#0
JMP ZFS_DATA_3
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -