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

📄 avc.lst

📁 基于485的51单片机多机通讯程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
 703   3                              s_byte_nums=get_byte_nums(infor);
 704   3                              TR_noans();
 705   3                              called=0;
 706   3                      }
 707   2      
 708   2                      if(receive_p_out==1)
 709   2                      {
 710   3                              point=&pp.k5;
 711   3                              for(p_sec=0;p_sec<14;p_sec++)
 712   3                                      *(point+p_sec)=rbuffer[p_sec*2+2]*256+rbuffer[p_sec*2+3];
 713   3                              ini_sbuf(M_main,answer,S_ANSW,0,0,0);
 714   3                              s_byte_nums=4;
 715   3                              TR_noans();
 716   3      //                      demand=0;
 717   3                              receive_p_out=0;
 718   3                      }
 719   2      
 720   2                      if(receive_p_in==1)
 721   2                      {
 722   3                              point=&pp.x[nonce_sec][0];
 723   3                              for(p_sec=0;p_sec<4;p_sec++)
 724   3                                      *(point+p_sec)=rbuffer[p_sec*2+3]*256+rbuffer[p_sec*2+4];
 725   3                              ini_sbuf(M_main,answer,S_ANSW,0,0,0);
 726   3                              s_byte_nums=4;
 727   3                              TR_noans();
 728   3      //                      demand=0;
 729   3                              receive_p_in=0;
 730   3                      }
 731   2      
 732   2                      if(avc_up==1)
 733   2                      {
 734   3                              avc_dir=1;              //方向——上
 735   3                              avc_enable=0;           //使能
C51 COMPILER V7.06   AVC                                                                   06/10/2005 14:33:44 PAGE 13  

 736   3                              gate=1;
 737   3                              avc_up=0;
 738   3                      }
 739   2                      if(avc_down==1)
 740   2                      {
 741   3                              avc_dir=0;              //方向——下
 742   3                              avc_enable=0;
 743   3                              gate=1;
 744   3                              avc_down=0;
 745   3                      }
 746   2                      if(motor_stop==1)
 747   2                      {
 748   3                              gate=0;                 //关8254门控信号
 749   3                              avc_enable=1;                   //关弧长使能
 750   3                              motor_stop=0;
 751   3                      }
 752   2                      if(urgent_stop==1)
 753   2                              goto BEGIN;
 754   2              }
 755   1      
 756   1              get_vc();
 757   1              if(pp.k5==ON)
 758   1                      get_SENS();
 759   1              else
 760   1                      SENS=5;
 761   1              if(pp.k1==DC)
 762   1              {
 763   2                      pp.avc_type=SP;
 764   2                      pulse_base=1;
 765   2              }
 766   1              work=3;
 767   1              do
 768   1              {
 769   2                      if(start_avc==1)                        //开始弧长
 770   2                      {
 771   3                              ini_sbuf(M_main,answer,S_ANSW,0,0,0);
 772   3                              s_byte_nums=4;
 773   3                              TR_noans();
 774   3                              temp_voltage=0;
 775   3                              externel_voltage=1;
 776   3                              c_sample=0;
 777   3                              CTCON=CTCON&0X3F;
 778   3                              COM=0X36;
 779   3                              COUNT0=out0%256;
 780   3                              COUNT0=out0/256;
 781   3                              COM=0X76;
 782   3                              COUNT1=out1%256;
 783   3                              COUNT1=out1/256;
 784   3                              if(pp.k1==PDC)
 785   3                              {
 786   4                                      if(pp.avc_type==SP||pp.avc_type==SPB)
 787   4                                      {
 788   5                                              pulse_base=0;
 789   5                                              CTCON=CTCON|0X40;       //CT3上升沿
 790   5                                      }
 791   4                                      else
 792   4                                      {
 793   5                                              pulse_base=1;
 794   5                                              CTCON=CTCON|0X80;       //CT3下降沿
 795   5                                      }
 796   4                                      IEN1=IEN1|0X08;                 //允许CT3
 797   4                              }
C51 COMPILER V7.06   AVC                                                                   06/10/2005 14:33:44 PAGE 14  

 798   3                              if(pp.k1==DC)
 799   3                              {
 800   4                                      avc_ok=1;
 801   4                                      c_sample=0;
 802   4                                      CTCON=CTCON|0x20;       //CT2下降沿
 803   4                                      IEN1=IEN1|0X04;         //允许CT2,采样保持脉冲
 804   4                              }
 805   3      
 806   3                              start_avc=0;
 807   3                      }
 808   2      
 809   2                      if(avc_ok==1&&need_para==1)             //显示弧压
 810   2                      {
 811   3                              U51=AD5;
 812   3                              ini_sbuf(M_main,parameter1,0,0,0,0);
 813   3                              sbuffer[2]=U51/256;
 814   3                              sbuffer[3]=U51%256;
 815   3                              s_byte_nums=5;
 816   3                              TR_noans();
 817   3                              need_para=0;
 818   3                      }
 819   2      
 820   2                      if(avc_up==1)
 821   2                      {
 822   3                              if(pp.k5==OFF)
 823   3                              {
 824   4                                      COM=0X76;
 825   4                                      COUNT1=10%256;
 826   4                                      COUNT1=10/256;
 827   4                                      avc_dir=1;              //方向——上
 828   4                                      avc_enable=0;           //使能
 829   4                                      CTCON=CTCON|0X02;
 830   4                                      IEN1=IEN1|0X01;
 831   4                                      gate=1;
 832   4                              }
 833   3                              else
 834   3                              {
 835   4                                      if(in_sector==1)
 836   4                                              vc1=vc1+pp.x[nonce_sector][28]*100;
 837   4                                      else
 838   4                                              vc1=vc1+pp.du51*100;
 839   4                                      if(pp.avc_type==SB||pp.avc_type==SPB)
 840   4                                              vc2=vc1+200;
 841   4      
 842   4                              }
 843   3                              avc_up=0;
 844   3                      }
 845   2      
 846   2                      if(avc_down==1)
 847   2                      {
 848   3                              if(pp.k5==OFF)
 849   3                              {
 850   4                                      COM=0X76;
 851   4                                      COUNT1=10%256;
 852   4                                      COUNT1=10/256;
 853   4                                      avc_dir=0;              //方向——上
 854   4                                      avc_enable=0;           //使能
 855   4                                      CTCON=CTCON|0X02;
 856   4                                      IEN1=IEN1|0X01;
 857   4                                      gate=1;
 858   4                              }
 859   3                              else
C51 COMPILER V7.06   AVC                                                                   06/10/2005 14:33:44 PAGE 15  

 860   3                              {
 861   4                                      if(in_sector==1)
 862   4                                              vc1=vc1-pp.x[nonce_sector][28]*100;
 863   4                                      else
 864   4                                              vc1=vc1-pp.du51*100;
 865   4                                      if(pp.avc_type==SB||pp.avc_type==SPB)
 866   4                                              vc2=vc1+200;
 867   4                              }
 868   3                              avc_down=0;
 869   3                      }
 870   2      
 871   2                      if(sector==1)                           //进入新区间
 872   2                      {
 873   3                              if(avc_ok==1)
 874   3                              {
 875   4                                      SENS=pp.x[nonce_sector][27];
 876   4                                      if(pp.avc_type==SP||pp.avc_type==SPB&&pulse_base==1)
 877   4                                              vc1=pp.x[nonce_sector][25]*100-100;
 878   4                                      else
 879   4                                      {
 880   5                                              if(pp.avc_type==SB||pp.avc_type==SPB&&pulse_base==0)
 881   5                                                      vc1=pp.x[nonce_sector][26]*100-100;
 882   5                                      }
 883   4                                      vc2=vc1+200;
 884   4                              }
 885   3                              sector=0;
 886   3                      }
 887   2      
 888   2                      if(avc_ok==1&&stop_avc==1)
 889   2                      {
 890   3                              ini_sbuf(M_main,answer,S_ANSW,0,0,0);
 891   3                              s_byte_nums=4;
 892   3                              TR_noans();
 893   3                              gate=0;
 894   3                              IEN1=IEN1&0XF2;         //禁止CT0,CT2,CT3
 895   3                              avc=0;
 896   3                              avc_ok=0;
 897   3                              stop_avc=0;
 898   3                              externel_voltage=0;
 899   3                              temp_voltage=1;
 900   3                      }
 901   2      /*
 902   2                      if(resend==1)
 903   2                      {
 904   2                              POINTER1=0;
 905   2                              RSUM=0;
 906   2                              ini_sbuf(M_main,answer,S_ANSW,0,0,0);
 907   2                              s_byte_nums=get_byte_nums(answer);
 908   2                      }
 909   2      */
 910   2              }while(decrease==0);
 911   1      
 912   1              if(avc_ok==1)
 913   1              {
 914   2                      gate=0;
 915   2                      IEN1=IEN1&0XF2;         //禁止CT0,CT2,CT3
 916   2                      avc=0;
 917   2                      avc_ok=0;
 918   2                      stop_avc=0;
 919   2                      externel_voltage=0;
 920   2                      temp_voltage=1;
 921   2              }
C51 COMPILER V7.06   AVC                                                                   06/10/2005 14:33:44 PAGE 16  

 922   1      
 923   1              if(pp.h52>0)
 924   1              {
 925   2                      while(lift==0)
 926   2                      {
 927   3                              if(urgent_stop==1)
 928   3                                      goto BEGIN;
 929   3                      }
 930   2      
 931   2                      ini_sbuf(M_main,answer,S_ANSW,0,0,0);   //焊枪提升
 932   2                      s_byte_nums=4;
 933   2                      TR_noans();
 934   2                      c_lift=2*pp.h52/0.0375;
 935   2                      COM=0X36;                                       //弧长点动速度,1K
 936   2                      COUNT0=4000%256;
 937   2                      COUNT0=4000/256;                                //弧长采样脉冲,1K
 938   2                      COM=0X76;
 939   2                      COUNT1=c_lift%256;

⌨️ 快捷键说明

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