液压机汇编程序

来源:互联网 发布:有偿的网络推广工资 编辑:程序博客网 时间:2024/04/27 09:26
 ;2013  5:12     四个行程    模退合模时间共用 寄存器优化 
;新板改时间控制  成进 成退 模进 鼓涨开模(行程开关) 2010 12 26
;压力端口P0.6改为模退端口   开模  鼓松 合模 模退(时间控制)
         S1        BIT   P2.0    ;模进
         S2        BIT   P2.1    ;成进
         S3        BIT   P2.2    ;成退
         S4        BIT   P2.3    ;鼓涨
         S5        BIT   P2.4    ;开模
         S6        BIT   P2.5
         S7        BIT   P2.6
         S8        BIT   P2.7
SDG       EQU   7FH       ;设定个位
         SDS       EQU   7EH       ;设定十位
         SDB       EQU   7DH       ;设定百位
         SJG       EQU   7CH       ;实际个位
         SJS       EQU   7BH       ;实际十位
         SJB       EQU   7AH       ;实际百位
         DSS       EQU   79H       ;定时十位
         DSG       EQU   78H       ;定时个位
         GDM       EQU   77H       ;显示个位
         SDM       EQU   76H       ;显示十位
         BDM       EQU   75H       ;显示百位
         DJBZ      EQU   74H       ;紧急停机标志。
         ZDBZ      EQU   73H       ;半自动自动
         JSBZ      EQU   72H       ;计数标志
         KZBZ      EQU   71H       ;控制标志
         HMG       EQU   70H       ;合模个位
         HMS       EQU   6FH       ;合模十位 
         GSG       EQU   6EH       ;鼓松个位
         GSS       EQU   6DH       ;鼓松十位
         KMG       EQU   6CH       ;开模个位
         KMS       EQU   6BH       ;开模十位
         MTG       EQU   6AH       ;模退个位
         MTS       EQU   69H       ;模退十位
         GWHC      EQU   68H       ;合模 鼓松 开模 模退 定时个位显示转换代码缓冲
    SWHC      EQU   67H       ;合模 鼓松 开模 模退 定时十位显示转换代码缓冲
         PBA       BIT   P1.7
         PBB       BIT   P1.6
         PBC       BIT   P1.5
         G1        BIT   P3.5
         G2        BIT   P3.4
         SCL       BIT   P3.1
         SDA       BIT   P3.0
         RS        BIT   P0.1
         RW        BIT   P0.5
         E         BIT   P0.4
         GN        BIT   P1.3
         SR45      BIT   P0.3
         XS45      BIT   P0.2;
         MT        BIT   P3.6
DJ        BIT   P3.7
         YL        BIT   P0.7
         COM       EQU   20H
         DAT       EQU   21H
         ORG       0000H
         AJMP      MAIN
         ORG       0100H
;======================================
MAIN:    MOV       SP,#60H
         CLR       DJ  ;标志位2014 6 12
CLR       MT ;                    标志位2014 6 12
CLR       YL  ;标志位2014 6 12
SOT: JB        P3.3,SOT
LCALL     DD1           ;延时50毫秒子程序
         LCALL     DD1
JB        P3.3,SOT
SETB      DJ
MOV       P0,#0FFH
         MOV       P1,#0FFH
         MOV       P2,#0FFH
MOV       P3,#0FFH
//MOV       P4,#0FFH
// MOV       P5,#0FFH
SADF:    SETB   P0.6 ;()
         MOV       DJBZ,#0FH     ;紧急停机标志关
SETB      MT
XSA:     
         NOP                     ;SETB P0.7; ()
        // SETB      EA
         LCALL     OUTX      ;74HC137Y0 输出一次
         LCALL     DD1             ;延时
SETB      YL
         LCALL     GOUT      ;关  74HC137 Y0 
KPK:     JB        P3.3,KPP      ;3333333
         LCALL     DD1           ;延时50毫秒子程序
         LCALL     DD1
         JB        P3.3,KPP      ;检测电机   
         AJMP      UU
KPP:     AJMP      LOPA1     
UU:      NOP
         CLR       DJ            ;电机开*/
         MOV       R5,#18H
MMM:     LCALL     DD1           ;延时50毫秒子程序 
         DJNZ      R5,MMM
         SETB      EX1
LOPA1:   CLR       MT
         CLR       P1.0
         JB        GN,LOPC1      ;检测功能跳转333333333
         LCALL     DD1           ;检测手动半自动自动电机
         JB        GN,LOPC1      ;延时50毫秒子程序
         AJMP      MM
LOPC1:   SETB      P1.0          ;检测功能
         AJMP      KH1
MM:      LCALL     CLRYJ
         MOV       R1,#0E8H   
         MOV       COM,#90H   
         LCALL     WRI
         MOV       DAT,#0C9H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD           ;She设
         MOV       R1,#0A8H
         MOV       COM,#91H
         LCALL     WRI
         MOV       DAT,#0B6H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD           ;din定
         MOV       R1,#0A8H
         MOV       COM,#92H
         LCALL     WRI
         MOV       DAT,#0B2H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD           ;bo波
         MOV       R1,#0B5H
         MOV       COM,#93H
         LCALL     WRI
         MOV       DAT,#0D6H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD           ;zhi值  
         LCALL     CSXS          ;显示参数设定
         LCALL     XSCL          ;>>>>>>>>>>>>>>>>>>>>>
         LCALL     SDZXS         ;设定值显示
KBH:     SETB      P1.0
         CLR       P1.2
LCALL     DD1
         JB        P1.0,LOPC
LCALL     DD1
         LCALL     DK            ;延时10毫秒子程序
         JB        P1.0,LOPC
         MOV       R0,SDG
         MOV       R1,SDS
         MOV       R2,SDB
         LCALL     JJS1          ;设定加子程序
         MOV       SDG,R0
         MOV       SDS,R1
         MOV       SDB,R2
         LCALL     WTSDZ         ;写存储设定值
         LCALL     XSCL          ;调用设定显示代码处理子程序
         LCALL     SDZXS         ;设定值显示
LOPC:    SETB      P1.2
         SETB      P1.0
         CLR       P1.1
LCALL     DD1
         JB        P1.0,LOPCC
LCALL     DD1
         LCALL     DK            ;延时10毫秒子程序
         JB        P1.0,LOPCC
         MOV       R0,SDG
         MOV       R1,SDS
         MOV       R2,SDB
         LCALL     JIJS          ;设定减子程序
         MOV       SDG,R0
         MOV       SDS,R1
         MOV       SDB,R2  
         LCALL     WTSDZ         ;写存储设定值
         LCALL     XSCL          ;调用设定显示代码处理子程序
         LCALL     SDZXS         ;设定值显示
LOPCC:   SETB      P1.1
         CLR       P1.0
LCALL     DD1
         JB        GN,KBH1
         LCALL     DD1           ;延时50毫秒子程序
         JB        GN,KBH1       ;检测功能 跳转检测加程序
         AJMP      YU
KBH1:    SETB      P1.6
         AJMP      KBH 
YU:      LCALL     CLRYJ
         LCALL     XSSJSD
         LCALL     DSCLC         ;调用定时代码处理子程序<<<<增加指令
         LCALL     DSXS          ;调用显示定时子程序
LOPD:    SETB      P1.0
         CLR       P1.2
LCALL     DD1
         JB        P1.0,LOPE 
LCALL     DD1
         LCALL     DK             ;延时50毫秒子程序
         JB        P1.0,LOPE       ;检测加定时
         MOV       R0,DSG
         MOV       R1,DSS
         LCALL     DSJA          ;定时加子程序
         MOV       DSG,R0
         MOV       DSS,R1
         LCALL     WTDS          ;写存储定时值
         LCALL     DSCLC         ;调用定时代码处理子程序
         LCALL     DSXS          ;调用定时显示子程序
LOPE:    SETB      P1.2
         SETB      P1.0
         CLR       P1.1  
LCALL     DD1
         JB        P1.0,LOPTA
LCALL     DD1
         LCALL     DK            ;延时50毫秒子程序
         JB        P1.0,LOPTA    ;检测减定时
         MOV       R0,DSG
         MOV       R1,DSS
         LCALL     DSJI          ;定时减子程序
         MOV       DSG,R0
         MOV       DSS,R1  
         LCALL     WTDS          ;写存储定时值
         LCALL     DSCLC         ;调用定时代码处理子程序
         LCALL     DSXS          ;调用定时显示子程序
