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

📄 video.lst

📁 myson的MTV332的DEMO程序 主要功能有菜单的设计和无线遥控以及视频参数的调节
💻 LST
📖 第 1 页 / 共 3 页
字号:
 213          /****************************************************************************/
 214          void Set_GammaVg1(void)
 215          {
 216   1              sGamma.Vg1 = ItemValue.value;
 217   1              CS7111_Write(0x07,sGamma.Vg1);
 218   1      }
 219          /****************************************************************************/
 220          void Set_GammaVg2(void)
 221          {
 222   1              sGamma.Vg2 = ItemValue.value;
 223   1              CS7111_Write(0x08,sGamma.Vg2);
 224   1      }
 225          /****************************************************************************/
 226          void Set_VCOMAMP(void)
 227          {
 228   1              sGamma.CAMP= ItemValue.value;
 229   1              CS7111_Write(0x0E,sGamma.CAMP);
 230   1      }
 231          /****************************************************************************/
 232          void Set_VCOMDC(void)
 233          {
 234   1              sGamma.CDC = ItemValue.value;
 235   1              CS7111_Write(0x0F,sGamma.CDC);
 236   1      }
 237          /****************************************************************************/
 238          void Set_DriveR(void)
 239          {
 240   1              sGamma.DR = ItemValue.value;
C51 COMPILER V7.09   VIDEO                                                                 09/06/2006 13:39:49 PAGE 5   

 241   1              CS7111_Write(0x0A,sGamma.DR | 0x00);
 242   1              //CS7111_Write(0x12,sGamma.DR );
 243   1      }
 244          /****************************************************************************/
 245          void Set_DriveG(void)
 246          {
 247   1              sGamma.DG= ItemValue.value;
 248   1              CS7111_Write(0x0B,sGamma.DG | 0x00);
 249   1              //CS7111_Write(0x13,sGamma.DG );
 250   1      }
 251          /****************************************************************************/
 252          void Set_DriveB(void)
 253          {
 254   1              sGamma.DB = ItemValue.value;
 255   1              CS7111_Write(0x0C,sGamma.DB | 0x00);
 256   1      }
 257          /****************************************************************************/
 258          
 259          
 260          
 261          BYTE ReadVideoStatus()
 262          {
 263   1              BYTE Temp;
 264   1      
 265   1              SStatus=Video_Sync();   // For Sync detect
 266   1              Video_S(SStatus);
 267   1              CS7111_Read(0x00,&Temp,1);              
 268   1              
 269   1              Temp&=0x7C;
 270   1              return Temp;
 271   1              
 272   1      }
 273          void Get_VideoSync(void)
 274          {
 275   1              BYTE temp;
 276   1      
 277   1              bSyncChange = FALSE;
 278   1      
 279   1              switch(SyncStep)
 280   1              {
 281   2                      case 0 :   // check video sync change
 282   2                              temp = ReadVideoStatus();
 283   2                              if(temp != OldVideoStatus)
 284   2                              {                       
 285   3                                      OldVideoStatus = temp;
 286   3                                      SyncStep = 1;
 287   3                                      SyncReChkCnt = SYNC_STABLE_TIME;
 288   3                                      CS7111_Write(0x0A, 0x60);       // enable Free run
 289   3                                      byMTV_TCONADDR = 0x0B;  // 0x00 ~ 0x1d
 290   3                                      byMTV_TCONDATA = 0x08;  // 0x00 ~ 0x1d
 291   3                                      DisableOSD();
 292   3                              }                               
 293   2                                      
 294   2                                      #if 0
                                              if((temp&0x20) == 0x20)
                                              {
                                                      tmpbuf[0]++;
                                                      OldVideoStatus = temp;
                                                      temp=(temp&0x1C)>>2;
                                                      if(temp>=0x01&&temp<=0x03)
                                                              bNTSCVideo = 0;
                                                      else if(temp>=0x04&&temp<=0x05)
C51 COMPILER V7.09   VIDEO                                                                 09/06/2006 13:39:49 PAGE 6   

                                                              bNTSCVideo = 1;
                                                      bSyncChange = TRUE;
                                                      bNoSync = 0;
                                              }
                                              else if((temp&0x20) == 0x00)
                                              {
                                                      tmpbuf[1]++;
                                                      OldVideoStatus = temp;
                                                      bSyncChange = TRUE;
                                                      bNoSync = 1;
                                              }
                                              #endif
 315   2                              /*      
 316   2                              if(temp != 0x3C)
 317   2                              {
 318   2                              // turn off  display                                                        
 319   2                                          SetBlack(ON);
 320   2                                      Res_BKLT;
 321   2                                      Close_OSD();
 322   2                                      OldVideoStatus = temp;
 323   2                                      SyncStep = 1;
 324   2                                      SyncReChkCnt = VIDEOSYNC_STABLE_TIME;
 325   2                              }
 326   2                                      */
 327   2                              break;
 328   2                      #if 1
 329   2                      case 1 :  // wait sync stable
 330   2                              if(SyncReChkCnt == 0)
 331   2                              {
 332   3                                      SyncStep = 0;
 333   3                                      temp = ReadVideoStatus();
 334   3                                      if(temp == OldVideoStatus )
 335   3                                      {
 336   4                                              if((temp&0x3C)==0x20)
 337   4                                              {
 338   5                                                      //VSW = 0x01;
 339   5                                                      //SyncSW = 0;
 340   5                                                      ColorSys = ~ColorSys;
 341   5                                                      //WIDEBLKPOL = 0;
 342   5                                                      CS7111_Write(0x0D,((SyncSW<<7)|(WIDEBLKPOL<<6)|(VSW<<3)|(ColorSys&0x01)));                              
 343   5                                              }       
 344   4                                              VideoStatusDecode(temp);
 345   4                                              bSyncChange = TRUE;
 346   4                                      }
 347   3                              }
 348   2                              break;
 349   2                        #endif
 350   2                        //Prevent unknow variable
 351   2                      default:
 352   2                              SyncStep = 0;
 353   2                              break;
 354   2              }
 355   1      
 356   1      }
 357          
 358          void Video_SyncProc()
 359          {
 360   1              if(bSyncChange==0)
 361   1                      return;
 362   1              if(bNoSync)
 363   1              {
 364   2                      CS7111_Write(0x0A, 0x40);
C51 COMPILER V7.09   VIDEO                                                                 09/06/2006 13:39:49 PAGE 7   

 365   2                      Disp_No_Input_Signal();
 366   2                      return;
 367   2              }
 368   1              else
 369   1              {
 370   2                      CS7111_Write(0x0A, 0x20);
 371   2              }
 372   1      
 373   1      
 374   1              byMTV_TCONADDR = 0x0B;  // 0x00 ~ 0x1d
 375   1              if(!bNTSCVideo)
 376   1              
 377   1                      byMTV_TCONDATA = 0x05;  
 378   1              else
 379   1                      byMTV_TCONDATA = 0x08;  // 0x00 ~ 0x1d
 380   1      
 381   1              
 382   1              Disp_Input_Mode();
 383   1              
 384   1                      
 385   1      }
 386          
 387          void Initial_Video()
 388          {
 389   1              
 390   1              
 391   1              DoWait(150);
 392   1              
 393   1              //CS7111_Write(0x0E,0xA0);
 394   1              //CS7111_Write(0x0F,0x80);
 395   1              CS7111_Write(0x0A,0x40);                // For default is no sync
 396   1      
 397   1              #ifdef MTV332_PLL
 398   1              CS7111_Write(0x12,0x7F);        
 399   1              CS7111_Write(0x10,0x31);                
 400   1              CS7111_Write(0x11,0x14);
 401   1              #endif
 402   1      
 403   1              #ifdef VD_PLL
                      CS7111_Write(0x12,0x07);        
                      CS7111_Write(0x10,0x11);                
                      CS7111_Write(0x11,0x00);
                      #endif
 408   1      }
 409          #endif
 410          
 411          #endif
 412          /****************************************************************************/
 413          void VideoStatusDecode(BYTE temp)
 414          {
 415   1              if( ((temp & 0x20) == 0) )       // No Connector
 416   1                      bNoSync = TRUE;
 417   1              else
 418   1              {
 419   2                      bNoSync = FALSE;
 420   2      
 421   2                      if((temp & 0x40) )       
 422   2                              bNTSCVideo = 1; // NTSC input
 423   2                      else
 424   2                              bNTSCVideo = 0; //PAL input
 425   2      
 426   2                      byVideoMode = ((temp & 0x1c)>>2);
C51 COMPILER V7.09   VIDEO                                                                 09/06/2006 13:39:49 PAGE 8   

 427   2      
 428   2              }
 429   1      }
 430          
 431          
 432          /****************************************************************************/

⌨️ 快捷键说明

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