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

📄 current1.lst

📁 基于485的51单片机多机通讯程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
1024   1              UPD=0X00;                               //预熔电流
1025   1      
1026   1              ad_finish=1;
1027   1              if(YOUHU==1)                            //焊接时进行电压、电流采样
1028   1              {
1029   2                      c_adc=0;
1030   2                      i_v=0;
1031   2                      CTCON=CTCON|0X20;               //捕捉下降沿
1032   2                      IEN1=IEN1|0X04;                 //允许CT2
1033   2              }
1034   1      
1035   1              while(pre_melt_ok==0)                   //预熔时间
1036   1              {
1037   2                      if(urgent_stop==1)
1038   2                              goto BEGIN;
1039   2                      if(need_para==1)                //显示焊接电流、焊接电压
1040   2                      {
1041   3                              sbuffer[0]=M_main;
1042   3                              sbuffer[1]=parameter2;
1043   3                              sbuffer[2]=ad_i/256;
1044   3                              sbuffer[3]=ad_i%256;
1045   3                              sbuffer[4]=ad_v/256;
1046   3                              sbuffer[5]=ad_v%256;
1047   3                              s_byte_nums=7;
C51 COMPILER V7.06   CURRENT1                                                              07/15/2005 11:04:46 PAGE 18  

1048   3                              TR_noans();
1049   3                              need_para=0;
1050   3                      }
1051   2              }
1052   1      
1053   1              ini_sbuf(M_main,answer,S_ANSW,0,0,0,0);
1054   1              s_byte_nums=4;
1055   1              TR_noans();
1056   1              
1057   1              c_t0=0;
1058   1              while(i_slope_ok==0)                    //电流上升
1059   1              {
1060   2                      TR0=1;
1061   2                      while(c_t0<delt1)               //电流增加1A
1062   2                      {
1063   3                              if(urgent_stop==1)
1064   3                                      goto BEGIN;
1065   3                      }
1066   2                      TR0=0;
1067   2                      c_t0=0;
1068   2                      if(I1<pp.i14)
1069   2                      {
1070   3                              if((I1+10)>=pp.i14)
1071   3                                      I1=pp.i14;
1072   3                              else
1073   3                                      I1=I1+10;
1074   3                      }
1075   2      
1076   2                      if(pp.k1==PDC)
1077   2                      {
1078   3                              if(I2<pp.i15)
1079   3                              {
1080   4                                      if((I2+10)>=pp.i15)
1081   4                                              I2=pp.i15;
1082   4                                      else
1083   4                                              I2=I2+10;
1084   4                              }
1085   3                      }
1086   2                      IM=(unsigned int)(I1*0.41);
1087   2                      IB=(unsigned int)(I2*0.41);
1088   2                      IM8=IM%256;                     //(I1*10/10)%256
1089   2                      IM4=IM/256;                     //(I1*10/10)/256
1090   2                      IB8=IB%256;                     //(I2*10/10)%256
1091   2                      IB4=IB/256;                     //(I2*10/10)/256
1092   2                      UPD=0X00;
1093   2      
1094   2                      if(urgent_stop==1)
1095   2                              goto BEGIN;
1096   2      
1097   2              }
1098   1              ini_sbuf(M_main,answer,S_ANSW,0,0,0,0);
1099   1              s_byte_nums=4;
1100   1              TR_noans();
1101   1      
1102   1              I1=pp.i14;                              //峰值电流
1103   1              I2=pp.i15;                              //基值电流
1104   1              if(pp.ahf==ON)
1105   1              {
1106   2                      delt_ahf=pp.i16/2;
1107   2                      if(I1+delt_ahf<4000)
1108   2                              I11=I1+delt_ahf;
1109   2                      else
C51 COMPILER V7.06   CURRENT1                                                              07/15/2005 11:04:46 PAGE 19  

1110   2                              I11=4000;
1111   2                      I12=I1-delt_ahf;
1112   2                      if(I2+delt_ahf<4000)
1113   2                              I21=I2+delt_ahf;
1114   2                      else
1115   2                              I21=4000;
1116   2                      I22=I2-delt_ahf;
1117   2                      t=1000000/pp.f;
1118   2                      c_ahf_p=t*pp.t16/100/256;
1119   2                      c_ahf_b=t/256-c_ahf_p;
1120   2                      ahf_p_b=1;
1121   2                      ahf_ok=1;
1122   2                      c_t0=0;
1123   2                      IM=(unsigned int)(I11*0.41);
1124   2                      IMM=(unsigned int)(I12*0.41);
1125   2                      IB=(unsigned int)(I21*0.41);
1126   2                      IBB=(unsigned int)(I22*0.41);
1127   2                      IM8=IM%256;
1128   2                      IM4=IM/256;
1129   2                      UPD=0X00;
1130   2                      TR0=1;
1131   2              }
1132   1              else
1133   1              {
1134   2                      
1135   2                      IM=(unsigned int)(I1*0.41);
1136   2                      IB=(unsigned int)(I2*0.41);
1137   2                      IM8=IM%256;                             //(I1*10/10)%256
1138   2                      IM4=IM/256;                             //(I1*10/10)/256
1139   2                      IB8=IB%256;                             //(I2*10/10)%256
1140   2                      IB4=IB/256;                             //(I2*10/10)/256
1141   2                      UPD=0X00;
1142   2              }
1143   1              if(pp.k1==PDC)
1144   1                      IEN1=IEN1|0X20;                 //允许CM1,电流脉冲输出(峰、基值时间))
1145   1      
1146   1              k=1;
1147   1              nonce_sec=0;                            //当前区间号
1148   1              do
1149   1              {
1150   2                      work=3;
1151   2                      if(urgent_stop==1)                      //急停后返回
1152   2                              goto BEGIN;
1153   2      
1154   2                      if(need_para==1)                        //显示焊接电流、焊接电压
1155   2                      {
1156   3                              sbuffer[0]=M_main;
1157   3                              sbuffer[1]=parameter2;
1158   3                              sbuffer[2]=ad_i/256;
1159   3                              sbuffer[3]=ad_i%256;
1160   3                              sbuffer[4]=ad_v/256;
1161   3                              sbuffer[5]=ad_v%256;
1162   3                              sbuffer[6]=0;
1163   3                              s_byte_nums=7;
1164   3                              TR_noans();
1165   3                              need_para=0;
1166   3                      }
1167   2      
1168   2                      if(current_add==1)                              //电流加
1169   2                      {
1170   3                              if(delt_state==0||delt_state==1)
1171   3                              {
C51 COMPILER V7.06   CURRENT1                                                              07/15/2005 11:04:46 PAGE 20  

1172   4                                      if(I1+pp.di<4000)               //峰值
1173   4                                      {
1174   5                                              I1=I1+pp.di;
1175   5                                              if(ahf_ok==1)
1176   5                                              {
1177   6                                                      if(I11+pp.di<4000)
1178   6                                                              I11=I11+pp.di;
1179   6                                                      else
1180   6                                                              I11=4000;
1181   6                                                      I12=I12+pp.di;  
1182   6                                              }
1183   5                                      }
1184   4                                      else 
1185   4                                      {
1186   5                                              I1=4000;
1187   5                                              if(ahf_ok==1)
1188   5                                              {
1189   6                                                      I11=4000;
1190   6                                                      if(I12+pp.di<4000)
1191   6                                                              I12=I12+pp.di;
1192   6                                                      else
1193   6                                                              I12=4000;
1194   6                                              }
1195   5                                      }
1196   4                                      if(ahf_ok==1)
1197   4                                      {
1198   5                                              IM=(unsigned int)(I11*0.41);
1199   5                                              IMM=(unsigned int)(I12*0.41);
1200   5                                      }
1201   4                                      else
1202   4                                      {
1203   5                                              IM=(unsigned int)(I1*0.41);
1204   5                                              IM8=IM%256;
1205   5                                              IM4=IM/256;
1206   5                                              UPD=0X00;
1207   5                                      }
1208   4                              }
1209   3                              if(delt_state==1||delt_state==2)
1210   3                              {
1211   4                                      if(pp.k1==PDC)
1212   4                                      {
1213   5                                              if(I2+pp.di<4000)               //基值
1214   5                                              {
1215   6                                                      I2=I2+pp.di;
1216   6                                                      if(ahf_ok==1)
1217   6                                                      {
1218   7                                                              if(I21+pp.di<4000)
1219   7                                                                      I21=I21+pp.di;
1220   7                                                              else
1221   7                                                                      I21=4000;
1222   7                                                              I22=I22+pp.di;
1223   7                                                      }
1224   6                                              }
1225   5                                              else
1226   5                                              {
1227   6                                                      I2=4000;
1228   6                                                      if(ahf_ok==1)
1229   6                                                      {
1230   7                                                              I21=4000;
1231   7                                                              if(I22+pp.di<4000)
1232   7                                                                      I22=I22+pp.di;
1233   7                                                              else
C51 COMPILER V7.06   CURRENT1                                                              07/15/2005 11:04:46 PAGE 21  

1234   7                                                                      I22=4000;
1235   7                                                      }
1236   6                                              }
1237   5                                              if(ahf_ok==1)
1238   5                                              {
1239   6                                                      IB=(unsigned int)(I21*0.41);
1240   6                                                      IBB=(unsigned int)(I22*0.41);
1241   6                                              }
1242   5                                              else
1243   5                                              {
1244   6                                                      IB=(unsigned int)(I2*0.41);
1245   6                                                      IB8=IB%256;
1246   6                                                      IB4=IB/256;
1247   6                                                      UPD=0X00;
1248   6                                              }
1249   5                                      }
1250   4                              }
1251   3                              current_add=0;
1252   3                      }
1253   2      
1254   2                      if(urgent_stop==1)                      //急停后返回
1255   2                              goto BEGIN;
1256   2                              
1257   2                      if(current_dec==1)                              //电流减
1258   2                      {
1259   3                              if(delt_state==0||delt_state==1)
1260   3                              {
1261   4                                      if(I1-pp.i17>pp.di)             //峰值
1262   4                                      {
1263   5                                              I1=I1-pp.di;
1264   5                                              if(ahf_ok==1)
1265   5                                              {
1266   6                                                      I11=I11-pp.di;
1267   6                                                      if(I12-pp.i17>pp.di)
1268   6                                                              I12=I12-pp.di;
1269   6                                                      else
1270   6                                                              I12=pp.i17;
1271   6                                              }
1272   5                                      }
1273   4                                      else
1274   4                                      {
1275   5                                              I1=pp.i17;
1276   5                                              if(ahf_ok==1)
1277   5                                              {
1278   6                                                      if(I11-pp.i17>pp.di)
1279   6             

⌨️ 快捷键说明

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