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

📄 tv.lst

📁 CS8955控制TV软件。用MCU做模拟电视的控制。
💻 LST
📖 第 1 页 / 共 5 页
字号:
 498   1          else   if(bTempSystem ==SV_NTSC)                    
 499   1                    {
 500   2                   bData[1] =IF_SWITCH_NTSC; 
 501   2                    bData[2] = IF_ADJUST_NTSC;
 502   2              #if 0
                       if (bTvCurrSound==TV_SOUND_BG)
                         { bData[3] = IF_DATA_PAL_BG; // BG 12Sep08
                              }
                      else if (bTvCurrSound==TV_SOUND_I)
                              {
                          bData[3] = IF_DATA_PAL_I;  // I 12Sep08
                              }
                      else if (bTvCurrSound==TV_SOUND_DK)
                              {
                          bData[3] = IF_DATA_PAL_DK;  // DK 12Sep08
                              }
                     else if (bTvCurrSound==TV_SOUND_MN_L)
                              {
                          bData[3] = IF_DATA_NTSC_MN;  // MN  12Sep08
                              }
                         else
                    #endif
 520   2      
 521   2              bData[3] = IF_DATA_NTSC_MN;
 522   2              bTvCurrSound=SV_MN;//TV_SOUND_MN_L;
 523   2              sTvCurrChannel.bSystem &= 0xc7;   //17Jul08  ntsc + sound_mn    
 524   2          }   
 525   1          else if(bTempSystem ==SV_PAL_M)  //12Sep08 
 526   1              {
 527   2              bData[1] =IF_SWITCH_PAL_M;
 528   2                bData[2] = IF_ADJUST_PAL;     
 529   2                bData[3] = IF_DATA_PAL_MN;     
 530   2              bTvCurrSound=SV_MN; //TV_SOUND_MN_L;
 531   2              sTvCurrChannel.bSystem &= 0xc7;   //17Jul08  ntsc + sound_mn            
 532   2              }
 533   1      else   if(bTempSystem ==SV_PAL_N)  //12Sep08 
 534   1        {
 535   2                 bData[1] =IF_SWITCH_PAL_N;
 536   2                  bData[2] = IF_ADJUST_PAL;
 537   2                   bData[3] = IF_DATA_PAL_MN;         
 538   2              bTvCurrSound=SV_MN;//TV_SOUND_MN_L;
 539   2              sTvCurrChannel.bSystem &= 0xc7;   //17Jul08  ntsc + sound_mn             
 540   2         }    
 541   1          else   if(bTempSystem ==SV_SECAM_L)
 542   1                   {
 543   2                     bData[2] = IF_ADJUST_SEACAM;
 544   2                         if(bTvCurrSound ==SV_MN)  //TV_SOUND_MN_L
 545   2                              {
 546   3                              bData[1] = IF_SWITCH_SEACAM_L;
 547   3                                bData[3] = IF_DATA_SEACAM_L;                  
 548   3                              sTvCurrChannel.bSystem &= 0xc7;                 
 549   3                                 
C51 COMPILER V8.05a   TV                                                                   01/05/2009 15:57:49 PAGE 10  

 550   3                              }               
 551   2                          else if (bTvCurrSound==SV_BG)  //TV_SOUND_BG
 552   2                         {
 553   3                         bData[1] =IF_SWITCH_SEACAM_DK;
 554   3                          bData[3] = IF_DATA_SEACAM_L_BG; // BG 12Sep08
 555   3                          }
 556   2                       else if (bTvCurrSound==SV_I)  // == seacam L TV_SOUND_I
 557   2                      {      
 558   3                      bData[1] =IF_SWITCH_SEACAM_DK;
 559   3                             bData[3] = IF_DATA_SEACAM_L_I;  // I 12Sep08
 560   3                      }
 561   2                       else if (bTvCurrSound==SV_DK) //TV_SOUND_DK
 562   2                      {
 563   3                      bData[1] =IF_SWITCH_SEACAM_DK;
 564   3                              bData[3] = IF_DATA_SEACAM_L_DK;  // DK 12Sep08
 565   3                              }               
 566   2                            }
 567   1          else   if(bTempSystem ==SV_SECAM_L2)
 568   1                     {
 569   2                            bData[2] = IF_ADJUST_PAL;
 570   2                         if(bTvCurrSound ==SV_MN)
 571   2                              {
 572   3                                 bData[1] = IF_SWITCH_SEACAM_L1;                 
 573   3                                bData[3] = IF_DATA_SEACAM_L1;                               
 574   3                              sTvCurrChannel.bSystem &= 0xc7;                              
 575   3                              }
 576   2                         else  if (bTvCurrSound==SV_BG) //TV_SOUND_BG
 577   2                       { 
 578   3                        bData[1] =IF_SWITCH_SEACAM_L1_DK;
 579   3                         bData[3] = IF_DATA_SEACAM_L1_BG; // BG 12Sep08
 580   3                      }
 581   2                   else if (bTvCurrSound==SV_I)  // == seacam L'   TV_SOUND_I
 582   2                      {   
 583   3                       bData[1] =IF_SWITCH_SEACAM_L1_DK;
 584   3                     bData[3] = IF_DATA_SEACAM_L1_I;  // I 12Sep08
 585   3                      }
 586   2              else if (bTvCurrSound==SV_DK)   //TV_SOUND_DK
 587   2                      {
 588   3                        bData[1] =IF_SWITCH_SEACAM_L1_DK;
 589   3                      bData[3] = IF_DATA_SEACAM_L1_DK;  // DK 12Sep08
 590   3                      }       
 591   2                   }
 592   1      #endif
 593   1      #endif
 594   1      
 595   1         #ifdef MARTIN_ADD_SEARCH_TUNER_MUTE
 596   1         if(fgTVSearhMute)   //05Aug08 
 597   1         bData[1] |= 0x20;   //05Aug08 //mute enable
 598   1         else
 599   1          bData[1] &= 0xdf;   //05Aug08  mute disable
 600   1         #endif       
 601   1         
 602   1          vTV_IF_Write(bData);
 603   1      
 604   1          return 0;   
 605   1      }
 606          
 607          #ifdef MARTIN_TUNER_XF6A_PAL_M_NOT_SYNC
 608          ///  first power on picture not sync tnen PAL-M for system
 609          void vPalMBugAdj(void)   //martin 17Sep08 test 
 610          {
 611   1         BYTE bTempSystem;
C51 COMPILER V8.05a   TV                                                                   01/05/2009 15:57:49 PAGE 11  

 612   1         BYTE bData[4]; 
 613   1      
 614   1       bTempSystem=(sTvCurrChannel.bSystem & 0x07);
 615   1        if((bTempSystem == SV_PAL_M)||((bTempSystem == SV_PAL)&&(bTvCurrSound==SV_MN)))  //17Sep08  test
 616   1           {                  
 617   2              //      if(fgTunerType == 0x01)  //DPT2290M
 618   2                   if((bPalMAdj)&&(mReadDvdDat() ==0 )&&(mReadDvdCs()))
 619   2                       {
 620   3                          bPalMAdj=0; 
 621   3                  /* set frequency
 622   3                          bData[0] = (_sTunerPLL.wDB >>8) & 0xff;
 623   3                          bData[1] = _sTunerPLL.wDB;             
 624   3                          bData[2] = _sTunerPLL.bCB;
 625   3                          bData[3] = _sTunerPLL.bBB;          
 626   3                          vTV_PLL_Write(bData);       
 627   3                        */
 628   3             
 629   3                            bData[0] = IF_RESERVED;   
 630   3                          bData[1] =IF_SWITCH_PAL;
 631   3                            bData[2] = IF_ADJUST_PAL;                 
 632   3                            bData[3] = IF_DATA_PAL_BG;   // set sound system:BG,vertical sync change to 50Hz
 633   3                          #ifdef MARTIN_ADD_SEARCH_TUNER_MUTE
 634   3                         if(fgTVSearhMute)   //05Aug08 
 635   3                         bData[1] |= 0x20;   //05Aug08 
 636   3                         else
 637   3                          bData[1] &= 0xdf;   //05Aug08 
 638   3                         #endif                               
 639   3                        vTV_IF_Write(bData);
 640   3                  
 641   3                        Delay1ms(200);
 642   3                        bData[0] = IF_RESERVED;       
 643   3                        bData[1] =IF_SWITCH_PAL;
 644   3                        bData[2] = IF_ADJUST_PAL;     
 645   3                        bData[3] = IF_DATA_PAL_MN;    
 646   3                      #ifdef MARTIN_ADD_SEARCH_TUNER_MUTE
 647   3                       if(fgTVSearhMute)   //05Aug08 
 648   3                       bData[1] |= 0x20;   //05Aug08 
 649   3                       else
 650   3                        bData[1] &= 0xdf;   //05Aug08 
 651   3                      #endif  
 652   3                       vTV_IF_Write(bData);
 653   3                     
 654   3                     bTvCurrSound=SV_MN;//TV_SOUND_MN_L;
 655   3                      sTvCurrChannel.bSystem &= 0xc7;   //17Jul08  ntsc + sound_mn    
 656   3                  
 657   3                  }
 658   2            }
 659   1        else  //NTSC,SEACAM L.PAL I/BG/DK
 660   1           {
 661   2            bPalMAdj=1;
 662   2            }
 663   1      
 664   1        if((mReadDvdDat())&&(mReadDvdCs()))  //no singal set 1
 665   1          {
 666   2                   bPalMAdj=1;
 667   2           }
 668   1      }
 669          #endif
 670          
 671          
 672          
 673          #ifdef MARTIN_TEST_CHANNNEL_NUMBER_SHOW
C51 COMPILER V8.05a   TV                                                                   01/05/2009 15:57:49 PAGE 12  

 674          void vFreAFCAdjLoop(void)   //martin 04Aug08 test
 675          {
 676   1        BYTE bAfcVaule; //02Jul08
 677   1      
 678   1          switch(fgAFCADJState)
 679   1              {
 680   2               case FREQUENCY_ADJ_IDLE:
 681   2                       fgAFCTVSyncCnt=0;
 682   2                      bFreSetpCnt=0;
 683   2                      fgAFCADJCnt=0;
 684   2                    break;    
 685   2              
 686   2              case FREQUENCY_VIDEO_SYNC:
 687   2                               
 688   2                         if(!mReadDvdCs())
 689   2                              {
 690   3                              // if(fgAFCTVSyncCnt < 5)
 691   3                              //     fgAFCTVSyncCnt++;
 692   3                                 fgAFCADJState = FREQUENCY_VIDEO_SYNC;
 693   3                             break;
 694   3                              }
 695   2                      if(((--fgAFCTVSyncCnt)>0)&&(mReadDvdDat() !=0 ))
 696   2                            {         
 697   3                               Delay1ms(5);
 698   3                               fgAFCADJState = FREQUENCY_VIDEO_SYNC;
 699   3                                break;
 700   3                            }           
 701   2                           else
 702   2                              {
 703   3                                   if(mReadDvdDat() ==0 )
 704   3                                      {
 705   4                                 //  fgReadAFCValue=bTV_IF_Read();    
 706   4                                               fgAFCVa=bTV_IF_Read(); 
 707   4                                   fgAFCADJState=FREQUENCY_READ_AFC;
 708   4                                         break;
 709   4                                         
 710   4                                      }
 711   3                                      else
 712   3                                     {
 713   4                                       if((bFreSetpCnt>=0x11)&&(bFreSetpCnt<=0x13))
 714   4                                      {
 715   5                                        _sTunerPLL.wDB-= (bFreSetpCnt & 0x0f);
 716   5                                                bFreSetpCnt=0x00;
 717   5                                                 vTvSearchSetFre(); 
 718   5                                      }
 719   4                                         else if((bFreSetpCnt>=0x01)&&(bFreSetpCnt<=0x03))
 720   4                                              {
 721   5                                        _sTunerPLL.wDB+= (bFreSetpCnt & 0x0f);
 722   5                                                bFreSetpCnt=0x00;
 723   5                                                 vTvSearchSetFre(); 
 724   5                                      }
 725   4                                    fgAFCADJState = FREQUENCY_ADJ_IDLE;
 726   4                                        break;
 727   4                                      }
 728   3                              }
 729   2                    break;    
 730   2                                
 731   2              case FREQUENCY_READ_AFC:
 732   2                          if(!mReadDvdCs())
 733   2                              {
 734   3                                 fgAFCADJState = FREQUENCY_READ_AFC;
 735   3                             break;
C51 COMPILER V8.05a   TV                                                                   01/05/2009 15:57:49 PAGE 13  

 736   3                              }
 737   2                           //29Aug08    Delay1ms(10);
 738   2                              bAfcVaule=((fgAFCVa >>1) & 0x0f);       
 739   2                        if((bAfcVaule >=0x00)&&(bAfcVaule <=0x02)) 
 740   2                              {
 741   3                                  WriteTVChannel(bTvCurrChIndex,sTvCurrChannel);        
 742   3                              fgAFCADJState = FREQUENCY_ADJ_IDLE;
 743   3                                 break;
 744   3                              }
 745   2                        else
 746   2                              {  
 747   3                                   if(--fgAFCADJCnt>0)
 748   3                                        {
 749   4                                          if((bAfcVaule >= 0x03)&&(bAfcVaule <=0x07))
 750   4                                      {
 751   5                                        if(bAfcVaule ==0x07)

⌨️ 快捷键说明

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