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

📄 mcu.lst

📁 车载SCALER模块源程序
💻 LST
📖 第 1 页 / 共 3 页
字号:
 366   1           {
 367   2             valu= k-m;
 368   2           }
 369   1         return valu;
 370   1      }  
 371          /*
 372          void ResetCar()
 373          {  
 374             while((ReadCarStart())!=0)
 375              {
 376                CarBack();
 377                CLRWDT = 0x55;
 378              }
 379              CarStop();
 380          }
 381          
 382          bit ReadCarStart()
 383          {
 384              bit m;
 385             Byte Port;
 386             RDPA_REG |=PA6; 
 387             Port = PTA_REG;
 388             if((Port & PA6)!=0)
 389                {
 390                      m=1;
 391                     }
 392                  else
 393                    {
 394                      m=0;
 395                     }
 396             return m; 
 397          }
 398          bit ReadCarend()
 399          {
 400              bit m;
 401             Byte Port;
 402             RDPA_REG |=PA4; 
 403             Port = PTA_REG;
 404             if((Port & PA4)!=0)
 405                {
 406                      m=1;
 407                     }
 408                  else
 409                    {
 410                      m=0;
 411                     }
 412             return m;
 413          }
 414          
 415          void CarBack()
 416          {
 417              Byte Port;
 418                  Port = PTA_REG;         
 419                  Port |= RDPA_REG;
 420                  Port |= PA2;
 421                  PTA_REG = Port;
 422            
 423                  Port = PTA_REG;         
 424                  Port |= RDPA_REG;
 425                  Port &= ~PA0;
C51 COMPILER V7.06   MCU                                                                   12/11/2007 11:24:25 PAGE 8   

 426                  PTA_REG = Port;
 427          }
 428          void CarStop()
 429          {
 430              Byte Port;
 431                  Port = PTA_REG;         
 432                  Port |= RDPA_REG;
 433                  Port &= ~PA2;
 434                  PTA_REG = Port;
 435            
 436                  Port = PTA_REG;         
 437                  Port |= RDPA_REG;
 438                  Port &= ~PA0;
 439                  PTA_REG = Port;
 440          }
 441          void CarFront()
 442          {
 443              Byte Port;
 444                  Port = PTA_REG;         
 445                  Port |= RDPA_REG;
 446                  Port &= ~PA2;
 447                  PTA_REG = Port;
 448           //   
 449                  Port = PTA_REG;         
 450                  Port |= RDPA_REG;
 451                  Port |= PA0;
 452                  PTA_REG = Port;
 453          }
 454          */
 455          void ScreenUp()
 456          {
 457   1        Byte Port;
 458   1              Port = PTA_REG;         
 459   1              Port |= RDPA_REG;
 460   1              Port |= PA1;
 461   1              PTA_REG = Port;
 462   1        
 463   1              Port = PTA_REG;         
 464   1              Port |= RDPA_REG;
 465   1              Port &= ~PA0;
 466   1              PTA_REG = Port;
 467   1      }
 468          void ScreenStop()
 469          {
 470   1          Byte Port;
 471   1              Port = PTA_REG;         
 472   1              Port |= RDPA_REG;
 473   1              Port &= ~PA1;
 474   1              PTA_REG = Port;
 475   1        
 476   1              Port = PTA_REG;         
 477   1              Port |= RDPA_REG;
 478   1              Port &= ~PA0;
 479   1              PTA_REG = Port;
 480   1      }
 481          void ScreenDown()
 482          {
 483   1          Byte Port;
 484   1              Port = PTA_REG;         
 485   1              Port |= RDPA_REG;
 486   1              Port &= ~PA1;
 487   1              PTA_REG = Port;
C51 COMPILER V7.06   MCU                                                                   12/11/2007 11:24:25 PAGE 9   

 488   1        
 489   1              Port = PTA_REG;         
 490   1              Port |= RDPA_REG;
 491   1              Port |= PA0;
 492   1              PTA_REG = Port;
 493   1      }
 494          //********************************************************
 495          //********************************************************
 496          //==========================================
 497          unsigned char ScanKey()
 498          {
 499   1       unsigned char  i,k=0,j,h,m=0;
 500   1       line1h();
 501   1       line2h();
 502   1       line3h();
 503   1       line4h();
 504   1      
 505   1       for(i=4;i<8;i++)
 506   1        {//p2.i=0;
 507   2           CLRWDT = 0x55; 
 508   2          switch(i)
 509   2           {
 510   3              case 4:{
 511   4                          line1l();
 512   4                      break;
 513   4                     }
 514   3              case 5:{
 515   4                      line2l();
 516   4                      break;
 517   4                      }
 518   3              case 6:{
 519   4                          line3l();
 520   4                          break;
 521   4                     }      
 522   3              case 7:{
 523   4                          line4l();
 524   4                          break;
 525   4                     }  
 526   3             } 
 527   2             
 528   2       //  }
 529   2           
 530   2         for(j=1;j<4;j++)
 531   2          {
 532   3          if((Row1()==0))
 533   3                 {
 534   4                       k=i;
 535   4                   i=8;
 536   4                   h=1;
 537   4                   j=5;
 538   4      //               LED_GrnOff();
 539   4             }
 540   3              else if(Row2()==0)
 541   3                 {
 542   4                  k=i;
 543   4                  i=8;
 544   4                  h=2;
 545   4                  j=6;
 546   4      //      LED_GrnOff();
 547   4                 }
 548   3              else if(Row3()==0)
 549   3                 {
C51 COMPILER V7.06   MCU                                                                   12/11/2007 11:24:25 PAGE 10  

 550   4                  k=i;
 551   4                  i=9;
 552   4                  h=3;
 553   4                  j=7;
 554   4      //              LED_GrnOff();
 555   4                 }
 556   3         
 557   3          //   LED_RedOff();
 558   3           //  break;
 559   3                 while((Row1()==0)||(Row2()==0)||(Row3()==0))
 560   3                  {
 561   4                    CLRWDT = 0x55;
 562   4                               
 563   4                        
 564   4                   }
 565   3                      j = 5;
 566   3           
 567   3      //       Sleep(50);
 568   3      
 569   3          }
 570   2        } 
 571   1       switch(k)
 572   1        {
 573   2         case 4:{
 574   3                  m=1;
 575   3                  break;
 576   3                 }
 577   2         case 5:{
 578   3                  m=2;
 579   3                  break;
 580   3                 }
 581   2         case 6:{
 582   3                  m=3;
 583   3                              break;
 584   3                }
 585   2         case 7:{
 586   3                  m=4;
 587   3                              break;
 588   3                }
 589   2         default:
 590   2                {
 591   3                   m=0;
 592   3                      h=0;
 593   3                     }
 594   2       //  case 7:m=4;
 595   2        }
 596   1       line1h();
 597   1       line2h();
 598   1       line3h();
 599   1       line4h();
 600   1            if(m==0)
 601   1              {
 602   2                  return 0;
 603   2                  }
 604   1            else
 605   1              {
 606   2                return (h*10+m);
 607   2              }
 608   1       
 609   1       //return(n);
 610   1      }
 611          
C51 COMPILER V7.06   MCU                                                                   12/11/2007 11:24:25 PAGE 11  

 612          void line1l()
 613          {
 614   1              Byte Port;
 615   1              Port = PTD_REG;         
 616   1              Port |= RDPD_REG;
 617   1              Port &= ~PD3;
 618   1              PTD_REG = Port;
 619   1      }
 620          void line2l()
 621          {
 622   1              Byte Port;
 623   1              Port = PTD_REG;         
 624   1              Port |= RDPD_REG;
 625   1              Port &= ~PD4;
 626   1              PTD_REG = Port;
 627   1      }
 628          void line3l()
 629          {
 630   1              Byte Port;
 631   1              Port = PTD_REG;         
 632   1              Port |= RDPD_REG;
 633   1              Port &= ~PD5;
 634   1              PTD_REG = Port;
 635   1      }
 636          void line4l()
 637          {
 638   1              Byte Port;
 639   1              Port = PTD_REG;         
 640   1              Port |= RDPD_REG;
 641   1              Port &= ~PD6;
 642   1              PTD_REG = Port;
 643   1      }
 644          void line1h()
 645          {
 646   1              Byte Port;
 647   1              Port = PTD_REG;         
 648   1              Port |= RDPD_REG;
 649   1              Port |= PD3;
 650   1              PTD_REG = Port;
 651   1      }
 652          void line2h()
 653          {
 654   1              Byte Port;
 655   1              Port = PTD_REG;         
 656   1              Port |= RDPD_REG;
 657   1              Port |= PD4;
 658   1              PTD_REG = Port;
 659   1      }
 660          void line3h()
 661          {
 662   1              Byte Port;
 663   1              Port = PTD_REG;         
 664   1              Port |= RDPD_REG;
 665   1              Port |= PD5;
 666   1              PTD_REG = Port;
 667   1      }
 668          void line4h()
 669          {
 670   1              Byte Port;
 671   1              Port = PTD_REG;         
 672   1              Port |= RDPD_REG;
 673   1              Port |= PD6;
C51 COMPILER V7.06   MCU                                                                   12/11/2007 11:24:25 PAGE 12  

 674   1              PTD_REG = Port;
 675   1      }       
 676          bit Row1()      
 677          {
 678   1         bit m;
 679   1         Byte Port;
 680   1         RDPD_REG |=PD0; 
 681   1         Port = PTD_REG;
 682   1         if((Port & PD0)!=0)
 683   1            {
 684   2                  m=1;
 685   2                 }
 686   1              else
 687   1                {
 688   2                  m=0;
 689   2                 }
 690   1         return m;
 691   1      }
 692          
 693          bit Row2()      
 694          {
 695   1         bit m;
 696   1         Byte Port;
 697   1         RDPD_REG |=PD1; 
 698   1         Port = PTD_REG;
 699   1         if((Port & PD1)!=0)
 700   1            {
 701   2                  m=1;
 702   2                 }
 703   1              else
 704   1                {
 705   2                  m=0;
 706   2                 }
 707   1         return m;
 708   1      }
 709          bit Row3()      
 710          {
 711   1         bit m;
 712   1         Byte Port;
 713   1         RDPD_REG |=PD2; 
 714   1         Port = PTD_REG;
 715   1         if((Port & PD2)!=0)
 716   1            {
 717   2                  m=1;
 718   2                 }
 719   1              else
 720   1                {
 721   2                  m=0;
 722   2                 }
 723   1         return m;
 724   1      }
 725          //==========================================
 726          void Sleep(Word T)
 727          {
 728   1              Word i,j;
 729   1              for(j=0;j<T;j++)
 730   1                      for(i=0;i<53*(CPU_CLK/20000000);i++)
 731   1                              CLRWDT=0x55;
 732   1      }
 733          /*==========================================
 734          ==========================================*/
 735          void WaitSetup(unsigned short time)
C51 COMPILER V7.06   MCU                                                                   12/11/2007 11:24:25 PAGE 13  

 736          {
 737   1              LocalTimer = time;                      /* timeout n ms */
 738   1              while(LocalTimer != 0){
 739   2      //              CheckModeChange();
 740   2              }       
 741   1      }

⌨️ 快捷键说明

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