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

📄 复件 7.lst

📁 刚学时编的小程序
💻 LST
📖 第 1 页 / 共 3 页
字号:
 424   3                              dis=0;
 425   3                      }
C51 COMPILER V8.02   复件_7                                                                03/12/2007 13:13:46 PAGE 8   

 426   2              }
 427   1              
 428   1              if(tcnt==3685)                                                
 429   1              {       
 430   2                      if(TR1==1)                                                  //计数器开始状态,计时间
 431   2                      {
 432   3                              lucheng[0]++;
 433   3                              if(lucheng[0]==10)
 434   3                              {
 435   4                                      lucheng[0]=0;
 436   4                                      lucheng[1]++;
 437   4                                      if(lucheng[1]==6)
 438   4                                      {
 439   5                                              lucheng[1]=0;
 440   5                                              lucheng[2]++;
 441   5                                              if(lucheng[2]==28)
 442   5                                              {
 443   6                                                      lucheng[2]=18;
 444   6                                                      lucheng[3]++;
 445   6                                                      if(lucheng[3]==6)
 446   6                                                      lucheng[3]=0;
 447   6                                              }
 448   5                                      }
 449   4                              }
 450   3                      }
 451   2                      tcnt=0;
 452   2                      if(k==0)
 453   2                      second++;                                                   //秒加1
 454   2                      if(second>=60)                                                                                                                                                                                  //到60清0,分加1
 455   2                      {
 456   3                              if(w==1)
 457   3                              {
 458   4                                      hour1++;
 459   4                                      if(hour1==2)
 460   4                                      {
 461   5                                              hour1=0;
 462   5                                              w=0;
 463   5                                      }
 464   4                              }
 465   3                              second=0;
 466   3                              minite++;
 467   3                              if(x==1&TR1==1)                                           //是否在进行中断(中途等待程序)
 468   3                              {
 469   4                                      y++;                                                    //没进行y+1
 470   4                                      if(y==1)                                                //是否等待1分钟
 471   4                                      {
 472   5                                              y=0;                                                  //清0
 473   5                                              zongjia[0]=jiage[3];                                  //价格显示位显示中途等待价
 474   5                                              zongjia[1]=jiage[4];
 475   5                                              zongjia[5]=zongjia[5]+jiage[3];if(zongjia[5]>9)       //总价加中途等待价
 476   5                                                                                                              { 
 477   6                                                                                                                      n=1; zongjia[5]=zongjia[5]%10; 
 478   6                                                                                                              } 
 479   5                                              zongjia[6]=zongjia[6]+jiage[4];if(n==1)
 480   5                                                                                                                      {
 481   6                                                                                                                              zongjia[6]++;n=0;
 482   6                                                                                                                      }
 483   5                                              zongjia[6]=zongjia[6]-18;   if(zongjia[6]>27)  
 484   5                                                                                                      { 
 485   6                                                                                                              n=1; zongjia[6]=zongjia[6]-10; 
 486   6                                                                                                      }
 487   5                                              if(n==1)
C51 COMPILER V8.02   复件_7                                                                03/12/2007 13:13:46 PAGE 9   

 488   5                                              {
 489   6                                                      zongjia[7]++;
 490   6                                                      n=0;
 491   6                                                      if(zongjia[7]>9)
 492   6                                                      zongjia[7]=0;
 493   6                                              }
 494   5                                       }
 495   4                              }
 496   3                              if(minite>=60)                                            //分到60清0
 497   3                              {
 498   4                                      minite=0;
 499   4                                      hour++;                                                 //时加1
 500   4                                      if(hour>=24)                                            //时到24清0
 501   4                                      {
 502   5                                              hour=0;
 503   5                                      }
 504   4                              /*      if(w==1)
 505   4                                      {
 506   4                                              hour1++;
 507   4                                              if(hour1==24)
 508   4                                              {
 509   4                                                      hour1=0;
 510   4                                                      w=0;
 511   4                                              }
 512   4                                      }                       */
 513   4                              }
 514   3                      }
 515   2                      shijian[0]=second%10;
 516   2                      shijian[1]=second/10;
 517   2                      shijian[3]=minite%10;
 518   2                      shijian[4]=minite/10;
 519   2                      shijian[6]=hour%10;
 520   2                      shijian[7]=hour/10;
 521   2              }
 522   1      }       
 523                                                                                                                                          
 524          void t1(void) interrupt 3 using 2
 525          {
 526   1               x=0;                                                         //进入中断标志
 527   1               tcnt2++;
 528   1               switch(m)                                                    //判断白天还是晚上
 529   1               {
 530   2                      case 0: zongjia[0]=jiage[0];                                //白天总价0、1位显示白天单价
 531   2                                      zongjia[1]=jiage[1];
 532   2                                      break;
 533   2                      case 1: zongjia[0]=jiage[6];                                //晚上总价0、1位显示白天单价
 534   2                                      zongjia[1]=jiage[7];
 535   2                                      break;
 536   2               } 
 537   1               if(tcnt2<=10)
 538   1               {
 539   2                      zongjia[6]=23;
 540   2               }
 541   1               else
 542   1               {
 543   2                      c++;
 544   2                      if(c==5)
 545   2                      {
 546   3                              c=0;
 547   3                              switch(m)                                                 //判断白天还是晚上
 548   3                              {
 549   4                                      case 0: zongjia[5]=zongjia[5]+jiage[0];if(zongjia[5]>9) //白天:总价加白天单价 
C51 COMPILER V8.02   复件_7                                                                03/12/2007 13:13:46 PAGE 10  

 550   4                                                                                                                      { 
 551   5                                                                                                                              n=1; zongjia[5]=zongjia[5]%10; 
 552   5                                                                                                                      } 
 553   4                                                      zongjia[6]=zongjia[6]+jiage[1];if(n==1)
 554   4                                                                                                                      {
 555   5                                                                                                                              zongjia[6]++;n=0;
 556   5                                                                                                                      }
 557   4                                                      zongjia[6]=zongjia[6]-18;if(zongjia[6]>27)  
 558   4                                                                                                      { 
 559   5                                                                                                              n=1; zongjia[6]=zongjia[6]-10; 
 560   5                                                                                                      }
 561   4                                                      if(n==1)
 562   4                                                      {
 563   5                                                              zongjia[7]++;
 564   5                                                              n=0;
 565   5                                                              if(zongjia[7]>9)
 566   5                                                              zongjia[7]=0;
 567   5                                                      }
 568   4                                                      break;
 569   4                                      case 1: zongjia[5]=zongjia[5]+jiage[6];if(zongjia[5]>9) //晚上:总价加晚上单价 
 570   4                                                                                                                      { 
 571   5                                                                                                                              n=1; zongjia[5]=zongjia[5]%10; 
 572   5                                                                                                                      } 
 573   4                                                      zongjia[6]=zongjia[6]+jiage[7];if(n==1)
 574   4                                                                                                                      {
 575   5                                                                                                                              zongjia[6]++;n=0;
 576   5                                                                                                                      }
 577   4                                                      zongjia[6]=zongjia[6]-18;if(zongjia[6]>27)  
 578   4                                                                                                      { 
 579   5                                                                                                              n=1; zongjia[6]=zongjia[6]-10; 
 580   5                                                                                                      }
 581   4                                                       if(n==1)
 582   4                                                       {
 583   5                                                              zongjia[7]++;
 584   5                                                              n=0;
 585   5                                                              if(zongjia[7]>9)
 586   5                                                              zongjia[7]=0;
 587   5                                                       }
 588   4                                                       zongjia[0]=jiage[6];
 589   4                                                       zongjia[1]=jiage[7];
 590   4                                                       break;
 591   4                              }
 592   3                      }
 593   2               }
 594   1               lucheng[5]++;                                                //路程位加1
 595   1               if(lucheng[5]>9)
 596   1               {
 597   2                      n=1;                                                        //大于9进1位 
 598   2                      lucheng[5]=lucheng[5]%10;                                   //本位10取余
 599   2               }
 600   1               if(n==1)                                                     //是否有进位
 601   1              {
 602   2                      n=0;                                                        //进位清0
 603   2                      lucheng[6]++;                                               //上一位加1
 604   2                      if(lucheng[6]>27)                                           //是否到有小数点的9
 605   2                      {
 606   3                              n=1;                                                      //进位
 607   3                              lucheng[6]=lucheng[6]-10;                                 //本位减10
 608   3                      }                       
 609   2               }
 610   1               if(n==1)                                                     //是否有进位
 611   1               {
C51 COMPILER V8.02   复件_7                                                                03/12/2007 13:13:46 PAGE 11  

 612   2                       n=0;                                                     //进位清0
 613   2                       lucheng[7]++;                                              //加1    
 614   2                       if(lucheng[7]>9)                                           //如果大于9清0
 615   2                       {
 616   3                                lucheng[7]=0; 
 617   3                       }                                             
 618   2               }
 619   1               x=1;                                                         //中断完成标志
 620   1      }
 621          
 622          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   2357    ----
   CONSTANT SIZE    =     28    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     78       1
   IDATA SIZE       =   ----    ----
   BIT SIZE         =      1    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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