⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tj1025g.asm

📁 电压监测的源代码
💻 ASM
📖 第 1 页 / 共 5 页
字号:
     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 + -