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

📄 straincollector.lst

📁 51单片机实现接收桥梁健康监测数据的代码,主要测量桥梁挠度!!数据通过GPRS传送!
💻 LST
📖 第 1 页 / 共 4 页
字号:
 321   3                      }
 322   2                       if(sign1==1)
 323   2                      {
 324   3                      if(flag<30)
 325   3                              {
 326   4                                      time10();
 327   4                              }
 328   3                      else if(flag>=30&&flag<60)
 329   3                              {
 330   4                                      time11();
 331   4                              }
 332   3                      else if(flag>=60&&flag<90)
 333   3                              {
 334   4                                      time12();
 335   4                              }
 336   3                      else if(flag>=90&&flag<120)
 337   3                              {
 338   4                                      time13();
 339   4                              }
 340   3                      else if(flag>=120&&flag<150)
 341   3                              {
 342   4                                      time14();
 343   4                              }
 344   3                      else if(flag>=150&&flag<180)
 345   3                              {
 346   4                                      time15();
 347   4                              }
 348   3                      else if(flag>=180&&flag<210)
 349   3                              {
 350   4                                      time16();
 351   4                              }
 352   3                      else if(flag>=210&&flag<240)
 353   3                              {
 354   4                                      time17();
 355   4                              }
 356   3                      else if(flag>=240&&flag<270)
 357   3                              {
 358   4                                      time18();
 359   4                              }
 360   3                      else if(flag>=270&&flag<300)
 361   3                              {
 362   4                                      time19();
 363   4                              }
 364   3                      else
 365   3                              {
C51 COMPILER V8.02   STRAINCOLLECTOR                                                       10/08/2002 23:21:00 PAGE 7   

 366   4                                      flag = 0;
 367   4                                      sign1 = 2;
 368   4                              }
 369   3                      }
 370   2                       if(sign1==2)
 371   2                      {
 372   3                      if(flag<30)
 373   3                              {
 374   4                                      time20();
 375   4                              }
 376   3                      else if(flag>=30&&flag<60)
 377   3                              {
 378   4                                      time21();
 379   4                              }
 380   3                      else if(flag>=60&&flag<90)
 381   3                              {
 382   4                                      time22();
 383   4                              }
 384   3                      else if(flag>=90&&flag<120)
 385   3                              {
 386   4                                      time23();
 387   4                              }
 388   3                      else if(flag>=120&&flag<150)
 389   3                              {
 390   4                                      time24();
 391   4                              }
 392   3                      else if(flag>=150&&flag<180)
 393   3                              {
 394   4                                      time25();
 395   4                              }
 396   3                      else if(flag>=180&&flag<210)
 397   3                              {
 398   4                                      time26();
 399   4                              }
 400   3                      else if(flag>=210&&flag<240)
 401   3                              {
 402   4                                      time27();
 403   4                              }
 404   3                      else if(flag>=240&&flag<270)
 405   3                              {
 406   4                                      time28();
 407   4                              }
 408   3                      else if(flag>=270&&flag<300)
 409   3                              {
 410   4                                      time29();
 411   4                              }
 412   3                      else if(flag>=300&&flag<330)
 413   3                              {
 414   4                                      time30();
 415   4                              }       
 416   3                      else if(flag>=330&&flag<360)
 417   3                              {
 418   4                                      time31();
 419   4                              }
 420   3                      else{
 421   4                                      flag = 0;
 422   4                                      sign1 = 3;
 423   4                              }
 424   3                      }
 425   2                      if(sign1==3)
 426   2                              {
 427   3                                      if(flag<30)
C51 COMPILER V8.02   STRAINCOLLECTOR                                                       10/08/2002 23:21:00 PAGE 8   

 428   3                                              {
 429   4                                                      time32();
 430   4                                              }
 431   3                                      else if(flag>=30&&flag<60)
 432   3                                              {
 433   4                                                      time33();
 434   4                                              }
 435   3                                      else if(flag>=60&&flag<90)
 436   3                                              {
 437   4                                                      time34();
 438   4                                              }
 439   3                                      else if(flag>=90&&flag<120)
 440   3                                              {
 441   4                                                      time35();
 442   4                                              }  
 443   3                                      else if(flag>=120&&flag<150)
 444   3                                              {
 445   4                                                      time36();
 446   4                                              }
 447   3                                      else if(flag>=150&&flag<180)
 448   3                                              {
 449   4                                                      time37();
 450   4                                              }
 451   3                                      else if(flag>=180&&flag<210)
 452   3                                              {
 453   4                                                      time38();
 454   4                                              }
 455   3                                      else if(flag>=210&&flag<240)
 456   3                                              {
 457   4                                                      time39();
 458   4                                              }
 459   3                                      else if(flag>=240&&flag<270)
 460   3                                              {
 461   4                                                      time40();
 462   4                                              }
 463   3                                      else if(flag>=270&&flag<300)
 464   3                                              {
 465   4                                                      time41();
 466   4                                              }
 467   3                                      else if(flag>=300&&flag<330)
 468   3                                              {
 469   4                                                      time42();
 470   4                                              }
 471   3                                      else if(flag>=330&&flag<360)
 472   3                                              {
 473   4                                                      time43();
 474   4                                              }
 475   3                                      else if(flag>=360&&flag<390)
 476   3                                              {
 477   4                                                      time44();
 478   4                                              }
 479   3                                      else if(flag>=390&&flag<420)
 480   3                                              {
 481   4                                                      time45();
 482   4                                              }
 483   3                                      else if(flag>=420&&flag<450)
 484   3                                              {
 485   4                                                      time46();
 486   4                                              }
 487   3                                      else if(flag>=450&&flag<480)
 488   3                                              {
 489   4                                                      time47();
C51 COMPILER V8.02   STRAINCOLLECTOR                                                       10/08/2002 23:21:00 PAGE 9   

 490   4                                              }
 491   3                                      else if(flag>=480&&flag<510)
 492   3                                              {
 493   4                                                      time48();
 494   4                                              }
 495   3                                      else if(flag>=510&&flag<540)
 496   3                                              {
 497   4                                                      time49();
 498   4                                              }
 499   3                                      else if(flag>=540&&flag<570)
 500   3                                              {
 501   4                                                      time50();
 502   4                                              }
 503   3                                      else if(flag>=570&&flag<600)
 504   3                                              {
 505   4                                                      time51();
 506   4                                              }
 507   3                                      else
 508   3                                              {
 509   4                                                      flag = 0;
 510   4                                                      sign1 = 4;
 511   4                                              }
 512   3                              }
 513   2                      if(sign1==4)
 514   2                              {
 515   3                                      ET0 = 0;
 516   3                                      P1_7 = 1;
 517   3                                      sign1 = 0;
 518   3                                      yb++;
 519   3                                      if(yb==16)
 520   3                                              {
 521   4                                                      yb = 0;
 522   4                                              }
 523   3                                      P1_4 = 0;    //89c54      选通频率
 524   3                                      P1_3 = 0;        //89c54
 525   3                                      delay10ms();
 526   3                                      P0_5 = 1;
 527   3                      BSWOVER = 1;
 528   3                              }
 529   2                      }
 530   1              
 531   1      
 532   1      }
 533          
 534          /******************************************
 535          EXTERNAL INT 1, using 3 grouped registers
 536          外部中断1,使用第3组寄存器
 537          唤醒中断
 538          该中断由串口读取Timeout定时中断产生浅睡眠,
 539          由管理器命令产生深睡眠。
 540          外部定时器会在此产生中断唤醒chip,
 541          输出: BDPSLP
 542          *****************************************/
 543          void External1_INT(void) interrupt 2 using 3
 544          {
 545   1          if(BDPSLP)
 546   1          {
 547   2              // 如果是深休眠,则转入浅休眠
 548   2              BDPSLP = 0;
 549   2              // TODO: 将定时器改为定时功能
 550   2                      writeData(0x01,0x11);   // 定时有效
 551   2              // 3s后发送警报
C51 COMPILER V8.02   STRAINCOLLECTOR                                                       10/08/2002 23:21:00 PAGE 10  

 552   2      //              writeData(0x0F,0xC0);   // 0xc081
 553   2      //              writeData(0x0E,0x81); 
 554   2              
 555   2          }
 556   1              
 557   1          //  open the wireless power
 558   1              P3_7 = 0;
 559   1          //   CLOSE THE EXTERNAL INT 1
 560   1              ET0 = 0;
 561   1      }
 562          
 563          /******************************************
 564          TIME INT 1, using 1 grouped registers
 565          计时中断1,使用第1组寄存器
 566          用于对串口Read的Timeout计时
 567          输出:如果P1_0为1,则进入睡眠。
 568          *****************************************/
 569          void Timer1_INT(void) interrupt 3 using 1
 570          {
 571   1              
 572   1          SET50MS1();
 573   1          if (--g_totimes)
 574   1          {
 575   2              return;
 576   2          }
 577   1          // todo: close the Timer1
 578   1          
 579   1          BTIMEOUT = 1;
 580   1          ET1 = 0;
 581   1        
 582   1        if (!P1_0)
 583   1              return;
 584   1      //    set_wake_time();
 585   1      //    shallow_sleep();
 586   1          
 587   1          // todo: open the Timer1
 588   1      }
 589          
 590          ////////////////////////////////////////////////////
 591          // delay functions
 592          //
 593          void delay10ms(void)
 594          {
 595   1          uchar i,j,k;
 596   1          for(i=5;i>0;i--)
 597   1              for(j=4;j>0;j--)
 598   1                  for(k=248;k>0;k--);
 599   1      }
 600          
 601          
 602          void delay1ms(void)
 603          {
 604   1          uchar i,j,k;
 605   1          for(i=5;i>0;i--)
 606   1              for(j=4;j>0;j--)
 607   1                  for(k=24;k>0;k--);
 608   1      }
 609          
 610          
 611          
 612          void delay500ms(void)
 613          {
C51 COMPILER V8.02   STRAINCOLLECTOR                                                       10/08/2002 23:21:00 PAGE 11  

 614   1          uchar i,j,k;
 615   1          for(i=15;i>0;i--)
 616   1              for(j=202;j>0;j--)
 617   1                  for(k=81;k>0;k--);
 618   1      }
 619          
 620          /******************************************
 621          通过串口发送字符
 622          用来替换Keil C中的putchar函数。
 623          *****************************************/
 624          char send_char (char c)
 625          {
 626   1              SBUF = c;
 627   1          while (!TI);
 628   1          TI = 0;
 629   1              return c;
 630   1      }
 631          
 632          /******************************************
 633          通过串口发送一条命令,命令保存在g_cmdData中
 634          输入:g_cmdData。
 635          *****************************************/
 636          void send_cmd()
 637          {
 638   1          uchar crc = STARTFLAG, i;
 639   1      //      SBUF=STARTFLAG;
 640   1          send_char(STARTFLAG);
 641   1          send_char(g_cmdData[CMD]);
 642   1          crc ^= g_cmdData[CMD];
 643   1              
 644   1          send_char(TID);
 645   1          crc ^= TID;
 646   1              
 647   1          send_char(MID);
 648   1          crc ^= MID;
 649   1              

⌨️ 快捷键说明

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