;=============增加程序A===以下插入==============
LOPTA:   SETB      P1.1
         CLR       P1.0
LCALL     DD1
         JB        GN,LTA1
LCALL     DD1
         LCALL     DD1
         JB        GN,LTA1
         AJMP      RYT1
LTA1:    NOP
         LJMP      LOPD            ;检测功能键,无输入检测跳上段时间加减
;-----------------------------------------------
RYT1:    LCALL     CLRYJ           ;
         LCALL     XSSJSD          ;显示数据设定
         LCALL     XSKM            ;显示开模------------------------------
         MOV       A,KMG
         ANL       A,#0FH
         MOV       KMG,A
         MOV       A,KMS
         ANL       A,#0FH
         MOV       KMS,A
         MOV       SWHC,KMS
         MOV       GWHC,KMG
         LCALL     DSCLTM
         LCALL     DSXSTM          ;调用定时显示子程序
TPA:     SETB      P1.0
         CLR       P1.2
LCALL     DD1
         JB        P1.0,LPA 
LCALL     DD1
         LCALL     DK              ;延时50毫秒子程序
         JB        P1.0,LPA        ;检测加定时
         MOV       R0,KMG
         MOV       R1,KMS
         LCALL     DSJA            ;定时加子程序
         MOV       KMG,R0
         MOV       KMS,R1
         LCALL     WTDST1          ;写存储定时值
         MOV       SWHC,KMS
         MOV       GWHC,KMG
         LCALL     DSCLTM         ;调用定时代码处理子程序
         LCALL     DSXSTM          ;调用定时显示子程序
LPA:     SETB      P1.2
         SETB      P1.0
         CLR       P1.1  
LCALL     DD1
         JB        P1.0,LPAA
LCALL     DD1
         LCALL     DK              ;延时50毫秒子程序
         JB        P1.0,LPAA       ;检测减定时
         MOV       R0,KMG
         MOV       R1,KMS
         LCALL     DSJI            ;定时减子程序
         MOV       KMG,R0
         MOV       KMS,R1  
         LCALL     WTDST1          ;写存储定时值
         MOV       SWHC,KMS
         MOV       GWHC,KMG
         LCALL     DSCLTM          ;调用定时代码处理子程序
         LCALL     DSXSTM          ;调用定时显示子程序
;=============以上程序设定开模时间==============
LPAA:    SETB      P1.1
         CLR       P1.0
  LCALL     DD1
         JB        GN,LTB1
         LCALL     DD1
         JB        GN,LTB1
         AJMP      RYT2
LTB1:    NOP
         LJMP      TPA             ;检测功能键,无输入检测跳上段时间加减
;-----------------------------------------------
RYT2:    LCALL     CLRYJ           ;
         LCALL     XSSJSD     ;显示数据设定
         LCALL     XSGS      ;显示鼓松
         MOV       A,GSG
         ANL       A,#0FH
         MOV       GSG,A
         MOV       A,GSS
         ANL       A,#0FH
         MOV       GSS,A
         MOV       SWHC,GSS
         MOV       GWHC,GSG
         LCALL     DSCLTM
         LCALL     DSXSTM          ;调用定时显示子程序
TPB:     SETB      P1.0
         CLR       P1.2
LCALL     DD1
         JB        P1.0,LPB 
LCALL     DD1
         LCALL     DK              ;延时50毫秒子程序
         JB        P1.0,LPB        ;检测加定时
         MOV       R0,GSG
         MOV       R1,GSS
         LCALL     DSJA            ;定时加子程序
         MOV       GSG,R0
         MOV       GSS,R1
         LCALL     WTDST2          ;写存储定时值
         MOV       SWHC,GSS
         MOV       GWHC,GSG
         LCALL     DSCLTM          ;调用定时代码处理子程序
         LCALL     DSXSTM          ;调用定时显示子程序
LPB:     SETB      P1.2
         SETB      P1.0
         CLR       P1.1  
LCALL     DD1
         JB        P1.0,LPBB
LCALL     DD1
         LCALL     DK              ;延时50毫秒子程序
         JB        P1.0,LPBB       ;检测减定时
         MOV       R0,GSG
         MOV       R1,GSS
         LCALL     DSJI            ;定时减子程序
         MOV       GSG,R0
         MOV       GSS,R1  
         LCALL     WTDST2          ;写存储定时值
         MOV       SWHC,GSS
         MOV       GWHC,GSG
         LCALL     DSCLTM          ;调用定时代码处理子程序
         LCALL     DSXSTM          ;调用定时显示子程序
;=============以上程序设定鼓松时间==============
LPBB:    SETB      P1.1
         CLR       P1.0
 LCALL     DD1
         JB        GN,LTC1
         LCALL     DD1
         JB        GN,LTC1
         AJMP      RYT3
LTC1:    NOP
         LJMP      TPB            ;检测功能键,无输入检测跳上段时间加减
;-----------------------------------------------
RYT3:    LCALL     CLRYJ           ;
         LCALL     XSSJSD     ;显示数据设定
         LCALL     XSHM            ;显示合模
         MOV       A,HMG
         ANL       A,#0FH
         MOV       HMG,A
         MOV       A,HMS
         ANL       A,#0FH
         MOV       HMS,A
         MOV       SWHC,HMS
         MOV       GWHC,HMG
         LCALL     DSCLTM
         LCALL     DSXSTM          ;调用定时显示子程序
TPC:     SETB      P1.0
         CLR       P1.2
LCALL     DD1
         JB        P1.0,LPC 
LCALL     DD1
         LCALL     DK              ;延时50毫秒子程序
         JB        P1.0,LPC        ;检测加定时
         MOV       R0,HMG
         MOV       R1,HMS
         LCALL     DSJA            ;定时加子程序
         MOV       HMG,R0
         MOV       HMS,R1
         LCALL     WTDST3          ;写存储定时值
         MOV       SWHC,HMS
         MOV       GWHC,HMG
         LCALL     DSCLTM         ;调用定时代码处理子程序
         LCALL     DSXSTM          ;调用定时显示子程序
LPC:     SETB      P1.2
         SETB      P1.0
         CLR       P1.1  
LCALL     DD1
         JB        P1.0,LPCC
LCALL     DD1
         LCALL     DK              ;延时50毫秒子程序
         JB        P1.0,LPCC       ;检测减定时
         MOV       R0,HMG
         MOV       R1,HMS
         LCALL     DSJI            ;定时减子程序
         MOV       HMG,R0
         MOV       HMS,R1  
         LCALL     WTDST3          ;写存储定时值
         MOV       SWHC,HMS
         MOV       GWHC,HMG
         LCALL     DSCLTM          ;调用定时代码处理子程序
         LCALL     DSXSTM          ;调用定时显示子程序
;=============以上程序设定合模时间==============
LPCC:    SETB      P1.1
         CLR       P1.0
LCALL     DD1
         JB        GN,LTD1
         LCALL     DD1
         JB        GN,LTD1
         AJMP      RYT4
LTD1:    NOP
         LJMP      TPC            ;检测功能键,无输入检测跳上段时间加减
;-----------------------------------------------
RYT4:    LCALL     CLRYJ           ;
         LCALL     XSSJSD     ;显示数据设定
         LCALL     XSMT            ;显示模退
         MOV       A,MTG
         ANL       A,#0FH
         MOV       MTG,A
         MOV       A,MTS
         ANL       A,#0FH
         MOV       MTS,A
         MOV       SWHC,MTS
         MOV       GWHC,MTG
         LCALL     DSCLTM
         LCALL     DSXSTM          ;调用定时显示子程序
TPD:     SETB      P1.0
         CLR       P1.2
    LCALL     DD1
         JB        P1.0,LPD 
LCALL     DD1
         LCALL     DK              ;延时50毫秒子程序
         JB        P1.0,LPD        ;检测加定时
         MOV       R0,MTG
         MOV       R1,MTS
         LCALL     DSJA            ;定时加子程序
         MOV       MTG,R0
         MOV       MTS,R1
         LCALL     WTDST4          ;写存储定时值
         MOV       SWHC,MTS
         MOV       GWHC,MTG
         LCALL     DSCLTM          ;调用定时代码处理子程序
         LCALL     DSXSTM          ;调用定时显示子程序
LPD:     SETB      P1.2
         SETB      P1.0
         CLR       P1.1  
LCALL     DD1
         JB        P1.0,LPMM
LCALL     DD1
         LCALL     DK              ;延时50毫秒子程序
         JB        P1.0,LPMM       ;检测减定时
         MOV       R0,MTG
         MOV       R1,MTS
         LCALL     DSJI            ;定时减子程序
         MOV       MTG,R0
         MOV       MTS,R1  
         LCALL     WTDST4          ;写存储定时值
         MOV       SWHC,MTS
         MOV       GWHC,MTG
         LCALL     DSCLTM         ;调用定时代码处理子程序
         LCALL     DSXSTM          ;调用定时显示子程序
;=============以上程序设定模退时间==============
LPMM:    SETB      P1.1
         CLR       P1.0
LCALL     DD1
         JB        GN,LOPM1
         LCALL     DD1
         JB        GN,LOPM1
         AJMP      RDY
LOPM1:   AJMP      TPD
RDY:     LCALL     CLRYJ  ;
         LCALL     XSCSGL     ;显示参数归零?
MMPD:    SETB      P1.0
         CLR       P1.2
LCALL     DD1
         JB        P1.0,LPME       ;检测时间
         LCALL     DD1             ;延时50毫秒子程序
         JB        P1.0,LPME
         MOV       A,#00H
         MOV       SDG,A       
         MOV       SDS,A         
         MOV       SDB,A 
         LCALL     WTSDZ  
         MOV       A,#00H  
         MOV       DSG,A        
         MOV       DSS,A 
         LCALL     WTDS
         MOV       A,#00H
         MOV       KMG,A        
         MOV       KMS,A  
         LCALL     WTDST1
         MOV       A,#00H
         MOV       GSG,A           
         MOV       GSS,A  
         LCALL     WTDST2
         MOV       A,#00H
         MOV       HMG,A        
         MOV       HMS,A   
         LCALL     WTDST3
         MOV       A,#00H
         MOV       MTG,A        
         MOV       MTS,A 
         LCALL     WTDST4 
         LCALL     CLRYJ     ;   
         LCALL     CSGL   ;显示参数已归零
         LCALL     DD1
         LCALL     DD1
         LJMP      LPEE
MPD:     AJMP      MMPD
LPME:    SETB      P1.2
;=============增加程序A===以上插入==============
LPEE:    SETB      P1.1
         CLR       P1.0
LCALL     DD1
         JB        GN,LOPD1
         LCALL     DD1             ;延时50毫秒子程序
         JB        GN,LOPD1        ;检测功能跳转时间加程序
         AJMP      RY
LOPD1:   NOP
         AJMP      MPD             ;;;;;;;;;需重新选择跳转    点09 1117
RY:      LCALL     CLRYJ  ;
         MOV       R1,#0D8H   
         MOV       COM,#80H   
         LCALL     WRI
         MOV       DAT,#0BFH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD           ;控制方式
         MOV       R1,#0C6H
         MOV       COM,#81H
         LCALL     WRI
         MOV       DAT,#0D6H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD           ;制
         MOV       R1,#0BDH
         MOV       COM,#82H
         LCALL     WRI
         MOV       DAT,#0B7H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD           ;方 
         MOV       R1,#0BDH
         MOV       COM,#83H      
         LCALL     WRI
         MOV       DAT,#0CAH        
         LCALL     WRD        
         MOV       DAT,R1 
         LCALL     WRD            ;式
         MOV       A,KZBZ
         CJNE      A,#0FH,XSXC    ;显示行程
         MOV       R1,#0B1H
         MOV       COM,#85H
         LCALL     WRI
         MOV       DAT,#0CAH
         LCALL     WRD   
         MOV       DAT,R1   
         LCALL     WRD            ;时
         MOV       R1,#0E4H
         MOV       COM,#86H
         LCALL     WRI
         MOV       DAT,#0BCH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD            ;间
         AJMP      LOPF1
XSXC:    MOV       R1,#0D0H   
         MOV       COM,#85H   
         LCALL     WRI
         MOV       DAT,#0D0H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD             ;行
         MOV       R1,#0CCH
         MOV       COM,#86H
         LCALL     WRI
         MOV       DAT,#0B3H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD             ;程
LOPF1:   SETB      P1.0
         CLR       P1.2
LCALL     DD1
         JB        P1.0,LOPG       ;检测时间
         LCALL     DD1             ;延时50毫秒子程序
         JB        P1.0,LOPG
         MOV       KZBZ,#0F0H
         MOV       A,#06H
         MOV       R0,KZBZ
         LCALL     WT24
         MOV       R1,#0D0H   
         MOV       COM,#85H   
         LCALL     WRI
         MOV       DAT,#0D0H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD            ;xing行
         MOV       R1,#0CCH
         MOV       COM,#86H
         LCALL     WRI
         MOV       DAT,#0B3H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD            ;cheng程
LOPG:    SETB      P1.2
         SETB      P1.0
         CLR       P1.1
LCALL     DD1
         JB        P1.0,LPFF
         LCALL     DD1
         JB        P1.0,LPFF      ;行程
         AJMP      OO
LPFF:    NOP
         LJMP      PFF
OO:      MOV       KZBZ,#0FH
         MOV       A,#06H
         MOV       R0,KZBZ
         LCALL     WT24
         MOV       R1,#0B1H
         MOV       COM,#85H
         LCALL     WRI
         MOV       DAT,#0CAH
         LCALL     WRD   
         MOV       DAT,R1   
         LCALL     WRD            ;时
         MOV       R1,#0E4H
         MOV       COM,#86H
         LCALL     WRI
         MOV       DAT,#0BCH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD            ;间 
PFF:     SETB      P1.1
         CLR       P1.0 
LCALL     DD1
         JB        GN,LPF1        ;检测功能
         LCALL     DD1            ;跳转检测控制方式
         JB        GN,LPF1
         AJMP      CZ
LPF1:    NOP
         AJMP      LOPF1
CZ:      LCALL     CLRYJ
         MOV       R1,#0C6H   
         MOV       COM,#80H   
         LCALL     WRI
         MOV       DAT,#0BCH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD            ;计数使用
         MOV       R1,#0FDH
         MOV       COM,#81H
         LCALL     WRI
         MOV       DAT,#0CAH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD            ;计数闭
         MOV       R1,#0B9H   
         MOV       COM,#82H   
         LCALL     WRI
         MOV       DAT,#0CAH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD            ;使
         MOV       R1,#0C3H
         MOV       COM,#83H
         LCALL     WRI
         MOV       DAT,#0D3H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD            ;用
         MOV       A,JSBZ
         CJNE      A,#0FH,QW
         MOV       R1,#0AAH
         MOV       COM,#85H
         LCALL     WRI
         MOV       DAT,#0BFH   
         LCALL     WRD
         MOV       DAT,R1    
         LCALL     WRD            ;开
         AJMP      LOPH
QW:      MOV       R1,#0D8H
         MOV       COM,#85H
         LCALL     WRI
         MOV       DAT,#0B9H
         LCALL     WRD         
         MOV       DAT,R1
         LCALL     WRD            ;关
LOPH:    CLR       P1.2
         SETB      P1.0
LCALL     DD1
         JB        P1.0,LOPI
         LCALL     DD1           ;延时50毫秒子程序
         JB        P1.0,LOPI      ;检测计数开关
         MOV       JSBZ,#0FH
         MOV       A,#07H
         MOV       R0,JSBZ
         LCALL     WT24
         MOV       R1,#0AAH
         MOV       COM,#85H
         LCALL     WRI
         MOV       DAT,#0BFH   
         LCALL     WRD
         MOV       DAT,R1    
         LCALL     WRD             ;开
LOPI:    SETB      P1.2
         SETB      P1.0
         CLR       P1.1
         JB        P1.0,LOPGG
         LCALL     DD1             ;延时50毫秒子程序
         JB        P1.0,LOPGG      ;检测计数开
         MOV       JSBZ,#0F0H
         MOV       A,#07H
         MOV       R0,JSBZ
         LCALL     WT24  ;
         MOV       R1,#0D8H
         MOV       COM,#85H
         LCALL     WRI
         MOV       DAT,#0B9H
         LCALL     WRD           ;关
         MOV       DAT,R1
         LCALL     WRD      
LOPGG:   SETB      P1.1
         CLR       P1.0
LCALL     DD1
         JB        GN,LOPH
         LCALL     DD1           ;延时50毫秒子程序
         JB        GN,LOPH       ;检测功能
         LCALL     CLRYJ         ; 
         LCALL     XS0           ;
    LCALL     XSCL          ;2012 4 10<<<<<<<<
         LCALL     SDZXS         ;跳转检测计数开关
KH1:     SETB      P1.0
         CLR       P1.4
LCALL     DD1
         JB        P1.2,KQ       ;检测半自动
         LCALL     DD1           ;延时50毫秒子程序
         JB        P1.2,KQ
         MOV       ZDBZ,#0FH;
         LJMP      BZDX          ;跳转半自动<...>
KQ:      LCALL     DD1
         JB        P1.0,LOPM      ;检测自动
         LCALL     DD1           ;延时50毫秒子程序
         JB        P1.0,LOPM
         MOV       ZDBZ,#0F0H
BZDX:    MOV       DJBZ,#0FH
         MOV       A,ZDBZ
         CJNE      A,#0FH,XSI
         LCALL     CLRYJ
         LCALL     XSBZD           ;显示半自动
         AJMP      BZDX2  
XSI:     LCALL     CLRYJ
         LCALL     XSZD            ;显示自动
BZDX2:   SETB      EX0             ;自动
         LCALL     XSYX            ;显示<请按运行>
         CLR       P1.1
LCALL     DD1
BZDX1:   MOV       A,DJBZ
         CJNE      A,#0FH,FHSD
         LCALL     DD1
         LCALL     DD1
         LCALL     DD1
         JB        P1.0,BZDX1
         LCALL     DD1
         JB        P1.0,BZDX1
         LCALL     QCYX           ;清除显示<请按运行>
         SETB      P1.1
         LJMP      BZD            ;检测自动<...>  
FHSD:    SETB      P1.1
         LCALL     QCYX           ;清除显示<请按运行>
         LJMP      XSA
;=======================================
LOPM:    SETB      P1.4 
SDKS:    CLR       P1.3
LCALL     DD1
         JB        P1.2,LOP2       ;检测手动
         LCALL     DD1             ;延时50毫秒子程序
         JB        P1.2,LOP2
         LCALL     OUT1            ;HM合模  1
         LCALL     K137
         LCALL     XS1
AA:      JNB       P1.2,AA 
         LCALL     GOUT1
         LCALL     OUTX
         LCALL     XS9
LOP2:    SETB      P1.3
         CLR       P1.0
LCALL     DD1
         JB        P1.2,LOP3
         LCALL     D1
         JB        P1.2,LOP3 
         LCALL     OUT2           ;MJ模进2
         LCALL     K137
         LCALL     XS2
BB:      JNB       P1.2,BB
         LCALL     GOUT2
         LCALL     OUTX
         LCALL     XS9
LOP3:    SETB      P1.0
         CLR       P1.2
LCALL     DD1
         JB        P1.1,LOP4
         LCALL     DD1            ;延时50毫秒子程序
         JB        P1.1,LOP4
         LCALL     XS3
         LCALL     OUT3           ;GZ鼓涨 3
         LCALL     K137
DD:      JNB       P1.1,DD
         LCALL     GOUT 
         LCALL     OUTX
         LCALL     XS9
LOP4:    SETB      P1.2
         CLR       P1.0
LCALL     DD1
         JB        P1.1,LOP5
         LCALL     DD1             ;延时50毫秒子程序
         JB        P1.1,LOP5
         LCALL     XS5
         LCALL     OUT5            ;CJ成进4
         LCALL     K137
EE:      JNB       P1.1,EE
         LCALL     GOUT
         LCALL     OUTX
         LCALL     XS9
LOP5:    SETB      P1.0
         CLR       P1.2
LCALL     DD1
         JB        P1.3,LOP6
         LCALL     D1
         JB        P1.3,LOP6
         LCALL     XS7
         LCALL     OUT7            ;KM开模5 
         LCALL     K137
FF:      JNB       P1.3,FF
         LCALL     GOUT    
         LCALL     OUTX
         LCALL     XS9
LOP6:    SETB      P1.2
         CLR       P1.3
LCALL     DD1
         JB        P1.0,LOP7
         LCALL     DD1             ;延时50毫秒子程序
         JB        P1.0,LOP7
         LCALL     XS8
         LCALL     OUT8            ;MT模退6 
GG:      JNB       P1.0,GG
         SETB      MT  ;关模退P0.6<<<<<<<<<<<<<<<<<<<
         SETB      YL
         LCALL     XS9
LOP7:    JB        P1.1,LOP8
         LCALL     DD1             ;延时50毫秒子程序
         JB        P1.1,LOP8
         LCALL     XS4
         LCALL     OUT4            ;GS鼓松7
         LCALL     K137
HH:      JNB       P1.1,HH
         LCALL     XS9
         LCALL     GOUT
LOP8:    CLR       P1.3
LCALL     DD1
         JB        P1.4,LOP9
         LCALL     DD1             ;延时50毫秒子程序
         JB        P1.4,LOP9
         LCALL     XS6
         LCALL     OUT6            ;CT成退8 
         LCALL     K137
II:      JNB       P1.4,II
         LCALL     GOUT 
         LCALL     OUTX
         LCALL     XS9
LOP9:    SETB      P1.3
         LJMP      KPK             ;手动跳转循环检测
BZD:     NOP
KSYX:    MOV       A,#00H          ;开始运行
         MOV       SJG,A  
         MOV       SJS,A
         MOV       SJB,A
         LCALL     XSCLB
         LCALL     SJZXS
ZDXH:    LCALL     OUT1
         LCALL     XS1             ;自动循环
;=========修改为时间控制==========  
         MOV       GWHC,HMG
         MOV       SWHC,HMS    
         LCALL     DJS2
STOP1:   NOP                       
         LCALL     XS9;合模1
         LCALL     OUT22           
         LCALL     XS2
         MOV       A,KZBZ
         CJNE      A,#0FH,JXC2
         LCALL     DJS1
         LJMP      STOP2
JXC2:    SETB      XS45
         CLR       SR45
         MOV       P2,#0FFH
         LCALL     DI              ;延时10毫秒子程序
JXC22:   JB        S1,JXC22
         LCALL     DI              ;延时50毫秒子程序
         JB        S1,JXC22
STOP2:   NOP                       
         LCALL     XS9
         LCALL     OUT33           
         LCALL     XS3
         MOV       A,KZBZ     
         CJNE      A,#0FH,JXC3
         LCALL     DJS1
         LJMP      STOP3
JXC3:    SETB      XS45
         CLR       SR45
         MOV       P2,#0FFH
         LCALL     DI              ;延时10毫秒子程序
JXC33:   JB        S2,JXC33
         LCALL     DI              ;延时50毫秒子程序
         JB        S2,JXC33
STOP3:   NOP                       
         LCALL     XS9;鼓涨3
         LCALL     OUT44           
         LCALL     XS4
         MOV       GWHC,GSG
         MOV       SWHC,GSS
         LCALL     DJS2
STOP4:   NOP                       
         LCALL     XS9
         LCALL     GOUT44          ;鼓松同时关合模模进鼓涨
         LCALL     OUT5             ;成进
         LCALL     XS5
         MOV       A,KZBZ
         CJNE      A,#0FH,JXC5
         LCALL     DJS1
         LJMP      STOP5
JXC5:    SETB      XS45
         CLR       SR45 
         MOV       P2,#0FFH
         LCALL     DI              ;延时10毫秒子程序
JXC55:   JB        S3,JXC55
         LCALL     DI              ;延时50毫秒子程序
         JB        S3,JXC55
STOP5:   NOP                       
         LCALL     XS9
         LCALL     GOUT            ;关成进
         LCALL     OUT6            ;成退
         LCALL     XS6
         MOV       A,KZBZ
         CJNE      A,#0FH,JXC6
         LCALL     DJS1
         AJMP      STOP6
JXC6:    SETB      XS45
         CLR       SR45
         MOV       P2,#0FFH 
         LCALL     DI              ;延时10毫秒子程序
JXC66:   JB        S4,JXC66
         LCALL     DI              ;延时50毫秒子程序
         JB        S4,JXC66
STOP6:   NOP                       
         LCALL     XS9
         LCALL     GOUT            ;关成退
         LCALL     OUT7            
         LCALL     XS7         ;2011 8 20修改开模用开关
         CLR       SR45 
         MOV       P2,#0FFH
         LCALL     DI            ;五段改四段程序记号
         MOV       GWHC,KMG
         MOV       SWHC,KMS
         LCALL     DJS2
         LCALL     XS9
         LCALL     GOUT            ;关开模                         
         LCALL     XS9
         LCALL     GOUT            ;模退
         LCALL     OUT8
         LCALL     XS8
         MOV       SWHC,HMS  ;
         MOV       GWHC,HMG  ;
;==========模退使用合模时间===============
         LCALL     DJS2            ;设定时间运行程序,运行过程检测停机标志。
STOP8:   LCALL     XS9
         SETB      MT  ;关模退P0.6<<<<<<<<<<<<<<<<<<<
         SETB      YL
         LCALL     GOUT            ;关模退
JXY1:    MOV       A,ZDBZ          ;检测标志半自动标志
         CJNE      A,#0FH,JXZD     ;#0F0H自动
         CLR       P1.1;
         LCALL     XSYX            ;显示请按运行
JXY:     MOV       A,DJBZ          ;检测紧急停机标志
         CJNE      A,#0FH,JTUL
         JB        P1.0,JXY
         LCALL     DD1;
         JB        P1.0,JXY
         LCALL     QCYX            ;清除显示请按运行
         SETB      P1.1;
         LJMP      ZDXH            ;跳自动循环
JXZD:    MOV       A,JSBZ          ;计数标志
         CJNE      A,#0FH,ZP       ;跳自动
         MOV       R0,SJG
         MOV       R1,SJS
         MOV       R2,SJB          ;
         LCALL     JJS1            ;加计数子程序
         MOV       SJG,R0
         MOV       SJS,R1
         MOV       SJB,R2
         LCALL     XSCLB           ;
         LCALL     SJZXS           ;实际值显示子程序
         MOV       A,SJB
         CJNE      A,SDB,ZDX       ;比较设定百位
         MOV       A,SJS
         CJNE      A,SDS,ZDX        ;比较设定十位
         MOV       A,SJG
         CJNE      A,SDG,ZDX       ;比较设定个位
         lJMP      JSG             ;全部相等结束自动跳手动处运行
ZP:      NOP
ZDX:     MOV       A,DJBZ
         CJNE      A,#0FH,JSG      ;结束自动
         LJMP      ZDXH            ;跳自动循环
JTUL:    SETB      P1.1            ;(增加程序)
JSG:     LJMP      XSA             ;跳手动处运行
;======================================
DJZT:    MOV       R3,#0FH
DJZT1:   JB        P3.3,ZTS
         LCALL     DK
         JB        P3.3,ZTS
         LCALL     DK
         JB        P3.3,ZTS
         LJMP      ZTU
ZTS:     DJNZ      R3,DJZT1
         LJMP      ZTY
ZTU:     PUSH      PSW
         PUSH      ACC
/*         SETB      DJ              ;关电机*/
         CLR       EX1             ;关中断1
         MOV       DJBZ,#0F0H      ;紧急停机标志开
         MOV       R3,#0FH
DGD:     LCALL     DD1         ;<...>
         DJNZ      R3,DGD       ;<...>
         POP       ACC         ;<...>
         POP       PSW
ZTY:     NOP
         NOP
         NOP
         RETI
;======================================
SDZT:    MOV       R3,#0FH
SDZT1:   JB        P3.2,ZTQ        ;<...>
         LCALL     DK
         JB        P3.2,ZTQ        ;<...>
         LCALL     DK
         JB        P3.2,ZTQ        ;<...>
         LJMP      ZTR
ZTQ:     DJNZ      R3,SDZT1
         LJMP      ZTX
ZTR:     PUSH      PSW
         PUSH      ACC
         MOV       DJBZ,#0F0H      ;紧急停机标志开
         LCALL     DEL
         CLR       EX0             ;关中断0
         POP       ACC
         POP       PSW
ZTX:     NOP
         NOP
         NOP
         RETI
;======================================
CLRYJ:   NOP
         RET
WRI:     NOP
WRI1:    NOP
         RET                        ;写指令子程序
;======================================
WRD:     NOP              
WRD1:    NOP
         RET                       ;写数据子程序
;======================================
SDZXS:   MOV       R2,#0A3H
         MOV       R1,BDM
         MOV       COM,#94H
         LCALL     WRI
         MOV       DAT,R2
         LCALL     WRD
         MOV       DAT,R1   
         LCALL     WRD             ;SDBDM代码
         MOV       R1,SDM
         MOV       COM,#95H
         LCALL     WRI
         MOV       DAT,R2
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD             ;SDSDM代码
         MOV       R1,GDM
         MOV       COM,#96H
         LCALL     WRI
         MOV       DAT,R2
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD  
         RET                       ;SDGDM代码设定参数显示
;======================================
SJZXS:   MOV       R2,#0A3H
         MOV       R1,BDM
         MOV       COM,#94H
         LCALL     WRI
         MOV       DAT,R2
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD             ;SjBDM代码
         MOV       R1,SDM
         MOV       COM,#95H
         LCALL     WRI
         MOV       DAT,R2
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD             ;SjsDM代码
         MOV       R1,GDM
         MOV       COM,#96H
         LCALL     WRI
         MOV       DAT,R2
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD             ;SjgDM代码  实际参数显示
         RET
;======================================
XSCL:    MOV       A,SDG           ;设定值显示处理代码
         MOV       DPTR,#TAB
         MOVC      A,@A+DPTR
         MOV       GDM,A
         MOV       A,SDB
         MOV       DPTR,#TAB
         MOVC      A,@A+DPTR
         MOV       BDM,A
         MOV       A,SDS
         MOV       DPTR,#TAB
         MOVC      A,@A+DPTR
         MOV       SDM,A
         RET                       ;显示设定代码处理子程序
;======================================
XSCLB:   MOV       A,SJG          ;实际值显示处理代码
         MOV       DPTR,#TAB
         MOVC      A,@A+DPTR
         MOV       GDM,A
         MOV       A,SJS
         MOV       DPTR,#TAB
         MOVC      A,@A+DPTR
         MOV       SDM,A
         MOV       A,SJB
         MOV       DPTR,#TAB
         MOVC      A,@A+DPTR
         MOV       BDM,A
         RET                   ;显示代码处理子程序2
;======================================
DSCLC:   MOV       A,DSG            ;定时显示处理代码
         MOV       DPTR,#TAB
         MOVC      A,@A+DPTR
         MOV       GDM,A
         MOV       A,DSS
         MOV       DPTR,#TAB
         MOVC      A,@A+DPTR
         MOV       SDM,A
         RET                      ;时间代码处理子程序3
;======================================
DSCLL:   MOV       A,R0
         MOV       DPTR,#TAB
         MOVC      A,@A+DPTR
         MOV       GDM,A 
         MOV       A,R1
         MOV       DPTR,#TAB
         MOVC      A,@A+DPTR
         MOV       SDM,A
         RET                ;倒计时代码处理子程序3
;======================================
RD24:    PUSH      ACC
         SETB      SDA
         NOP
         NOP
         CLR       SCL
         NOP
         NOP
         LCALL     STAR
         MOV       A,#0A0H
         NOP
         NOP
         LCALL     SHIFT
         LCALL     ACK
         POP       ACC
         LCALL     SHIFT
         LCALL     ACK
         NOP
         NOP
         LCALL     STAR
         MOV       A,#0A1H
         LCALL     SHIFT
         NOP
         NOP
         LCALL     ACK
         NOP
         NOP
         SETB      SDA
         MOV       R7,#08H
         NOP
         NOP
         CLR       A
         NOP
         NOP
         SETB      SDA
RD0:     RL A
         SETB      SCL
         MOV       C,SDA
         MOV       ACC.0,C
         NOP
         NOP
         CLR       SCL
         DJNZ      R7,RD0
         RET
;======================================
WT24:    PUSH      ACC
         SETB      SDA
         NOP
         NOP
         NOP
         NOP
         CLR       SCL
         NOP
         NOP 
         LCALL     STAR
         MOV       A,#0A0H
         LCALL     SHIFT
         NOP
         NOP
         LCALL     ACK
         POP       ACC
         LCALL     SHIFT
         LCALL     ACK
         NOP
         NOP
         MOV       A,R0
         LCALL     SHIFT
         NOP
         NOP
         NOP
         LCALL     ACK
         LCALL     STOP
         LCALL     DK;延时6毫秒子程序
         RET
STAR:    CLR       SDA
         LCALL     DK;延时6毫秒子程序
         SETB      SDA       
         LCALL     DK;延时6毫秒子程序
         SETB      SCL
         CLR       SDA
         LCALL     DK;延时6毫秒子程序
         CLR       SCL
         RET
STOP:    CLR       SDA
         LCALL     DK;延时6毫秒子程序
         SETB      SCL
         LCALL     DK;延时6毫秒子程序
         SETB      SDA
         RET
ACK:     SETB      SCL
         LCALL     DK;延时6毫秒子程序
         CLR       SCL
         RET
SHIFT:   MOV       R7,#08H
SH01:    RLC       A
         MOV       SDA,C
         NOP
         SETB      SCL
         LCALL     DK;延时6毫秒子程序
         CLR       SCL
         DJNZ      R7,SH01
         RET
;======================================
D1:      MOV       R7,#0FFH
DE3:     MOV       R6,#06H ;0001.0100
DE2:     DJNZ      R6,DE2
         DJNZ      R7,DE3
         RET              ;延时6毫秒子程序
DI:      MOV       R6,#0FH
DII:     MOV       R5,#03H
DIII:    DJNZ      R5,DIII
         DJNZ      R6,DII
         RET
DEL:     MOV       R6,#0FFH
DPP:     MOV       R5,#06H ;0000.0110
DT1:     DJNZ      R5,DT1
         DJNZ      R6,DPP
         RET                ; 延时6毫秒子程序
DD1:     MOV       R7,#0FFH; 1100.0100
DDS:     MOV       R6,#0FFH
DDG:     DJNZ      R6,DDG
         DJNZ      R7,DDS
         RET          ;延时100毫秒子程序
DD10:    MOV       R7,#0FFH; 1001.0110
DDS0:    MOV       R6,#04H
DDG0:    MOV       R5,#01H
DDB0:    DJNZ      R5,DDB0
         DJNZ      R6,DDG0
         DJNZ      R7,DDS0
         RET              ;延时0.1毫秒子程序
DLE:     MOV       R6,#02H ;2X50=100
DWW:     ACALL     D1
         DJNZ      R6,DWW
         RET              ;延时100毫秒子程序
DK:      MOV       R5,#0FFH
DF:      MOV       R4,#03H
DR:      DJNZ      R4,DR
         DJNZ      R5,DF
         RET       ;延时1毫秒子程序
;======================================
DSXS:    MOV       R2,#0A3H   ;222222
         MOV       R1,SDM
         MOV       COM,#94H
         LCALL     WRI
         MOV       DAT,R2
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD     ;DSSDM代码
         MOV       R1,GDM
         MOV       COM,#95H
         LCALL     WRI
         MOV       DAT,R2
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD     ;DSGDM代码
         RET
;======================================
XSDJS:   NOP 
         MOV       COM,#85H
         LCALL     WRI
         MOV       DAT,#0A3H 
         LCALL     WRD
         MOV       DAT,SDM
         LCALL     WRD     ;DSSDM代码
         MOV       COM,#86H
         LCALL     WRI
         MOV       DAT,#0A3H 
         LCALL     WRD
         MOV       DAT,GDM
         LCALL     WRD     ;DSSDM代码
         RET
;======================================
XS09:    MOV       COM,#85H
         LCALL     WRI
         MOV       DAT,#0B6H;清除代码
         LCALL     WRD
         MOV       DAT,#0A0H;清除代码
         LCALL     WRD     ;清除显示计时
         MOV       COM,#86H
         LCALL     WRI
         MOV       DAT,#0B6H;清除代码
         LCALL     WRD
         MOV       DAT,#0A0H;清除代码
         LCALL     WRD     
         RET         ;清除显示计时
;======================================
XS0:     MOV       R1,#0D6H
         MOV       COM,#80H
         LCALL     WRI
         MOV       DAT,#0CAH
         LCALL     WRD   
         MOV       DAT,R1   
         LCALL     WRD       ;手
         MOV       R1,#0AFH
         MOV       COM,#81H
         LCALL     WRI
         MOV       DAT,#0B6H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD      ; 动
         MOV       R1,#0E8H   
         MOV       COM,#90H   
         LCALL     WRI
         MOV       DAT,#0C9H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD        ;She设
         MOV       R1,#0A8H
         MOV       COM,#91H
         LCALL     WRI
         MOV       DAT,#0B6H
         LCALL     WRD
         MOV        DAT,R1
         LCALL     WRD        ;din定
         MOV       R1,#0A8H
         MOV       COM,#92H
         LCALL     WRI
         MOV       DAT,#0B2H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD        ;bo波
         MOV       R1,#0B5H
         MOV       COM,#93H
         LCALL     WRI
         MOV       DAT,#0D6H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD        ;zhi值 
         RET
;========动作   显示==============================
XS1:     MOV       R1,#0CFH ;显示合模
         MOV       COM,#83H   
         LCALL     WRI
         MOV       DAT,#0BAH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD        ;合
         MOV       R1,#0A3H
         MOV       COM,#84H
         LCALL     WRI
         MOV       DAT,#0C4H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD        ;模
         RET
;========动作   显示==============================
XS2:     MOV       R1,#0A3H  ;显示模进
         MOV       COM,#83H   
         LCALL     WRI
         MOV       DAT,#0C4H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD  ;模
         MOV       R1,#0F8H
         MOV       COM,#84H
         LCALL     WRI
         MOV       DAT,#0BDH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD  ;进
         RET 
;========设定  显示==============================
XSHM:    MOV       R1,#0CFH ;显示合模
         MOV       COM,#95H   
         LCALL     WRI
         MOV       DAT,#0BAH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD        ;合
         MOV       R1,#0A3H
         MOV       COM,#96H
         LCALL     WRI
         MOV       DAT,#0C4H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD        ;模
         RET
;========动作   显示==============================
XS3:     MOV       R1,#0C4H  ;显示鼓脹
         MOV       COM,#83H   
         LCALL     WRI
         MOV       DAT,#0B9H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD            ;鼓
         MOV       R1,#0C7H
         MOV       COM,#84H
         LCALL     WRI
         MOV       DAT,#0D5H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD            ;脹
         RET   
;========设定  显示============================== 
XSGS:    MOV       R1,#0C4H ;显示鼓松
         MOV       COM,#95H   
         LCALL     WRI
         MOV       DAT,#0B9H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD ;鼓
         MOV       R1,#0C9H
         MOV       COM,#96H
         LCALL     WRI
         MOV       DAT,#0CBH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD ;松
         RET
;========动作   显示==============================     
XS4:     MOV       R1,#0C4H ;显示鼓松
         MOV       COM,#83H   
         LCALL     WRI
         MOV       DAT,#0B9H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD ;鼓
         MOV       R1,#0C9H
         MOV       COM,#84H
         LCALL     WRI
         MOV       DAT,#0CBH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD ;松
         RET
;========动作   显示==============================
XS5:     MOV       R1,#0C9H   ;显示成进
         MOV       COM,#83H   
         LCALL     WRI
         MOV       DAT,#0B3H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD    ;成
         MOV       R1,#0F8H
         MOV       COM,#84H
         LCALL     WRI
         MOV       DAT,#0BDH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD   ;进
         RET 
;========设定  显示==============================
XSKM:    MOV       R1,#0AAH ;显示开模
         MOV       COM,#95H   
         LCALL     WRI
         MOV       DAT,#0BFH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD  ;开
         MOV       R1,#0A3H
         MOV       COM,#96H
         LCALL     WRI
         MOV       DAT,#0C4H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD  ;模
         RET
;========动作   显示==============================
XS6:     MOV       R1,#0C9H   ;显示成退
         MOV       COM,#83H   
         LCALL     WRI
         MOV       DAT,#0B3H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD    ;成 退    
         MOV       R1,#0CBH
         MOV       COM,#84H
         LCALL     WRI
         MOV       DAT,#0CDH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD    ;退
         RET         ; 
;========设定  显示==============================
XSMT:    MOV       R1,#0A3H ;显示模退
         MOV       COM,#95H   
         LCALL     WRI
         MOV       DAT,#0C4H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD    ;模
         MOV       R1,#0CBH
         MOV       COM,#96H
         LCALL     WRI
         MOV       DAT,#0CDH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD    ;退
         RET
;========动作   显示==============================
XS7:     MOV       R1,#0AAH ;显示开模
         MOV       COM,#83H   
         LCALL     WRI
         MOV       DAT,#0BFH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD  ;开
         MOV       R1,#0A3H
         MOV       COM,#84H
         LCALL     WRI
         MOV       DAT,#0C4H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD  ;模
         RET
;========动作   显示==============================
XS8:     MOV       R1,#0A3H ;显示模退
         MOV       COM,#83H   
         LCALL     WRI
         MOV       DAT,#0C4H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD    ;模
         MOV       R1,#0CBH
         MOV       COM,#84H
         LCALL     WRI
         MOV       DAT,#0CDH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD    ;退
         RET
;========动作   显示清除================
XS9:     MOV       R1,#0A0H ;
         MOV       COM,#83H   
         LCALL     WRI
         MOV       DAT,#0B6H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD        ;清除8384H
         MOV       COM,#84H
         LCALL     WRI
         MOV       DAT,#0B6H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD        ;
         RET 
;======================================     
XSYX:    MOV       R1,#0EBH
         MOV       COM,#83H
         LCALL     WRI
         MOV       DAT,#0C7H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD  ;请
         MOV       R1,#0B4H
         MOV       COM,#84H
         LCALL     WRI
         MOV       DAT,#0B0H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD  ;按   请按
         MOV       R1,#0CBH   
         MOV       COM,#85H   
         LCALL     WRI
         MOV       DAT,#0D4H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD  ;运
         MOV       COM,#86H
         LCALL     WRI
         MOV       DAT,#0D0H
         LCALL     WRD
         MOV       DAT,#0D0H
         LCALL     WRD  ;行
         RET 
;===========以下程序09年11:17修改===============
XSSJSD:  MOV       R1,#0E8H   
         MOV       COM,#90H   
         LCALL     WRI
         MOV       DAT,#0C9H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD          ;She设
         MOV       R1,#0A8H
         MOV       COM,#91H
         LCALL     WRI
         MOV       DAT,#0B6H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD          ;din定
         MOV       R1,#0B1H   
         MOV       COM,#92H   
         LCALL     WRI
         MOV       DAT,#0CAH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD           ;Shi时
         MOV       R1,#0E4H
         MOV       COM,#93H
         LCALL     WRI
         MOV       DAT,#0BCH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD           ;jian间
CSXS:    MOV       R1,#0CEH
         MOV       COM,#80H
         LCALL     WRI
         MOV       DAT,#0B2H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD           ;cai参
         MOV       R1,#0FDH
         MOV       COM,#81H
         LCALL     WRI
         MOV       DAT,#0CAH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD           ;shu数
         MOV       R1,#0E8H   
         MOV       COM,#82H   
         LCALL     WRI
         MOV       DAT,#0C9H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD           ;She设
         MOV       R1,#0A8H
         MOV       COM,#83H
         LCALL     WRI
         MOV       DAT,#0B6H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD           ;din定
         RET
;===============================================
XSCSGL:  MOV       R1,#0CEH
         MOV       COM,#80H
         LCALL     WRI
         MOV       DAT,#0B2H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD           ;cai参
         MOV       R1,#0FDH
         MOV       COM,#81H
         LCALL     WRI
         MOV       DAT,#0CAH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD           ;shu数
         MOV       R1,#0E9H   
         MOV       COM,#82H   
         LCALL     WRI
         MOV       DAT,#0B9H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD           ;gui归
         MOV       R1,#0E3H
         MOV       COM,#83H
         LCALL     WRI
         MOV       DAT,#0C1H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD           ;Ling零
         MOV       COM,#84H
         LCALL     WRI
         MOV       DAT,#3FH
         LCALL     WRD
         MOV       DAT,#0A3H
         LCALL     WRD           ;?
         RET
;===============================================
CSGL:    MOV       R1,#0D1H
         MOV       COM,#81H
         LCALL     WRI
         MOV       DAT,#0D2H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD           ;yi已
         MOV       R1,#0E9H   
         MOV       COM,#82H   
         LCALL     WRI
         MOV       DAT,#0B9H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD           ;gui归
         MOV       R1,#0E3H
         MOV       COM,#83H
         LCALL     WRI
         MOV       DAT,#0C1H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD           ;Ling零
         RET
;===============================================
QCYX:    MOV       COM,#83H
         LCALL     WRI
         MOV       DAT,#0B6H;清除代码
         LCALL     WRD
         MOV       DAT,#0A0H;清除代码
         LCALL     WRD     ;清除显示计时
         MOV       COM,#84H
         LCALL     WRI
         MOV       DAT,#0B6H;清除代码
         LCALL     WRD
         MOV       DAT,#0A0H;清除代码
         LCALL     WRD    
         MOV       COM,#85H
         LCALL     WRI
         MOV       DAT,#0B6H;清除代码
         LCALL     WRD
         MOV       DAT,#0A0H;清除代码
         LCALL     WRD     ;清除显示计时
         MOV       COM,#86H
         LCALL     WRI
         MOV       DAT,#0B6H;清除代码
         LCALL     WRD
         MOV       DAT,#0A0H;清除代码
         LCALL     WRD     
         RET 
;======================================      
JJS1:    INC       R0
         CJNE      R0,#0AH,GJD
         AJMP      SDJ1
GJD:     LJMP      FHA
SDJ1:    MOV       R0,#00H
         INC       R1
         CJNE      R1,#0AH,SDJ
         LJMP      BDJ1
SDJ:     LJMP      FHA
BDJ1:    MOV       R1,#00H
         INC       R2
         CJNE      R2,#0AH,BDJ
         AJMP      QDJ1
BDJ:     AJMP      FHA
QDJ1:    MOV       A,#00H
         MOV       R0,A
         MOV       R1,A
         MOV       R2,A
FHA:     RET       ;设定加子程序
;======================================
WTSDZ:   MOV       A,#03H
         MOV       R0,SDG
         LCALL     WT24
         MOV       A,#04H
         MOV       R0,SDS
         LCALL     WT24
         MOV       A,#05H
         MOV       R0,SDB
         LCALL     WT24
         RET
WTDS:    MOV       A,#01H
         MOV       R0,DSG
         LCALL     WT24
         MOV       A,#02H
         MOV       R0,DSS
         LCALL     WT24
         RET   ;写存储定时值子程序
;======================================
JIJS:    CJNE      R0,#00H,GWJ1;
         AJMP      SWJ;
GWJ1:    DEC       R0
         LJMP      FHC;
SWJ:     CJNE      R1,#00H,SWJ1;
         LJMP      BWJ;
SWJ1:    DEC       R1
         MOV       R0,#09H;
         LJMP      FHC
BWJ:     CJNE      R2,#00H,BWJ1;
         LJMP      QWJ
BWJ1:    DEC       R2;
         MOV       R0,#09H;
         MOV       R1,#09H;
         LJMP      FHC;
QWJ:     MOV       R0,#09H;
         MOV       R1,#09H;
         MOV       R2,#09H;
FHC:     RET ;  
;======================================
XSBZD:   MOV       R1,#0EBH
         MOV       COM,#80H
         LCALL     WRI
         MOV       DAT,#0B0H
         LCALL     WRD   
         MOV       DAT,R1   
         LCALL     WRD       ;半
         MOV       R1,#0D4H
         MOV       COM,#81H
         LCALL     WRI
         MOV       DAT,#0D7H
         LCALL     WRD   
         MOV       DAT,R1   
         LCALL     WRD       ;自
         MOV       R1,#0AFH
         MOV       COM,#82H
         LCALL     WRI
         MOV       DAT,#0B6H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD      ; 动
SJBZ:    MOV       R1,#0B5H   
         MOV       COM,#90H   
         LCALL     WRI
         MOV       DAT,#0CAH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD        ;实
         MOV       R1,#0CAH
         MOV       COM,#91H
         LCALL     WRI
         MOV       DAT,#0BCH
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD        ;际
         MOV       R1,#0A8H
         MOV       COM,#92H
         LCALL     WRI
         MOV       DAT,#0B2H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD        ;bo波
         MOV       R1,#0B5H
         MOV       COM,#93H
         LCALL     WRI
         MOV       DAT,#0D6H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD        ;zhi值 
         RET
;======================================
XSZD:    MOV       R1,#0D4H
         MOV       COM,#80H
         LCALL     WRI
         MOV       DAT,#0D7H
         LCALL     WRD   
         MOV       DAT,R1   
         LCALL     WRD       ;自
         MOV       R1,#0AFH
         MOV       COM,#81H
         LCALL     WRI
         MOV       DAT,#0B6H
         LCALL     WRD
         MOV       DAT,R1
         LCALL     WRD      ; 动
         LJMP      SJBZ
;======================================
DSJA:    INC       R0     
         CJNE      R0,#0AH,GJDA
         AJMP      DQJ1
GJDA:    LJMP      FHB
DQJ1:    MOV       R0,#00H
         INC       R1
         CJNE      R1,#0AH,DSJ
         AJMP      DBJ1
DSJ:     AJMP      FHB
DBJ1:    MOV       R0,#00H
         MOV       R1,#00H
FHB:     RET          ;定时加子程序
;======================================
DSJI:    CJNE      R0,#00H,GJ1
         AJMP      SJ
GJ1:     DEC       R0
         AJMP      FHD
SJ:      CJNE      R1,#00H,SJA
         AJMP      BJ
SJA:     DEC       R1
         MOV       R0,#09H 
         AJMP      FHD
BJ:      MOV       R0,#09H
         MOV       R1,#09H
FHD:     RET           ;定时减子程序
TMM:     NOP     
         RET
;======================================
GOUT:    CLR       G2
         SETB      YL;关压力
         RET
K137:    CLR       G1
         SETB      G2
         RET
OUTX:   // CLR       PBA
        // CLR       PBB
        // CLR       PBC  
        // SETB        G2;开137
         RET    
OUT1:    CLR       G2;关137
         CLR       P3.6
         CLR       YL ;压力开
         RET        ;0
OUT2:    CLR       G2;关137
         CLR       P3.7
         CLR       YL ;压力开
         RET       ;1
OUT22:   CLR       G2;关137
         CLR       P3.6
         CLR       P3.7
         CLR       YL
         RET       ;
OUT3:    CLR       PBA
         SETB      PBB
         CLR       PBC  
         CLR       G1
         SETB      G2;开137
         CLR       YL ;压力开
         RET       ;2
OUT33:   CLR       PBA
         SETB      PBB
         CLR       PBC  
         CLR       G1
         SETB      G2;开137
         CLR       P3.6
         CLR       P3.7
         CLR       YL ;压力开
         RET       ;2
OUT4:    SETB      PBA
         SETB      PBB
         CLR       PBC
         CLR       G1
         SETB      G2
         CLR       YL ;压力开
         RET    ;3
OUT44:   SETB      PBA
         SETB      PBB
         CLR       PBC
         CLR       G1
         SETB      G2
         CLR       YL ;压力开
         CLR       P3.6
         CLR       P3.7
         RET        ;3
OUT5:    CLR       PBA
         CLR       PBB
         SETB      PBC
         CLR       G1
         SETB      G2
         CLR       YL ;压力开
         RET    ;4
OUT6:    SETB      PBA
         CLR       PBB
         SETB      PBC
         CLR       G1
         SETB      G2
         CLR       YL ;压力开
         RET    ;5
OUT7:    CLR       PBA
         SETB      PBB
         SETB      PBC
         CLR       G1
         SETB      G2
         CLR       YL ;压力开
         RET    ;6
OUT8:    CLR       MT
         CLR       YL   ;压力开
         RET    ;7
GOUT44:  SETB      P3.6
         SETB      P3.7
         ACALL     GOUT
         RET
GOUT1:   SETB      P3.6
         SETB      YL
         CLR       G2
         RET
GOUT2:   SETB      P3.7
         SETB      YL
         CLR       G2
         RET
DEE:     NOP
         RET
;======================================
DJS1:    MOV       R0,DSG
         MOV       R1,DSS
JKA:     LCALL     DSCLL;定时显示代码处理子程序
         LCALL     XSDJS;显示计时
JKK:     LCALL     DD10 ;延时0.1毫秒子程序
         MOV       A,DJBZ
         CJNE      A,#0FH,JSDS ;停机标志不等结束定时
         CJNE      R0,#00H,DSGJ;显示
         AJMP      DSSJ
DSGJ:    DEC       R0
         LJMP      JKA  ;个位显示
DSSJ:    CJNE      R1,#00H,DSSJ1
         AJMP      JSDS
DSSJ1:   LCALL     DSCLL;定时显示代码处理子程序
         LCALL     XSDJS;显示计时
         LCALL     DD10
         MOV       R0,#09H
         DEC       R1
         LCALL     DSCLL;定时显示代码处理子程序
         LJMP      JKA;自动半自动检测开关前先选通输入74hc245  
JSDS:    LCALL     XS09;
         RET       ;结束定时
;============以下四段时间倒计时==== 
DJS2:    MOV       R0,GWHC
         MOV       R1,SWHC
JKB:     LCALL     DSCLTM;定时显示代码处理子程序
         LCALL     DSXSTM;显示计时
JKL:     LCALL     DD10 ;延时0.1毫秒子程序
         CJNE      R0,#00H,DSGJB;显示
         AJMP      DSSJB
DSGJB:   DEC       R0
         LJMP      JKBB  ;个位显示
DSSJB:   CJNE      R1,#00H,DSSJ2
         AJMP      JSDSB
DSSJ2:   LCALL     DSCLTM;定时显示代码处理子程序
         LCALL     DSXSTM;显示计时
         LCALL     DD10
         MOV       R0,#09H
         DEC       R1
         LJMP      JKBB;自动半自动检测开关前先选通输入74hc245  
JSDSB:   LCALL     XS09;
         RET       ;结束定时
JKBB:    MOV       GWHC,R0
         MOV       SWHC,R1
         NOP
         NOP
         AJMP      JKB
;==================================
DSCLTM:  MOV       A,GWHC
         MOV       DPTR,#TAB
         MOVC      A,@A+DPTR
         MOV       GDM,A
         MOV       A,SWHC
         MOV       DPTR,#TAB
         MOVC      A,@A+DPTR
         MOV       SDM,A 
         RET  
;==================================        
DSXSTM:  MOV       COM,#85H
         LCALL     WRI
         MOV       DAT,#0A3H 
         LCALL     WRD
         MOV       DAT,SDM
         LCALL     WRD     ;DSSDM代码
         MOV       COM,#86H
         LCALL     WRI
         MOV       DAT,#0A3H 
         LCALL     WRD
         MOV       DAT,GDM
         LCALL     WRD     ;DSSDM代码
         NOP
         RET 
;===========四段设定时间显示===========
WTDST1:  MOV       A,#09H
         MOV       R0,KMG
         LCALL     WT24
         MOV       A,#0AH
         MOV       R0,KMS
         LCALL     WT24
         NOP
         RET
;=============开模=====================
WTDST2:  MOV       A,#0BH
         MOV       R0,GSG
         LCALL     WT24
         MOV       A,#0CH
         MOV       R0,GSS
         LCALL     WT24
         NOP
         RET
;=============鼓松=====================
WTDST3:  MOV       A,#0DH
         MOV       R0,HMG
         LCALL     WT24
         MOV       A,#0EH
         MOV       R0,HMS
         LCALL     WT24
         NOP
         RET   
;=============合模=====================
WTDST4:  MOV       A,#10H
         MOV       R0,MTG
         LCALL     WT24
         MOV       A,#11H
         MOV       R0,MTS
         LCALL     WT24
         NOP
         RET         
;=============模退====================== 
         ORG       1400H  ;鼓松成进成退模进模退实际
TAB:     DB        0B0H,0B1H,0B2H,0B3H,0B4H
         DB        0B5H,0B6H,0B7H,0B8H,0B9H
         END        ;L:2206  2013 年5月12日调试结束还需修正模退结束关压力
0 0
原创粉丝点击