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

📄 current2.lst

📁 基于485的51单片机多机通讯程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
 784   1              urgent_stop=0;
 785   1              current_err=0;
 786   1              err_ok=0;
 787   1              err=0;
 788   1      BEGIN:  
 789   1              if(urgent_stop==1)
 790   1              {
 791   2                      urgent_stop=0;
 792   2                      err_ok=0;
 793   2      //              EX1=1;
 794   2                      EX0=1;
 795   2              }       
 796   1              IEN1=IEN1&0x40; 
 797   1              gate=0;
 798   1              COM=0X76;
 799   1              COUNT1=0;
C51 COMPILER V7.06   CURRENT2                                                              10/19/2005 14:43:02 PAGE 14  

 800   1              COUNT1=0;
 801   1              COM=0XB2;
 802   1              COUNT2=0;
 803   1              COUNT2=0;
 804   1              current_out=1;
 805   1              current_enable=0;
 806   1              con_hf=1;
 807   1              con_gas1=1;
 808   1              con_gas2=1;
 809   1              work=0;                         //等待状态      
 810   1              called=0;
 811   1              start=0;
 812   1              need_para=0;
 813   1              open_gas1=0;
 814   1              open_gas2=0;
 815   1              ignit_ok=0;
 816   1              decrease=0;
 817   1              igniting=0;
 818   1              pre_melt_ok=0;
 819   1              R_ANSW=0;
 820   1              S_ANSW=0;
 821   1              POINTER1=0;
 822   1              RSUM=0;
 823   1              POINTER0=0;
 824   1              SSUM=0;
 825   1              r_byte_nums=4;
 826   1              demand=0;
 827   1              overtime=0;
 828   1              resend=0;
 829   1              ans=0;
 830   1              receive_p_out=0;
 831   1              receive_p_in=0;
 832   1              edge=0;
 833   1              ad_v=0;
 834   1              ad_i=0;
 835   1              AD1=0;
 836   1              AD2=0;
 837   1              AD3=0;
 838   1              AD4=0;
 839   1              AD5=0;
 840   1              tab2=0;
 841   1              tab3=0;
 842   1              IM8=0;
 843   1              IM4=0;
 844   1              IB8=0;
 845   1              IB4=0;
 846   1              UPD=0;
 847   1              ahf_ok=0;
 848   1              ad_finish=0;
 849   1              i_slope_ok=0;
 850   1              nonce_sec=0;
 851   1              in_sector=0;
 852   1              new_sec=0;
 853   1              close_gas1=0;
 854   1              close_gas2=0;
 855   1              close_gas1_ok=0;
 856   1              close_gas2_ok=0;
 857   1              close_gas_ok=0;
 858   1              c_cm1=0;
 859   1              to_begin=0;
 860   1      
 861   1              PWMP=51;                        //产生采样保持脉冲,1K
C51 COMPILER V7.06   CURRENT2                                                              10/19/2005 14:43:02 PAGE 15  

 862   1              PWM0=128;
 863   1              PWM1=128;
 864   1              EX0=1;
 865   1              while(start==0)
 866   1              {
 867   2                      if(called==1)
 868   2                      {
 869   3                              ini_sbuf(M_main,infor,com_calling,S_ANSW,0,0,0);
 870   3                              s_byte_nums=6;
 871   3                              TR_noans();
 872   3                              called=0;
 873   3                      }
 874   2                      if(receive_p_out==1)
 875   2                      {
 876   3                              point=&pp.t01;
 877   3                              for(p_sec=0;p_sec<25;p_sec++)
 878   3                                      *(point+p_sec)=rbuffer[p_sec*2+2]*256+rbuffer[p_sec*2+3];
 879   3                              pp.syn_type=rbuffer[52];
 880   3                              
 881   3                              ini_sbuf(M_main,answer,OK,0,0,0,0);
 882   3                              s_byte_nums=4;
 883   3                              TR_noans();
 884   3                              demand=0;
 885   3                              receive_p_out=0;
 886   3                              
 887   3                      }
 888   2      
 889   2                      if(receive_p_in==1)
 890   2                      {
 891   3                              point=&pp.x[nonce_sec][0];
 892   3                              for(p_sec=0;p_sec<10;p_sec++)
 893   3                                      *(point+p_sec)=rbuffer[p_sec*2+3]*256+rbuffer[p_sec*2+4];
 894   3      
 895   3                              ini_sbuf(M_main,answer,OK,0,0,0,0);
 896   3                              s_byte_nums=4;
 897   3                              TR_noans();
 898   3                              demand=0;
 899   3                              receive_p_in=0;
 900   3                      }
 901   2                      
 902   2                      if(urgent_stop==1)
 903   2                              goto BEGIN;
 904   2              }
 905   1              EX1=1;
 906   1              n_pulse=pp.t14%256;
 907   1              n_base=pp.t15%256;
 908   1      
 909   1              work=3;                                 //进入焊接过程
 910   1              IEN1=IEN1&0xBF;                         //禁止CM2,停水计时
 911   1              CML1=TML2+0XE2;         //峰值时间
 912   1              if(CML1<TML2)
 913   1                      CMH1=(TMH2+1)+0X04;
 914   1              else
 915   1                      CMH1=TMH2+0X04;
 916   1              CML2=TML2+0x24;
 917   1              if(CML2<TML2)
 918   1                      CMH2=TMH2+1+0xF4;
 919   1              else
 920   1                      CMH2=TMH2+0xF4;
 921   1              delt1=pp.i14-pp.i12;
 922   1              delt1=1000000/delt1;
 923   1              delt1=delt1*pp.t13;
