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

📄 lcd3.lst

📁 带T6963C控制器的LCD的驱动程序和简单的显示测试程序
💻 LST
📖 第 1 页 / 共 3 页
字号:
 380   1       {if(rbuf[i]=='h'&&rbuf[i+1]=='x')
 381   2        {
 382   3        find=1;q=i;
 383   3        break;}
 384   2      
 385   2        }
 386   1       if(find==1)
 387   1        {
 388   2         y=7;x=6;
 389   2         sebuf();}
 390   1      }
 391          
 392           void serh4(void)
 393          {
 394   1      uint i;
 395   1      uchar find=0;
 396   1      
 397   1      for(i=h;i<d;i++)
 398   1      {if(rbuf[i]=='h'&&rbuf[i+1]=='y')
 399   2        {
 400   3         find=1;q=i;
 401   3         break;}
 402   2      
 403   2        }
 404   1       if(find==1)
 405   1        {
 406   2         y=8;x=6;
 407   2         sebuf();}
 408   1      }
 409          
 410           void serh5(void)
 411          {
 412   1      uint i;
 413   1      uchar find=0;
 414   1      for(i=h;i<d;i++)
 415   1      {if(rbuf[i]=='z'&&rbuf[i+1]=='y')
 416   2        {
 417   3        find=1;q=i;
 418   3        break;}
 419   2       }
 420   1       if(find==1)
 421   1       {
 422   2         y=9;x=6;
 423   2         sebuf();}
 424   1      }
 425          
 426           void serh6(void)
C51 COMPILER V7.07   LCD3                                                                  09/07/2006 09:21:47 PAGE 8   

 427          {
 428   1      uint i;
 429   1      uchar find=0;
 430   1      
 431   1      for(i=h;i<d;i++)
 432   1      {if(rbuf[i]=='V'&&rbuf[i+1]=='e')
 433   2        {
 434   3          find=1;q=i;
 435   3          break;}
 436   2      
 437   2        }
 438   1       if(find==1)
 439   1       {
 440   2         y=10;x=6;
 441   2         sebuf();}
 442   1      }
 443          
 444           void serh7(void)
 445          {
 446   1      uint i;
 447   1      uchar find=0;
 448   1      for(i=h;i<d;i++)
 449   1      {if(rbuf[i]=='V'&&rbuf[i+1]=='n')
 450   2        {
 451   3        find=1;q=i;
 452   3         break;}
 453   2      
 454   2       }
 455   1       if(find==1)
 456   1       {
 457   2         y=11;x=6;
 458   2         sebuf();}
 459   1      }
 460          
 461          //七种信息统一显示 
 462           void serh(void)
 463          {
 464   1        part();
 465   1        serh1();
 466   1        serh2();
 467   1        serh3();
 468   1        serh4();
 469   1        serh5();
 470   1        serh6();
 471   1        serh7();
 472   1      }
 473          
 474          //DVL信息
 475          void serd1(void)
 476          {
 477   1      uint i;
 478   1      uchar find=0;
 479   1      for(i=d;i<g;i++)
 480   1      {if(rbuf[i]=='V'&&rbuf[i+1]=='e')
 481   2         {
 482   3        find=1;q=i;
 483   3         break;}
 484   2      
 485   2       } 
 486   1       if(find==1)
 487   1       {
 488   2         y=4;x=6;
C51 COMPILER V7.07   LCD3                                                                  09/07/2006 09:21:47 PAGE 9   

 489   2         sebuf();}
 490   1      }
 491          
 492          void serd2(void)
 493          {
 494   1      uint i;
 495   1      uchar find=0;
 496   1      for(i=d;i<g;i++)
 497   1      {if(rbuf[i]=='V'&&rbuf[i+1]=='n')
 498   2         {
 499   3        find=1;q=i;
 500   3        break;}
 501   2      
 502   2       }
 503   1       if(find==1)
 504   1       {
 505   2         y=5;x=6;
 506   2         sebuf();}
 507   1      }
 508          //DVL东北速显示
 509          void serd(void)
 510          {
 511   1      part();
 512   1      serd1();
 513   1      serd2();
 514   1      }
 515          
 516          //GPS信息
 517          void serg1(void)
 518          {
 519   1      uint i;
 520   1      uchar find=0;
 521   1      for(i=g;i<n;i++)
 522   1      {if(rbuf[i]=='j'&&rbuf[i+1]=='d')
 523   2        {
 524   3        find=1;q=i;
 525   3        break;}
 526   2      
 527   2       }
 528   1       if(find==1)
 529   1       {
 530   2         y=10;x=6;
 531   2         sebuf();}
 532   1       }
 533          
 534          void serg2(void)
 535          {
 536   1      uint i;
 537   1      uchar find=0;
 538   1      for(i=g;i<n;i++)
 539   1      {if(rbuf[i]=='w'&&rbuf[i+1]=='d')
 540   2        {
 541   3        find=1;q=i;
 542   3        break;}
 543   2      
 544   2        }
 545   1       if(find==1)
 546   1       {
 547   2         y=11;x=6;
 548   2         sebuf();}
 549   1       }
 550          //GPS经纬度显示
C51 COMPILER V7.07   LCD3                                                                  09/07/2006 09:21:47 PAGE 10  

 551          void serg(void)
 552          {
 553   1       part();
 554   1       serg1();
 555   1       serg2();
 556   1      }
 557          //INS信息
 558          void sern1(void)
 559          {
 560   1      uint i;
 561   1      uchar find=0;
 562   1      for(i=n;i<f;i++)
 563   1      {if(rbuf[i]=='j'&&rbuf[i+1]=='d')
 564   2        {
 565   3        find=1;q=i;
 566   3        break;}
 567   2      
 568   2       }
 569   1       if(find==1)
 570   1       {
 571   2         y=5;x=6;
 572   2         sebuf();}
 573   1       }
 574          
 575          void sern2(void)
 576          {
 577   1      uint i;
 578   1      uchar find=0;
 579   1      for(i=n;i<f;i++)
 580   1      {if(rbuf[i]=='w'&&rbuf[i+1]=='d')
 581   2        {
 582   3        find=1;q=i;
 583   3        break;}
 584   2      
 585   2      }
 586   1       if(find==1)
 587   1       {
 588   2         y=6;x=6;
 589   2         sebuf();}
 590   1      }
 591          
 592          void sern3(void)
 593          {
 594   1      uint i;
 595   1      uchar find=0;
 596   1      for(i=n;i<f;i++)
 597   1      {if(rbuf[i]=='h'&&rbuf[i+1]=='x')
 598   2        {
 599   3        find=1;q=i;
 600   3        break;}
 601   2      
 602   2      }
 603   1       if(find==1)
 604   1       {
 605   2         y=7;x=6;
 606   2         sebuf();}
 607   1      }
 608          
 609           void sern4(void)
 610          {
 611   1      uint i;
 612   1      uchar find=0;
C51 COMPILER V7.07   LCD3                                                                  09/07/2006 09:21:47 PAGE 11  

 613   1      for(i=n;i<f;i++)
 614   1      {if(rbuf[i]=='h'&&rbuf[i+1]=='y')
 615   2        {
 616   3        find=1;q=i;
 617   3        break;}
 618   2      
 619   2      }
 620   1       if(find==1)
 621   1       {
 622   2         y=8;x=6;
 623   2         sebuf();}
 624   1       }
 625          
 626           void sern5(void)
 627          {
 628   1      uint i;
 629   1      uchar find=0;
 630   1      for(i=n;i<f;i++)
 631   1      {if(rbuf[i]=='z'&&rbuf[i+1]=='y')
 632   2         {
 633   3        find=1;q=i;
 634   3        break;}
 635   2      
 636   2      }
 637   1       if(find==1)
 638   1       {
 639   2         y=9;x=6;
 640   2         sebuf();}
 641   1       }
 642          
 643           void sern6(void)
 644          {
 645   1      uint i;
 646   1      uchar find=0;
 647   1      for(i=n;i<f;i++)
 648   1      {if(rbuf[i]=='V'&&rbuf[i+1]=='e')
 649   2        {
 650   3        find=1;q=i;
 651   3        break;}
 652   2      
 653   2      }
 654   1       if(find==1)
 655   1       {
 656   2         y=10;x=6;
 657   2         sebuf();}
 658   1         }
 659          
 660           void sern7(void)
 661          {
 662   1      uint i;
 663   1      uchar find=0;
 664   1      for(i=n;i<f;i++)
 665   1      {if(rbuf[i]=='V'&&rbuf[i+1]=='n')
 666   2        {
 667   3        find=1;q=i;
 668   3        break;}
 669   2      
 670   2      }
 671   1       if(find==1)
 672   1       {
 673   2         y=11;x=6;
 674   2         sebuf();}
C51 COMPILER V7.07   LCD3                                                                  09/07/2006 09:21:47 PAGE 12  

 675   1       }
 676          //I42惯导信息显示
 677          void sern(void)
 678          {
 679   1        part();
 680   1        sern1();
 681   1        sern2();
 682   1        sern3();
 683   1        sern4();
 684   1        sern5();
 685   1        sern6();
 686   1        sern7();}
 687          
 688          //串口发送数据
 689          void tserial(void)
 690          {uint i;
 691   1       for(i=0;i<88;i++)
 692   1       {SBUF=tbuf[i];
 693   2       while(TI==0);
 694   2          TI=0;
 695   2      
 696   2        }
 697   1      }
 698          
 699          //按键扫描 
 700          uchar keyscan(void)
 701              {
 702   1           uchar  readkey,rereadkey;
 703   1           uchar  x_temp,y_temp;
 704   1           key_flag=0;
 705   1              do
 706   1              {P1=0x0f; 
 707   2           x_temp=P1&0x0f;
 708   2           if(x_temp==0x0f) return(0x0f);
 709   2           P1=0xf0;
 710   2           y_temp=P1&0xf0;
 711   2           readkey=x_temp|y_temp;
 712   2               
 713   2           shortdelay(500); 
 714   2               P1=0x0f; 
 715   2           x_temp=P1&0x0f;
 716   2           if(x_temp==0x0f) return(0x0f);
 717   2               P1=0xf0; 
 718   2           y_temp=P1&0xf0; 
 719   2           rereadkey=x_temp|y_temp;
 720   2           
 721   2           
 722   2            if(readkey==rereadkey)
 723   2                {
 724   3             key_flag=1;
 725   3                 shortdelay(500); 
 726   3                 return(readkey);}
 727   2          } while(1);
 728   1       }
 729          
 730          //欢迎使用
 731          void welcom(void)
 732          { 
 733   1      dhz(5,2,"欢迎使用激光陀螺");
 734   1      dhz(7,3,"捷联惯导系统");}
 735          
 736          //菜单选择
C51 COMPILER V7.07   LCD3                                                                  09/07/2006 09:21:47 PAGE 13  

 737          void menu(void)
 738          {
 739   1      fnPR1(LC_GRH_STP,0x80,0x07); 
 740   1      dstring(4,6,"1.");
 741   1      dhz(6,6,"设定初始值");
 742   1      dstring(4,7,"2.");
 743   1      dhz(6,7,"组合模式选择");
 744   1      dstring(4,8,"3.");
 745   1      dhz(6,8,"显示实时导航信息");
 746   1      }
 747           //模式选择
 748          void mode(void)
 749          {fnPR1(LC_GRH_STP,0xE0,0x10); 
 750   1      Text_Curser(4,7); 
 751   1      dhz(7,10,"组合模式选择");
 752   1      dstring(4,12,"1.I42");
 753   1      dhz(9,12,"惯导");
 754   1      dstring(4,13,"2.I42    /GPS");
 755   1      dhz(9,13,"惯导");
 756   1      dstring(4,14,"3.I42    /DVL");
 757   1      dhz(9,14,"惯导");
 758   1      dstring(4,15,"4.I42    /GPS/DVL");
 759   1      dhz(9,15,"惯导");
 760   1      
 761   1      }
 762           //实时导航信息
 763          void infor(void)
 764          {  fnPR1(LC_GRH_STP,0x80,0x07);
 765   1         Text_Curser(6,3);
 766   1         dhz(7,4,"实时导航信息");
 767   1         dhz(1,5,"经度");
 768   1         dstring(5,5,":          ~");     //~代替度

⌨️ 快捷键说明

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