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

📄 spotwelder.lst

📁 点焊机控制器C51源码+SCH & DDB
💻 LST
📖 第 1 页 / 共 3 页
字号:
 448   3                         do{ i=ISendStr(AT24WC01,0x08,&trnscv[8],3);
 449   4                           }while(!i);
 450   3                         delay(50,50);  //10ms
 451   3                         do{ i=IRcvStr(AT24WC01,0x00,trnscv,11);
 452   4                           }while(!i);
 453   3                     rptr=trnscv;
*** WARNING C182 IN LINE 453 OF SPOTWELDER.C: pointer to different objects
 454   3                     PrrzTime=*rptr;
 455   3                     rptr+=1;
 456   3                     WeldTime=*rptr;
 457   3                     rptr+=1;
 458   3                     WorkCount=*rptr;
 459   3                     rptr+=1;
 460   3                     PrrzLTime=*rptr;
 461   3                     rptr+=1;
 462   3                     SpaceTime=*rptr;
 463   3                         WorkMode=trnscv[10];
 464   3                       }
 465   2          }      
 466   1      }
 467          
 468          //*************************************
 469          void ISR_Timer1()interrupt 3    //1 ,l00p;./ms中断
 470          {
 471   1        TL1=23;
 472   1        TH1=252;
 473   1        LED_Display();
 474   1      }
 475          //**************************************
 476          
 477          void ISR_Timer0()interrupt 1  using 1    //10 ms 中断
 478          {
 479   1        static unsigned char i;
 480   1        unsigned int data *resume_ptr;
 481   1          
 482   1        TL0=239;
 483   1        TH0=216;
 484   1        switch(Work)
 485   1         {
 486   2           case Prrz:                                                 //pressrize 加压
C51 COMPILER V7.50   SPOTWELDER                                                            11/07/2005 02:10:44 PAGE 9   

 487   2                         bPrrz_led=0;
 488   2                             bPrrz_RlyDr=0;
 489   2                         if(i>0)                                              //count from tail
 490   2                      {
 491   3                            i=0;
 492   3                        if(PrrzTime>0)PrrzTime--;
 493   3                        else
 494   3                             {
 495   4                            Work=Weld;
 496   4                                        break;
 497   4                             }
 498   3                      }
 499   2                             i++;
 500   2                             break;
 501   2           case Weld:                                                 //点焊
 502   2                         bWeld_led=0;
 503   2                             bWeld_RlyDr=0;
 504   2                     if(i>0)
 505   2                              {       
 506   3                                i=0;
 507   3                            if(WeldTime>0)WeldTime--;
 508   3                        else
 509   3                                         {
 510   4                                       bWeld_led=1;
 511   4                                       bWeld_RlyDr=1;
 512   4                           resume_ptr=trnscv;         //取接收/发送数据缓冲区地址
*** WARNING C182 IN LINE 512 OF SPOTWELDER.C: pointer to different objects
 513   4                           PrrzTime=*resume_ptr;      //恢复数据
 514   4                                       resume_ptr+=1;
 515   4                                       WeldTime=*resume_ptr;  //恢复数据
 516   4                           Work=PrrzL; 
 517   4                                       break; 
 518   4                                 }
 519   3                             }
 520   2                            i++;
 521   2                        break;
 522   2           case PrrzL:
 523   2                         bPrrzL_led=0;
 524   2                             bPrrzL_RlyDr=0;
 525   2                     if(i>0)
 526   2                              {
 527   3                                i=0;
 528   3                                if(PrrzLTime>0)PrrzLTime--;
 529   3                        else
 530   3                                         { 
 531   4                                   bPrrz_led=1;               
 532   4                                       bPrrz_RlyDr=1;                          
 533   4                                               bPrrzL_led=1;
 534   4                                       bPrrzL_RlyDr=1;
 535   4                                       resume_ptr=&trnscv[6];
*** WARNING C182 IN LINE 535 OF SPOTWELDER.C: pointer to different objects
 536   4                                       PrrzLTime=*resume_ptr;
 537   4                                       Work=Space;
 538   4                                       break;
 539   4                                     }
 540   3                              }
 541   2                              i++;
 542   2                          break;
 543   2               case Space:
 544   2                              if(WorkMode==AUTO)
 545   2                                       {
 546   3                                 bSpace_led=0;
C51 COMPILER V7.50   SPOTWELDER                                                            11/07/2005 02:10:44 PAGE 10  

 547   3                                 bSpace_RlyDr=0;
 548   3                                 if(i>9)
 549   3                                          { 
 550   4                                                i=0;
 551   4                                        if(SpaceTime>0)SpaceTime--;
 552   4                                        else
 553   4                                                 {
 554   5                                           bSpace_led=1;
 555   5                                           bSpace_RlyDr=1;
 556   5                                           resume_ptr=&trnscv[8];
*** WARNING C182 IN LINE 556 OF SPOTWELDER.C: pointer to different objects
 557   5                                           SpaceTime=*resume_ptr;
 558   5                                           if(--WorkCount==0)
 559   5                                                {
 560   6                                                  bFshCnt_led=0;
 561   6                                                      bFshCnt_RlyDr=0;
 562   6                                                          resume_ptr=&trnscv[4];
*** WARNING C182 IN LINE 562 OF SPOTWELDER.C: pointer to different objects
 563   6                                      WorkCount=*resume_ptr;
 564   6                                  Work=0;
 565   6                                                      break;
 566   6                                                }
 567   5                                               else{ Work=Prrz;break;}
 568   5                             }
 569   4                                  }
 570   3                                    i++;
 571   3                                        break;
 572   3                              }
 573   2                                 else
 574   2                                  {
 575   3                                         resume_ptr=&trnscv[4];
*** WARNING C182 IN LINE 575 OF SPOTWELDER.C: pointer to different objects
 576   3                             WorkCount=*resume_ptr;
 577   3                                         resume_ptr=&trnscv[8];
*** WARNING C182 IN LINE 577 OF SPOTWELDER.C: pointer to different objects
 578   3                                     SpaceTime=*resume_ptr;
 579   3                                     Work=0;break;
 580   3                                      }
 581   2              case check:
 582   2                         if(bcheck==0)
 583   2                                  {
 584   3                                        PrrzTime=prrz_buf;
 585   3                                        bPrrz_led=1;
 586   3                                        bPrrz_RlyDr=1;
 587   3                                        Work=0;
 588   3                                        break;
 589   3                                      }
 590   2                         else if(i>0)                                 
 591   2                      {
 592   3                            i=0;
 593   3                                        PrrzTime++;
 594   3                        if(PrrzTime>999)PrrzTime=0;
 595   3                      }
 596   2                             i++;
 597   2                             break;
 598   2          case Emergency:
 599   2                     bPrrz_led=1;
 600   2                     bPrrz_RlyDr=1;
 601   2                     bWeld_led=1;
 602   2                     bWeld_RlyDr=1;
 603   2                     bPrrzL_led=1;
 604   2                     bPrrzL_RlyDr=1;
C51 COMPILER V7.50   SPOTWELDER                                                            11/07/2005 02:10:44 PAGE 11  

 605   2                     bSpace_led=1;
 606   2                     bSpace_RlyDr=1;
 607   2                     bFshCnt_led=1;
 608   2                     bFshCnt_RlyDr=1;
 609   2                     resume_ptr=trnscv;
*** WARNING C182 IN LINE 609 OF SPOTWELDER.C: pointer to different objects
 610   2                     PrrzTime=*resume_ptr;
 611   2                     resume_ptr+=1;
 612   2                     WeldTime=*resume_ptr;
 613   2                     resume_ptr+=1;
 614   2                     WorkCount=*resume_ptr;
 615   2                     resume_ptr+=1;
 616   2                     PrrzLTime=*resume_ptr;
 617   2                     resume_ptr+=1;
 618   2                     SpaceTime=*resume_ptr;
 619   2                                 Work=0;
 620   2                                 break;
 621   2              default:
 622   2                         current_state=stop;
 623   2                                 if(bFshCnt_RlyDr==0)
 624   2                                  {
 625   3                                        if(i++>199)
 626   3                                         {
 627   4                                               i=0;
 628   4                                               bFshCnt_led=1;
 629   4                                               bFshCnt_RlyDr=1;
 630   4                                         }
 631   3                                      }
 632   2                         break; 
 633   2         }
 634   1        keyscan();
 635   1      }
 636          //***************************************
 637           
 638          void ISR_INT0()interrupt 0 
 639          {
 640   1        if((Program==RUN)&&(current_state==stop)&&(!bcheck))
 641   1         {
 642   2            Work=Prrz;
 643   2                bFshCnt_led=1;
 644   2                bFshCnt_RlyDr=1;
 645   2                current_state=runing;
 646   2         }
 647   1      }
 648          
 649          
 650          
 651          
 652          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   2320    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     54       4
   IDATA SIZE       =   ----    ----
   BIT SIZE         =      5    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  10 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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