📄 tj1025g.asm
字号:
MOV DPTR,#001CH ;行政区域码1
MOVX A,@DPTR
MOV DPTR,#0F907H
LCALL WRDA
MOV DPTR,#001DH ;行政区域码2
MOVX A,@DPTR
MOV DPTR,#0F908H
LCALL WRDA
;---------------------------
MOV DPTR,#001AH ;终端地址1
MOVX A,@DPTR
MOV DPTR,#0F909H
LCALL WRDA
MOV DPTR,#001BH ;终端地址2
MOVX A,@DPTR
MOV DPTR,#0F90AH
LCALL WRDA
;---------------------------
MOV DPTR,#0F90BH ;组地址和主站地址
MOV A,#01H
LCALL WRDA
;---------------------------
MOV DPTR,#0F90CH ;应用功能码
MOV A,#85H
LCALL WRDA
;---------------------------
MOV DPTR,#0F90DH ;祯序列TPV=1
MOV A,#80H
LCALL WRDA
;-----------------------------
; 数据单元标识
; B4 01 N 0C
;-----------------------------
MOV DPTR,#0F90EH
MOV A,#0B4H
LCALL WRDA
INC DPTR
MOV A,#01H
LCALL WRDA
INC DPTR
MOV A,08H
LCALL WRDA
INC DPTR
MOV A,#0CH
LCALL WRDA
;----------------------------
;----------------------------
MOV DPTR,#0F912H
MOV A,08H
MOV B,#12
MUL AB
CLR C
ADD A,DPL ;数据域长度
MOV DPL,A
MOV A,B
ADDC A,#00H
MOV DPH,A
;----------------------------
; 终端密码
;----------------------------
PUSH DPH
PUSH DPL
MOV DPTR,#0010H ;终端密码
MOVX A,@DPTR
POP DPL
POP DPH
LCALL WRDA
INC DPTR
PUSH DPH
PUSH DPL
MOV DPTR,#0011H
MOVX A,@DPTR
POP DPL
POP DPH
LCALL WRDA
;----------------------------
; TP: HHMMSS
;----------------------------
INC DPTR ;HH
MOV A,4DH
LCALL WRDA
INC DPTR
MOV A,4EH ;MM
LCALL WRDA
INC DPTR
MOV A,4FH ;SS
LCALL WRDA
;----------------------------
INC DPTR
MOV A,#5
LCALL WRDA ;延时长度
;----------------------------
; 求校验和
;----------------------------
MOV A,08H
MOV B,#12
MUL AB
CLR C
ADD A,#18
MOV 0FH,A
MOV A,B
ADDC A,#00H
MOV 0EH,A ;校验长度
LCALL JYCS ;求校验和
;---------------------------
MOV A,08H
MOV B,#12
MUL AB
CLR C
ADD A,#26
MOV 0FH,A
MOV A,B
ADDC A,#00H
MOV 0EH,A ;发送长度
LCALL FSTJ
;
RET
;==========================================
;==========================================
LOADSJ:MOV DPTR,#0F912H
MOV A,08H
MOV B,#12
MUL AB
CLR C
ADD A,DPL
MOV DPL,A
MOV A,B
ADDC A,DPH
MOV DPH,A
MOV B,#12
LOADSJ1:PUSH DPH
PUSH DPL
MOV DPH,10H
MOV DPL,11H
MOVX A,@DPTR
INC DPTR
MOV 10H,DPH
MOV 11H,DPL
POP DPL
POP DPH
LCALL WRDA
INC DPTR
DJNZ B,LOADSJ1
RET
;==========================================
CXGPRS:LCALL WADOG
LCALL GPRSDA
MOV 0EH,#00H
MOV 0FH,#2AH
LCALL FSTJ
RET
;==========================================
; 发送历史类统计数据
; B1 小时统计数据
; B2 日统计数据
; B3 月统计数据
; 数据存放:0F80EH
;==========================================
QQLS:MOV DPTR,#0F80EH
MOVX A,@DPTR
CJNE A,#0B1H,QQL1
LCALL LDHH
MOV 0EH,#02H
MOV 0FH,#8DH
LJMP FQQL
QQL1: CJNE A,#0B2H,QQL2
LCALL LDDD
MOV 0EH,#02H
MOV 0FH,#0E5H
LJMP FQQL
QQL2: CJNE A,#0B3H,QQL3
LCALL LDMM
MOV 0EH,#01H
MOV 0FH,#2FH
FQQL:LCALL FSTJ
QQL3:RET
;------------------------------------------
; 上传日每小时统计数据
; 数据区:9000H---D800H
; 首址:9000H+(日)*576
;------------------------------------------
LDHH: MOV DPTR,#0F900H
MOV A,#68H
LCALL WRDA
;--------------------------------
INC DPTR ;数据长度 X4
MOV A,#0AH ;24*26+18+3=645=0285H*4=0A14H
LCALL WRDA
INC DPTR
MOV A,#14H
LCALL WRDA
INC DPTR
MOV A,#0AH
LCALL WRDA
INC DPTR
MOV A,#14H
LCALL WRDA
;--------------------------------
MOV DPTR,#0F905H
MOV A,#68H
LCALL WRDA
;--------------------------------
INC DPTR
MOV A,#8FH ;控制域
LCALL WRDA
;--------------------------------
LCALL DIZHI ;地址域
;---------------------------------
MOV A,#84H
MOV DPTR,#0F90CH ;应用层功能码
LCALL WRDA
;---------------------------------
MOV A,#80H
MOV DPTR,#0F90DH ;桢序列
LCALL WRDA
;---------------------------------
INC DPTR
MOV A,#0B1H ;数据单元标识
LCALL WRDA
INC DPTR
MOV A,#01H
LCALL WRDA
INC DPTR
MOV A,#18H
LCALL WRDA
INC DPTR
MOV A,#1AH
LCALL WRDA
;---------------------------------
; 取消年月日判别
;---------------------------------
LDH1: MOV DPTR,#0F814H
MOVX A,@DPTR
LCALL BCH1
DEC A
MOV R0,#00H
MOV R1,A
MOV R2,#02H ;日乘24小时乘24字节
MOV R3,#40H
LCALL MUL2
MOV DPTR,#9000H
CLR C
MOV A,R7
ADD A,DPL
MOV DPL,A
MOV A,R6
ADDC A,DPH
MOV DPH,A ;计算出当前天数据首地址
;==============================
MOV 0EH,#0F9H ;终端数据首址
MOV 0FH,#12H
MOV 10H,DPH
MOV 11H,DPL
MOV 0DH,#00
LDH3: MOV A,0DH
INC A
MOV DPH,0EH
MOV DPL,0FH
LCALL WRDA
INC DPTR
MOV 0EH,DPH ;ID
MOV 0FH,DPL
;---------------------------
;---------------------------
MOV DPH,10H
MOV DPL,11H
MOVX A,@DPTR
CJNE A,#55H,LDH4 ;数据无效处理
LJMP LDH5
LDH4:LJMP LDH6
;---------------------------
;---------------------------
LDH5:LCALL HSXTIME ;合格上限下限时间
LCALL ZHENDIAN ;整点值
LCALL DAZHI ;最大值
LCALL DATIME ;最大值时刻
LCALL XIAOZHI ;最小值
LCALL XIAOTIME ;最小值时刻
MOV A,0DH
INC A
MOV 0DH,A
CJNE A,#18H,LDH7
LJMP LDHA
;--------------------------
LDH6: MOV DPH,0EH
MOV DPL,0FH
MOV A,#0FFH
MOV B,#25
LDHY: LCALL WRDA
INC DPTR
DJNZ B,LDHY
MOV 0EH,DPH
MOV 0FH,DPL
MOV A,0DH
INC A
MOV 0DH,A
CJNE A,#18H,LDH7
LJMP LDHA
;-------------------------------
LDH7: CLR C
MOV A,11H
ADD A,#24
MOV 11H,A
MOV A,10H
ADDC A,#00H
MOV 10H,A ;计算出当前小时首地址
LJMP LDH3
;-------------------------------
LDHZ: MOV DPTR,#0F912H
MOV 0DH,#00
LDHB: MOV A,0DH
INC A
LCALL WRDA
INC DPTR
MOV B,#25
MOV A,#0FFH
LDHC: LCALL WRDA
INC DPTR
DJNZ B,LDHC
MOV A,0DH
INC A
MOV 0DH,A
CJNE A,#18H,LDHB
MOV 0EH,DPH
MOV 0FH,DPL
;-------------------------------
; 10月8日协议
; 年月日
;-------------------------------
LDHA: MOV DPH,0EH
MOV DPL,0FH
MOV A,4AH
LCALL WRDA
INC DPTR
MOV A,4BH
LCALL WRDA
INC DPTR
MOV A,4CH
LCALL WRDA
INC DPTR
MOV 0EH,DPH
MOV 0FH,DPL
;-------------------------------
; 密码 时标 延时长度
;-------------------------------
LCALL PWHMS
;-------------------------------
; 求校验和
;-------------------------------
MOV 0EH,#02H
MOV 0FH,#85H
LCALL JYCS
RET
;******************************************
;==========================================
; 日统计数据
;==========================================
;******************************************
LDDD: MOV DPTR,#0F900H
MOV A,#68H
LCALL WRDA
INC DPTR ;数据长度 X4
MOV A,#0BH ;31*23+18=642=02DBH*4=0B6CH
LCALL WRDA
INC DPTR
MOV A,#74H
LCALL WRDA
INC DPTR
MOV A,#0BH
LCALL WRDA
INC DPTR
MOV A,#74H
LCALL WRDA
INC DPTR
MOV A,#68H
LCALL WRDA
;--------------------------------
INC DPTR
MOV A,#8FH ;控制域
LCALL WRDA
;--------------------------------
LCALL DIZHI
;--------------------------------
MOV A,#84H
MOV DPTR,#0F90CH ; 应用层功能码
LCALL WRDA
;--------------------------------
MOV A,#80H
MOV DPTR,#0F90DH ;桢序列
LCALL WRDA
;--------------------------------
INC DPTR
MOV A,#0B2H ;数据单元标识
LCALL WRDA
INC DPTR
MOV A,#01H
LCALL WRDA
INC DPTR
MOV A,#1FH
LCALL WRDA
INC DPTR
MOV A,#17H
LCALL WRDA
;---------------------------------
MOV DPTR,#0F812H ;年
MOVX A,@DPTR
SUBB A,4AH
JZ LDX2
LJMP LDDZ
LDX2: MOV DPTR,#0F813H ;月
MOVX A,@DPTR
MOV B,A
SUBB A,4BH
JZ LDD0 ;
;---------------------------------
CLR C
MOV A,4BH
SUBB A,#01H
JZ LDX0
LJMP LDX1
LDX0: MOV A,#12H
LDX1: SUBB A,B
JZ LDD1
LJMP LDDZ ;非本月日和上月日
;---------------------------------
LDD0: MOV 10H,#82H
MOV 11H,#00H
LJMP LDD2
LDD1: MOV 10H,#85H
MOV 11H,#00H
;==============================
LDD2: MOV 0EH,#0F9H ;终端数据首址
MOV 0FH,#12H
MOV 0DH,#00
LDD3: MOV A,0DH
INC A
MOV DPH,0EH
MOV DPL,0FH
LCALL WRDA
INC DPTR
MOV 0EH,DPH ;ID
MOV 0FH,DPL
;---------------------------
;---------------------------
MOV DPH,10H
MOV DPL,11H
MOVX A,@DPTR
CJNE A,#55H,LDD4 ;数据无效处理
LJMP LDD5
LDD4:LJMP LDD6
;---------------------------
;---------------------------
LDD5:LCALL HSXTIME
LCALL DAZHI
LCALL DATIME
LCALL XIAOZHI
LCALL XIAOTIME
MOV A,0DH
INC A
MOV 0DH,A
CJNE A,#1FH,LDD7
LJMP LDDA
;-----------------------------
LDD6: MOV DPH,0EH
MOV DPL,0FH
MOV B,#22
MOV A,#0FFH
LDDY: LCALL WRDA
INC DPTR
DJNZ B,LDDY
MOV 0EH,DPH
MOV 0FH,DPL
MOV A,0DH
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -