液压机汇编程序

2019-04-13 12:37发布

 ;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毫秒子程序
&nbs