SuperIC社区_

标题: 特定屏在格子画面下看到最底下的一根线闪动 [打印本页]

作者: AlexWeng    时间: 2017-3-1 23:59
标题: 特定屏在格子画面下看到最底下的一根线闪动
特定屏在格子画面下看到最底下的一根线闪动

关键字:格子画面 线闪
适用机型:所有Non-OS芯片
        之前有遇到某客户V39平台点某些FHD的屏,VGA下某些Timing,尤其1920X1080/60时,在细线格子画面下,最后一根横线会上下闪动的问题。后来通过把调试工具里Direct Scaler Adjustment页的Delay Line由0改为2,问题解决。具体代码如下。这个寄存器是所有Non-OS芯片通用的。
        msSetFrameLockMode( BYTE ucFrameLockMode )

       {
        。。。。。。
       case FLM_FBL_FRAMEPLL: // Tune Clock
            SCALEROP_PUTSTR("\r\n [- FLM_FBL_FRAMEPLL -]");
            bEnableFrameLock = 1;
            bEnableFramePLLMode = 1;
            ucLockYLine = 0x02;

            if (IS_SRC_INTERLACE_MODE(SRC1))
            {
                if( g_SetupModeInfo[SRC1].ucDeInterlaceMode == DEINT_OFF )
                    ucInputTriggerPointDelayLines = 2;
                else if( IsSrcInput1080I(SRC1) && (g_WindowInfo[SRC1].V_PostScalingInfo == POST_SCALING_UP) )
                    ucInputTriggerPointDelayLines = 5; // Check in FullHD panel & 1080i, overscan=25
                else
                    ucInputTriggerPointDelayLines = 6;
            }
            else if( g_WindowInfo[SRC1].V_PostScalingInfo == POST_SCALING_UP )
                ucInputTriggerPointDelayLines = 7;
            else
                ucInputTriggerPointDelayLines = 8;
   
   #if(PANEL_TYPE_SEL==PNL_AU370_T370HW01_HD)//added  2017.03.01
   if(IsVGAInUse()&&(g_SrcInfo[GetVGASrcIdx()].ucModeIndex==MD_1920x1080_60)&&((ucInputTriggerPointDelayLines&_BIT1)==0))
   ucInputTriggerPointDelayLines=ucInputTriggerPointDelayLines|_BIT1;

   #endif
   msWriteByteMask(SC1_12, ucLockYLine, 0x0F);
            msSetDelayLine( ucInputTriggerPointDelayLines );
            msLPLL_EnableFrameLockCtrl(bEnableFrameLock); // Frame Lock On/Off
            msWriteBit(SC10_39, _ENABLE, _BIT0); // Output freerun enable
            msSetFrameLockMode_FastLock(ucFrameLockMode);
            break;

      }

作者: jayden    时间: 2017-3-16 19:58





欢迎光临 SuperIC社区_ (/) Powered by Discuz! X3.3