C51 COMPILER V7.06   CURRENT2                                                              10/19/2005 14:43:02 PAGE 16  

 924   1      //      delt1=(pp.t13*1000000)/(pp.i14-pp.i12);
 925   1              if(delt1%256>=200)
 926   1                      delt1=delt1/256+1;
 927   1              else
 928   1                      delt1=delt1/256;
 929   1              
 930   1              if(YOUHU==1)
 931   1              {
 932   2                      while(igniting==0)
 933   2                      {
 934   3                              if(urgent_stop==1)
 935   3                                      goto BEGIN;
 936   3                              if(open_gas1==1)
 937   3                              {
 938   4                                      ini_sbuf(M_main,answer,S_ANSW,0,0,0,0);
 939   4                                      s_byte_nums=4;
 940   4                                      TR_noans();
 941   4                                      con_gas1=0;             //开气1
 942   4                                      con_water=0;            //开水
 943   4                                      open_gas1=0;
 944   4                              }
 945   3                              if(open_gas2==1)
 946   3                              {
 947   4                                      ini_sbuf(M_main,answer,S_ANSW,0,0,0,0);
 948   4                                      s_byte_nums=4;
 949   4                                      TR_noans();
 950   4                                      con_gas2=0;             //开气2
 951   4                                      con_water=0;            //开水
 952   4                                      open_gas2=0;
 953   4                              }
 954   3                              if(resend==1)
 955   3                              {
 956   4                                      ini_sbuf(M_main,answer,S_ANSW,0,0,0,0);
 957   4                                      s_byte_nums=4;
 958   4                                      TR_noans();
 959   4                                      resend=0;
 960   4                              }
 961   3                      }
 962   2              }
 963   1              else
 964   1              {
 965   2                      while(ignit_ok==0)
 966   2                      {
 967   3                              if(urgent_stop==1)
 968   3                                      goto BEGIN;
 969   3                              if(open_gas1==1)
 970   3                              {
 971   4                                      ini_sbuf(M_main,answer,S_ANSW,0,0,0,0);
 972   4                                      s_byte_nums=4;
 973   4                                      TR_noans();
 974   4                                      con_gas1=0;             //开气1
 975   4                                      con_water=0;            //开水
 976   4                                      open_gas1=0;
 977   4                              }
 978   3                              if(open_gas2==1)
 979   3                              {
 980   4                                      ini_sbuf(M_main,answer,S_ANSW,0,0,0,0);
 981   4                                      s_byte_nums=4;
 982   4                                      TR_noans();
 983   4                                      con_gas2=0;             //开气2
 984   4                                      con_water=0;            //开水
 985   4                                      open_gas2=0;
C51 COMPILER V7.06   CURRENT2                                                              10/19/2005 14:43:02 PAGE 17  

 986   4                              }
 987   3                              if(resend==1)
 988   3                              {
 989   4                                      ini_sbuf(M_main,answer,S_ANSW,0,0,0,0);
 990   4                                      s_byte_nums=4;
 991   4                                      TR_noans();
 992   4                                      resend=0;
 993   4                              }
 994   3                      }
 995   2              }
 996   1              ini_sbuf(M_main,answer,S_ANSW,0,0,0,0);
 997   1              s_byte_nums=4;
 998   1              TR_noans();
 999   1      
1000   1              I1=pp.i11;
1001   1              IM=(unsigned int)(I1*0.41);
1002   1              IM8=IM%256;                     //(I1*4096/10000)%256
1003   1              IM4=IM/256;                     //(I1*4096/10000)/256
1004   1              UPD=0X00;                       //引弧电流
1005   1      
1006   1              if(YOUHU==1)
1007   1              {
1008   2                      current_enable=1;                               //开电源使能
1009   2                      if(pp.ignit==HF)
1010   2                              con_hf=0;               //开高频
1011   2                      avc_ok=P5;
1012   2                      avc_ok=avc_ok&0X04;
1013   2                      while(avc_ok==4)
1014   2                      {
1015   3                              avc_ok=P5;
1016   3                              avc_ok=avc_ok&0X04;
1017   3                              if(urgent_stop==1)
1018   3                                      goto BEGIN;
1019   3                      }
1020   2                      if(pp.ignit==HF)                //引弧方式HF
1021   2                              con_hf=1;               //关高频
1022   2                      delay(2);
1023   2      RE_IGNIT:       avc_ok=P5;
1024   2                      avc_ok=avc_ok&0X04;
1025   2                      if(avc_ok==4)
1026   2                      {
1027   3                              if(pp.ignit==HF)
1028   3                                      con_hf=0;               //开高频
1029   3                              goto RE_IGNIT;
1030   3                      }
1031   2                      else
1032   2                      {
1033   3      
1034   3                              delay(2);
1035   3                              avc_ok=P5;
1036   3                              avc_ok=avc_ok&0X04;
1037   3                              if(avc_ok==4)
1038   3                              {
1039   4                                      if(pp.ignit==HF)
1040   4                                              con_hf=0;               //开高频
1041   4                                      goto RE_IGNIT;
1042   4                              }
1043   3                              else
1044   3                              {
1045   4                                      if(pp.ignit==HF)                //引弧方式HF
1046   4                                              con_hf=1;               //关高频
1047   4                                      ini_sbuf(M_main,command,com_ignit_ok,0,0,0,0);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -