etc_eep.lst

来自「显示屏驱动源代码」· LST 代码 · 共 617 行 · 第 1/2 页

LST
617
字号
 292          /*#include "panel.h"
 293          void SavePanelInfoEE(void)
 294          {
 295                  WriteEEP( PANELINFO+0 , (BYTE)PanelConfig.x_res );
 296                  WriteEEP( PANELINFO+1 , (BYTE)(PanelConfig.x_res >> 8) );
 297          
 298                  WriteEEP( PANELINFO+2 , (BYTE)PanelConfig.y_res );
 299                  WriteEEP( PANELINFO+3 , (BYTE)(PanelConfig.y_res >> 8) );
 300          
 301                  WriteEEP( PANELINFO+4 , PanelConfig.h_sync_min_pulse_width );
 302          
C51 COMPILER V7.06   ETC_EEP                                                               02/21/2008 14:00:26 PAGE 6   

 303                  WriteEEP( PANELINFO+5 , PanelConfig.v_sync_min_pulse_width );
 304          
 305                  WriteEEP( PANELINFO+6 , (BYTE)PanelConfig.h_min_back_porch );
 306                  WriteEEP( PANELINFO+7 , (BYTE)(PanelConfig.h_min_back_porch >> 8 ) );
 307          
 308                  WriteEEP( PANELINFO+8 , PanelConfig.h_sync_polarity );
 309          
 310                  WriteEEP( PANELINFO+9 , PanelConfig.v_sync_polarity );
 311          
 312                  WriteEEP( PANELINFO+0x0a , (BYTE)PanelConfig.dot_clock );
 313                  WriteEEP( PANELINFO+0x0b , (BYTE)(PanelConfig.dot_clock >> 8 ) );
 314          
 315                  WriteEEP( PANELINFO+0x0c , (BYTE)PanelConfig.max_clock );
 316                  WriteEEP( PANELINFO+0x0d , (BYTE)(PanelConfig.max_clock >> 8 ) );
 317          
 318                  WriteEEP( PANELINFO+0x0e , PanelConfig.pixs_per_clock );
 319          
 320                  WriteEEP( PANELINFO+0x0f , PanelConfig.DE_only );
 321          }
 322          
 323          
 324          #if (defined SERIAL) || (defined SUPPORT_PATTERN) || (defined WIDE_SCREEN)
 325          WORD GetPanelXRes(void)
 326          {
 327                  WORD res;
 328          
 329                  res = ReadEEP( PANELINFO+1 );
 330                  res = (res <<8 ) | ReadEEP( PANELINFO+0 );
 331                  return res;
 332          }
 333          
 334          WORD GetPanelYRes(void)
 335          {
 336                  WORD res;
 337          
 338                  res = ReadEEP( PANELINFO+3 );
 339                  res = (res <<8 ) | ReadEEP( PANELINFO+2 );
 340                  return res;
 341          }
 342          #endif//  (defined SUPPORT_PATTERN) || (defined WIDE_SCREEN)
 343          */
 344          
 345          /****
 346          #if (defined SERIAL) || (defined WIDE_SCREEN)
 347          BYTE GetPanelHsyncMinPulseWidth(void)
 348          {
 349                  return ReadEEP( PANELINFO+4 );
 350          }
 351          
 352          BYTE GetPanelVsyncMinPulseWidth(void)
 353          {
 354                  return ReadEEP( PANELINFO+5 );
 355          }
 356          
 357          WORD GetPanelHMinBackPorch(void)
 358          {
 359                  WORD res;
 360          
 361                  res = ReadEEP( PANELINFO+7 );
 362                  res = (res <<8 ) | ReadEEP( PANELINFO+6 );
 363                  return res;
 364          }
C51 COMPILER V7.06   ETC_EEP                                                               02/21/2008 14:00:26 PAGE 7   

 365          
 366          BYTE GetPanelHsyncPolarity(void)
 367          {
 368                  return ReadEEP( PANELINFO+8 );
 369          }
 370          
 371          BYTE GetPanelVsyncPolarity(void)
 372          {
 373                  return ReadEEP( PANELINFO+9 );
 374          }
 375          
 376          WORD GetPanelDotClock(void)
 377          {
 378                  WORD res;
 379          
 380                  res = ReadEEP( PANELINFO+0x0b );
 381                  res = (res <<8 ) | ReadEEP( PANELINFO+0x0a );
 382                  return res;
 383          }
 384          #endif // WIDE_SCREEN
 385          
 386          WORD GetPanelMaxClock(void)
 387          {
 388                  WORD res;
 389          
 390                  res = ReadEEP( PANELINFO+0x0d );
 391                  res = (res <<8 ) | ReadEEP( PANELINFO+0x0c );
 392                  return res;
 393          }
 394          
 395          BYTE GetPanelPixsPerClock(void)
 396          {
 397                  return ReadEEP( PANELINFO+0x0e );
 398          }
 399          ***/
 400          
 401          /* Not used yet *************************
 402          BYTE GetPanelDEonly(void)
 403          {
 404                  return ReadEEP( PANELINFO+0x0f );
 405          }
 406          */
 407          
 408          //===================================================================
 409          
 410          #ifdef SUPPORT_TV
              
              #ifdef NTSC_TV
              BYTE GetTVInputSelEE(void)
              {
                      return ReadEEP( EEP_TVInputSel );
              }
              
              void SetTVInputSelEE(BYTE val)
              {
                      WriteEEP(EEP_TVInputSel, val);
              }
              #endif
              
              void SetTVPrEE(void)
              {
                      #ifdef NTSC_TV
C51 COMPILER V7.06   ETC_EEP                                                               02/21/2008 14:00:26 PAGE 8   

                      if( TVInputSel == AIRTV ) WriteEEP(CHN_CURAIR, TVChannel);
                      else                                    WriteEEP(CHN_CURCABLE, TVChannel);
                      #else
                      WriteEEP(PR_CUR, TVChannel);
                      #endif
              }
              
              BYTE GetTVPrEE(void)
              {
                      #ifdef NTSC_TV
                      if( TVInputSel == AIRTV ) return ReadEEP( CHN_CURAIR );
                      else                            return ReadEEP( CHN_CURCABLE );
                      #else
                      return ReadEEP( PR_CUR );
                      #endif
              }
              
              #ifdef PAL_TV
              void SetTVFreqEE(BYTE pr, WORD freq)
              {
                      WORD addr;
              
                      addr = FIRST_SAVEDPR + pr*BYTEPERCHANNEL;
              
                      #ifdef DEBUG_EEP
                      dPrintf("\r\n++(SetTVFreqEE) addr:0x%x, freq:%ld__", addr, freq );
                      #endif
                      // 2 Byte 
                      WriteEEP( addr++, (BYTE)( (freq>>8)  & 0xff ) );
                      WriteEEP( addr, (BYTE)(freq) );
              }
              
              WORD GetTVFreqEE(BYTE pr)
              {
                      BYTE i;
                      WORD addr;
                      WORD freq=0;
              
                      addr = FIRST_SAVEDPR + pr*BYTEPERCHANNEL;
                      // 2 Byte
                      for(i=0; i<2; i++ ) {
                              freq <<= 8;
                              freq  |= ReadEEP( addr++ ); 
                      }
              
                      return freq;
              }
              #endif
              
              void SetFineTuneEE(BYTE pr, BYTE freq)
              {
                      WORD    addr;
                      #ifdef PAL_TV
                      addr = (FIRST_SAVEDPR +TVFINETUNE )  + pr*BYTEPERCHANNEL;
                      #else   
                      if( TVInputSel == AIRTV ) addr = FIRSTSAVED_AIRCHN+TVFINETUNE + pr*BYTEPERCHANNEL;
                      else                            addr = FIRSTSAVED_CABLECHN+TVFINETUNE + pr*BYTEPERCHANNEL;
                      #endif
              
                      #ifdef DEBUG_EEP
                      dPrintf("\r\n++(SetTVFreqEE) addr:0x%x, freq:%ld__", addr, freq );
                      #endif
C51 COMPILER V7.06   ETC_EEP                                                               02/21/2008 14:00:26 PAGE 9   

              
                      WriteEEP( addr, freq );
              }
              
              BYTE GetFineTuneEE(BYTE pr)
              {
              //      BYTE i;
                      WORD addr;
                      WORD freq=0;
                      #ifdef PAL_TV
                      addr = FIRST_SAVEDPR+TVFINETUNE + pr*BYTEPERCHANNEL;
                      #else
                      if( TVInputSel == AIRTV ) addr = FIRSTSAVED_AIRCHN+TVFINETUNE  + pr*BYTEPERCHANNEL;
                      else                            addr = FIRSTSAVED_CABLECHN+TVFINETUNE + pr*BYTEPERCHANNEL;
                      #endif
              
                      freq = ReadEEP(addr);
                      return freq;
              }
              
              BYTE GetTVPrSystem(BYTE pr)
              {
                      WORD addr;
                      #ifdef PAL_TV
                      addr = FIRST_SAVEDPR+TVPRSYSTEM + pr*BYTEPERCHANNEL;
                      #else
                      if( TVInputSel == AIRTV ) addr = FIRSTSAVED_AIRCHN+TVPRSYSTEM  + pr*BYTEPERCHANNEL;
                      else                            addr = FIRSTSAVED_CABLECHN+TVPRSYSTEM + pr*BYTEPERCHANNEL;
                      #endif
              
                      return ReadEEP( addr ); 
              
                      
              }
              
              void SetTVPrSystem(BYTE pr, BYTE Val)
              {
                      WORD    addr;
              
                      #ifdef PAL_TV
                      addr = FIRST_SAVEDPR+TVPRSYSTEM + pr*BYTEPERCHANNEL;
                      #else
                      if( TVInputSel == AIRTV ) addr = FIRSTSAVED_AIRCHN+TVPRSYSTEM  + pr*BYTEPERCHANNEL;
                      else                            addr = FIRSTSAVED_CABLECHN+TVPRSYSTEM + pr*BYTEPERCHANNEL;
                      #endif
              
                      WriteEEP( addr, Val ); 
                      
              }
              
              //#endif                //PAL_TV
              
              #endif //SUPPORT_TV
 542          
 543          void ClearBasicEE(void)
 544          {
 545   1              SaveVInputStdDetectModeEE(0);   // AUTO
 546   1              WriteEEP(EEP_CCD, 0);   // CC = OFF
 547   1      
 548   1              ResetOSDValue();
 549   1              //SavePanelInfoEE();
 550   1      
C51 COMPILER V7.06   ETC_EEP                                                               02/21/2008 14:00:26 PAGE 10  

 551   1              ResetAudioValue();
 552   1      
 553   1      
 554   1              ResetVideoValue();
 555   1      
 556   1              #ifdef SUPPORT_TV
                      WriteEEP(EEP_TVInputSel, 0);  //AIRTV
                      TVChannel = DummyChannel = 2; 
              
                              #ifdef NTSC_TV
                      WriteEEP(CHN_CURAIR, TVChannel);
                      TVInputSel = AIRTV; SetFineTuneEE(TVChannel, 0); //E2(55.25 Mhz)
                      WriteEEP(CHN_CURCABLE, TVChannel);
                      TVInputSel = CABLETV;   SetFineTuneEE(TVChannel, 0); //E2(55.25 Mhz)
                              #else
                      WriteEEP(PR_CUR, TVChannel);
                      SetTVFreqEE(TVChannel, 0x05e2); //E3(55.25 Mhz)
                              #endif
                      #endif // SUPPORT_TV
 570   1      
 571   1              #ifdef WIDE_SCREEN
 572   1              Set4WideScreen(WIDESCREEN_WIDE);
 573   1              #endif
 574   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    496    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----       6
   DATA SIZE        =   ----    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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