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

📄 avc_1027.lst

📁 基于485的51单片机多机通讯程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
1013   3                              externel_voltage=0;
1014   3                              avc_enable=0;                                   //开弧长使能
1015   3                              gate=1;
1016   3      
1017   3                              while(lift_complete==0)
1018   3                              {
1019   4                                      if(urgent_stop==1)
1020   4                                              goto BEGIN;
1021   4                              }
1022   3                              ini_sbuf(M_main,command,com_lift_ok,0,0,0);
1023   3                              s_byte_nums=4;
1024   3                              TR_ans();
1025   3                              externel_voltage=1;
1026   3                              lift_complete=0;
1027   3                              lift=0;
1028   3                              pgj=0;
1029   3                              lamp=lamp&0xF7;
1030   3                              write_8574(lamp);
1031   3                              EX1=1;
1032   3                      }
1033   2                      if(urgent_stop==1)
1034   2                              goto BEGIN;
1035   2              }
1036   1              work=3;
1037   1              temp_u51_p=pp.u51_p;
1038   1              temp_u51_b=pp.u51_b;
1039   1              if(pp.k1==DC)
1040   1                      temp_avc=temp_u51_p;    
1041   1              do
1042   1              {
1043   2                      if(start_avc==1)                        //开始弧长
1044   2                      {
C51 COMPILER V7.06   AVC_1027                                                              09/11/2006 08:22:21 PAGE 18  

1045   3                              ini_sbuf(M_main,answer,S_ANSW,0,0,0);
1046   3                              s_byte_nums=4;
1047   3                              TR_noans();
1048   3                              temp_voltage=0;
1049   3                              c_sample=0;
1050   3                              CTCON=CTCON&0X3F;
1051   3                              if(pp.k1==PDC)
1052   3                              {
1053   4                                      if(pp.avc_type==SP||pp.avc_type==SPB)
1054   4                                      {
1055   5                                              pulse_base=0;
1056   5                                              CTCON=CTCON|0X40;       //CT3上升沿
1057   5                                      }
1058   4                                      else
1059   4                                      {
1060   5                                              pulse_base=1;
1061   5                                              CTCON=CTCON|0X80;       //CT3下降沿
1062   5                                      }
1063   4                                      IEN1=IEN1|0X08;                 //允许CT3
1064   4                              }
1065   3                              else if(pp.k1==DC)
1066   3                              {
1067   4                                      avc_ok=1;
1068   4                                      c_sample=0;
1069   4                                      CTCON=CTCON|0x20;       //CT2下降沿
1070   4                                      IEN1=IEN1|0X04;         //允许CT2,采样保持脉冲
1071   4                              }
1072   3                              start_avc=0;
1073   3                      }
1074   2                      if(urgent_stop==1)
1075   2                              goto BEGIN;
1076   2      
1077   2                      if(touch==1)
1078   2                      {
1079   3                              ini_sbuf(M_main,answer,S_ANSW,0,0,0);
1080   3                              s_byte_nums=4;
1081   3                              TR_noans();
1082   3                              avc_dir=0;              //方向——下
1083   3                              COM=0X36;                                       
1084   3                              COUNT0=10000%256;
1085   3                              COUNT0=10000/256;
1086   3                              COM=0X76;
1087   3                              COUNT1=c_lift%256;
1088   3                              COUNT1=c_lift/256;
1089   3                              touched=1;
1090   3                              avc_enable=0;           //使能
1091   3                              gate=1;
1092   3                              touch=0;
1093   3                              
1094   3                      }
1095   2                      if(urgent_stop==1)
1096   2                              goto BEGIN;
1097   2                              
1098   2                      if(avc_ok==1&&need_para==1)             //显示弧压
1099   2                      {
1100   3                              U51=AD5;
1101   3                              ini_sbuf(M_main,parameter1,0,0,0,0);
1102   3                              sbuffer[2]=U51/256;
1103   3                              sbuffer[3]=U51%256;
1104   3                              s_byte_nums=5;
1105   3                              TR_noans();
1106   3                              need_para=0;
C51 COMPILER V7.06   AVC_1027                                                              09/11/2006 08:22:21 PAGE 19  

1107   3                      }
1108   2                      if(urgent_stop==1)
1109   2                                      goto BEGIN;
1110   2      
1111   2                      if(avc_up==1)
1112   2                      {
1113   3                              if(pp.k5==OFF||avc_ok==0)
1114   3                              {
1115   4                                      avc_dir=1;              //方向——上
1116   4                                      COM=0X36;                                       //弧长点动速度,1K
1117   4                                      COUNT0=4000%256;
1118   4                                      COUNT0=4000/256;
1119   4                                      COM=0X76;
1120   4                                      COUNT1=250;
1121   4                                      COUNT1=0;
1122   4                                      avc_enable=0;           //使能
1123   4                                      CTCON=CTCON|0X02;
1124   4                                      IEN1=IEN1|0X01;
1125   4                                      lift=1;
1126   4                                      gate=1;
1127   4                              }
1128   3                              if(avc_ok==1)
1129   3                              {
1130   4                                      if(in_sector==1)
1131   4                                      {
1132   5                                              temp_u51_p=temp_u51_p+pp.x[nonce_sec][3];
1133   5                                              temp_u51_b=temp_u51_b+pp.x[nonce_sec][3];
1134   5                                      }
1135   4                                      else
1136   4                                      {
1137   5                                              temp_u51_p=temp_u51_p+pp.du51;
1138   5                                              temp_u51_b=temp_u51_b+pp.du51;
1139   5                                      }
1140   4                                      if(pp.k1==DC)
1141   4                                              temp_avc=temp_u51_p;
1142   4                              }
1143   3                              avc_up=0;
1144   3                      }
1145   2      
1146   2                      if(urgent_stop==1)
1147   2                              goto BEGIN;
1148   2      
1149   2                      if(avc_down==1)
1150   2                      {
1151   3                              if(pp.k5==OFF||avc_ok==0)
1152   3                              {
1153   4                                      avc_dir=0;              //方向——下
1154   4                                      COM=0X36;                                       //弧长点动速度,1K
1155   4                                      COUNT0=4000%256;
1156   4                                      COUNT0=4000/256;
1157   4                                      COM=0X76;
1158   4                                      COUNT1=250;
1159   4                                      COUNT1=0;
1160   4                                      avc_enable=0;           //使能
1161   4                                      CTCON=CTCON|0X02;
1162   4                                      IEN1=IEN1|0X01;
1163   4                                      lift=1;
1164   4                                      gate=1;
1165   4                              }
1166   3                              if(avc_ok==1)
1167   3                              {
1168   4                                      if(in_sector==1)
C51 COMPILER V7.06   AVC_1027                                                              09/11/2006 08:22:21 PAGE 20  

1169   4                                      {
1170   5                                              temp_u51_p=temp_u51_p-pp.x[nonce_sec][3];
1171   5                                              temp_u51_b=temp_u51_b-pp.x[nonce_sec][3];
1172   5                                      }
1173   4                                      else
1174   4                                      {
1175   5                                              temp_u51_p=temp_u51_p-pp.du51;
1176   5                                              temp_u51_b=temp_u51_b-pp.du51;
1177   5                                      }
1178   4                                      if(pp.k1==DC)
1179   4                                              temp_avc=temp_u51_p;
1180   4                              }
1181   3                              avc_down=0;
1182   3                      }
1183   2      
1184   2                      if(urgent_stop==1)
1185   2                                      goto BEGIN;
1186   2      
1187   2                      if(in_sector==1&&new_sector==1)                         //进入新区间
1188   2                      {
1189   3                              temp_u51_p=pp.x[nonce_sec][0];
1190   3                              temp_u51_b=pp.x[nonce_sec][1];
1191   3                              new_sector=0;
1192   3                      }
1193   2      
1194   2                      if(urgent_stop==1)
1195   2                                      goto BEGIN;
1196   2      
1197   2                      if(avc_ok==1&&stop_avc==1)
1198   2                      {
1199   3                              ini_sbuf(M_main,answer,S_ANSW,0,0,0);
1200   3                              s_byte_nums=4;
1201   3                              TR_noans();
1202   3                              gate=0;
1203   3                              IEN1=IEN1&0XF2;         //禁止CT0,CT2,CT3
1204   3      //                      avc=0;
1205   3                              avc_ok=0;
1206   3                              stop_avc=0;
1207   3                              temp_voltage=1;
1208   3                      }
1209   2                      if(urgent_stop==1)
1210   2                                      goto BEGIN;
1211   2              }while(decrease==0);
1212   1      
1213   1              if(avc_ok==1)
1214   1              {
1215   2                      gate=0;
1216   2                      IEN1=IEN1&0XF2;         //禁止CT0,CT2,CT3
1217   2      //              avc=0;
1218   2                      avc_ok=0;
1219   2                      stop_avc=0;
1220   2                      temp_voltage=1;
1221   2              }
1222   1      
1223   1              if(pp.h52>0)
1224   1              {
1225   2                      while(lift==0)
1226   2                      {
1227   3                              if(urgent_stop==1)
1228   3                                      goto BEGIN;
1229   3                      }
1230   2                      ini_sbuf(M_main,answer,S_ANSW,0,0,0);   //焊枪提升
C51 COMPILER V7.06   AVC_1027                                                              09/11/2006 08:22:21 PAGE 21  

1231   2                      s_byte_nums=4;
1232   2                      TR_noans();
1233   2                      c_lift=80*pp.h52/3;                             //c_lift=400*pp.h52/1.5
1234   2                      COM=0X36;                                       //弧长点动速度,1K
1235   2                      COUNT0=4000%256;
1236   2                      COUNT0=4000/256;                                //弧长采样脉冲,1K
1237   2                      COM=0X76;
1238   2                      COUNT1=c_lift%256;
1239   2                      COUNT1=c_lift/256;
1240   2                      CTCON=CTCON|0X01;       //CT0下降沿
1241   2                      IEN1=IEN1|0X01;                         //允许CT0
1242   2                      avc_dir=1;                                      //弧长方向——上
1243   2                      avc_enable=0;                                   //开弧长使能
1244   2                      lift=1;
1245   2                      gate=1;
1246   2      
1247   2                      while(lift_complete==0)
1248   2                      {
1249   3                              if(urgent_stop==1)
1250   3                                      goto BEGIN;
1251   3                      }
1252   2                      ini_sbuf(M_main,command,com_lift_ok,0,0,0);
1253   2                      s_byte_nums=4;
1254   2                      TR_ans();
1255   2              }
1256   1              while(to_begin==0)
1257   1              {
1258   2                      if(urgent_stop==1)
1259   2                              goto BEGIN;
1260   2              }
1261   1              goto BEGIN;
1262   1      }
C51 COMPILER V7.06   AVC_1027                                                              09/11/2006 08:22:21 PAGE 22  

NAME                                    CLASS

⌨️ 快捷键说明

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