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

📄 dac_crt.c

📁 mstar 776 开发的车载dvd
💻 C
📖 第 1 页 / 共 5 页
字号:
        PANEL_REDUCE_DE_SIZE_BIT | PANEL_DOUBLE_OSD_X_BIT,//ExtendFlag
    },
    //DAC_FOR_NTSC_315K
    {
        0 ,       // DEVstar
        0x00,     // HsyncShiftOffset
        64*2,     // HSyncWidth
        100*2,    // HSyncBackPorch
        19,       // VSyncWidth
        1,        // VSyncBackPorch
        1370,     // DeWidth
        480,      // DeHeight
        928*2,    // HTotal
        525,      // VTotal
        29.232*2, // OuputDClk
        ((PANEL_DAC_INTERLACE_BIT & 0) | (PANEL_DAC_I1440_MODE_BIT & 0) | (PANEL_DAC_INV_FIELD_BIT & 0 | PANEL_DAC_SHIFT_RIGHT_BIT & 0)),
        PANEL_REDUCE_DE_SIZE_BIT | PANEL_DOUBLE_OSD_X_BIT,//ExtendFlag
    },
    //DAC_FOR_VGA_315K
    {
        0 ,     // DEVstar
        0x00,   // HsyncShiftOffset
        64,     // HSyncWidth
        100,    // HSyncBackPorch
        19,     // VSyncWidth
        1,      // VSyncBackPorch
        720,    // DeWidth
        480,    // DeHeight
        928,    // HTotal
        525,    // VTotal
        29.232, // OuputDClk
        ((PANEL_DAC_INTERLACE_BIT & 0) | (PANEL_DAC_I1440_MODE_BIT & 0) | (PANEL_DAC_INV_FIELD_BIT & 0 | PANEL_DAC_SHIFT_RIGHT_BIT & 0)),
        NULL,   //ExtendFlag
    },
    //DAC_FOR_720P_315K
    {
        0 ,     // DEVstar
        0x00,   // HsyncShiftOffset
        64,     // HSyncWidth
        150,    // HSyncBackPorch
        19,     // VSyncWidth
        1,      // VSyncBackPorch
        960,    // DeWidth
        480,    // DeHeight
        1238,   // HTotal
        525,    // VTotal
        38.997, // OuputDClk
        ((PANEL_DAC_INTERLACE_BIT & 0) | (PANEL_DAC_I1440_MODE_BIT & 0) | (PANEL_DAC_INV_FIELD_BIT & 0 | PANEL_DAC_SHIFT_RIGHT_BIT & 0)),
        PANEL_REDUCE_DE_SIZE_BIT,//ExtendFlag
    },
    //DAC_FOR_1080_315K
    {
        0 ,     // DEVstar
        0x00,   // HsyncShiftOffset
        64,     // HSyncWidth
        257,    // HSyncBackPorch
        19,     // VSyncWidth
        1,      // VSyncBackPorch
        1440,   // DeWidth
        480,    // DeHeight
        1856,   // HTotal
        525,    // VTotal
        58.464, // OuputDClk
        ((PANEL_DAC_INTERLACE_BIT&0)|(PANEL_DAC_I1440_MODE_BIT&0)|(PANEL_DAC_INV_FIELD_BIT&0|PANEL_DAC_SHIFT_RIGHT_BIT&0)),
        PANEL_REDUCE_DE_SIZE_BIT,//ExtendFlag
    },
    //DAC_FOR_PAL_315K_100I
    {
        0 ,       // DEVstar
        0x38*2,     // HsyncShiftOffset
        64*2,     // HSyncWidth
        150*2,    // HSyncBackPorch
        24,       // VSyncWidth
        1,        // VSyncBackPorch
        1370,     // DeWidth
        600,      // DeHeight
        928*2,    // HTotal
        630,      // VTotal
        29.232*2, // OuputDClk
        ((PANEL_DAC_INTERLACE_BIT&0xFF)|(PANEL_DAC_I1440_MODE_BIT&0)|(PANEL_DAC_INV_FIELD_BIT&0|PANEL_DAC_SHIFT_RIGHT_BIT&0)),
        PANEL_REDUCE_DE_SIZE_BIT|PANEL_DOUBLE_OSD_X_BIT,//ExtendFlag
    },
    //DAC_FOR_NTSC_315K_120I
    {
        0 ,       // DEVstar
        0x38*2,   // HsyncShiftOffset
        64*2,     // HSyncWidth
        150*2,    // HSyncBackPorch
        19,       // VSyncWidth
        1,        // VSyncBackPorch
        1370,     // DeWidth
        480,      // DeHeight
        928*2,    // HTotal
        525,      // VTotal
        29.232*2, // OuputDClk
        ((PANEL_DAC_INTERLACE_BIT&0xFF)|(PANEL_DAC_I1440_MODE_BIT&0)|(PANEL_DAC_INV_FIELD_BIT&0|PANEL_DAC_SHIFT_RIGHT_BIT&0)),
        PANEL_REDUCE_DE_SIZE_BIT|PANEL_DOUBLE_OSD_X_BIT,//ExtendFlag
    },
//-----------------------------------------------------------------------------------------------------------------------------
//-----------------------------------------------------------------------------------------------------------------------------
    //DAC_FOR_PAL_375K
    {
        0 ,      // DEVstar
        0x00,    // HsyncShiftOffset
        64*2,    // HSyncWidth
        100*2,   // HSyncBackPorch
        19,      // VSyncWidth
        1,       // VSyncBackPorch
        1370,    // DeWidth
        576,     // DeHeight
        928*2,   // HTotal
        625,     // VTotal
        34.800*2,// OuputDClk
        ((PANEL_DAC_INTERLACE_BIT & 0) | (PANEL_DAC_I1440_MODE_BIT & 0) | (PANEL_DAC_INV_FIELD_BIT & 0 | PANEL_DAC_SHIFT_RIGHT_BIT & 0)),
        PANEL_REDUCE_DE_SIZE_BIT | PANEL_DOUBLE_OSD_X_BIT,//ExtendFlag
    },
    //DAC_FOR_NTSC_375K
    {
        0 ,       // DEVstar
        0x00,     // HsyncShiftOffset
        64*2,     // HSyncWidth
        100*2,    // HSyncBackPorch
        19,       // VSyncWidth
        1,        // VSyncBackPorch
        1370,     // DeWidth
        576,      // DeHeight
        928*2,    // HTotal
        625,      // VTotal
        34.800*2,// OuputDClk
        ((PANEL_DAC_INTERLACE_BIT & 0) | (PANEL_DAC_I1440_MODE_BIT & 0) | (PANEL_DAC_INV_FIELD_BIT & 0 | PANEL_DAC_SHIFT_RIGHT_BIT & 0)),
        PANEL_REDUCE_DE_SIZE_BIT | PANEL_DOUBLE_OSD_X_BIT,//ExtendFlag
    },
    //DAC_FOR_VGA_375K
    {
        0 ,     // DEVstar
        0x00,   // HsyncShiftOffset
        64,     // HSyncWidth
        100,    // HSyncBackPorch
        19,     // VSyncWidth
        1,      // VSyncBackPorch
        720,    // DeWidth
        576,    // DeHeight
        928,    // HTotal
        625,    // VTotal
        34.800, // OuputDClk
        ((PANEL_DAC_INTERLACE_BIT & 0) | (PANEL_DAC_I1440_MODE_BIT & 0) | (PANEL_DAC_INV_FIELD_BIT & 0 | PANEL_DAC_SHIFT_RIGHT_BIT & 0)),
        NULL,   //ExtendFlag
    },
    //DAC_FOR_720P_375K
    {
        0 ,     // DEVstar
        0x00,   // HsyncShiftOffset
        64,     // HSyncWidth
        150,    // HSyncBackPorch
        19,     // VSyncWidth
        1,      // VSyncBackPorch
        960,    // DeWidth
        576,    // DeHeight
        1238,   // HTotal
        625,    // VTotal
        46.425, // OuputDClk
        ((PANEL_DAC_INTERLACE_BIT & 0) | (PANEL_DAC_I1440_MODE_BIT & 0) | (PANEL_DAC_INV_FIELD_BIT & 0 | PANEL_DAC_SHIFT_RIGHT_BIT & 0)),
        PANEL_REDUCE_DE_SIZE_BIT,//ExtendFlag
    },
    //DAC_FOR_1080_375K
    {
        0 ,     // DEVstar
        0x00,   // HsyncShiftOffset
        64,     // HSyncWidth
        257,    // HSyncBackPorch
        19,     // VSyncWidth
        1,      // VSyncBackPorch
        1440,   // DeWidth
        576,    // DeHeight
        1856,   // HTotal
        625,    // VTotal
        69.600, // OuputDClk
        ((PANEL_DAC_INTERLACE_BIT&0)|(PANEL_DAC_I1440_MODE_BIT&0)|(PANEL_DAC_INV_FIELD_BIT&0|PANEL_DAC_SHIFT_RIGHT_BIT&0)),
        PANEL_REDUCE_DE_SIZE_BIT,//ExtendFlag
    },
    //DAC_FOR_PAL_375K_100I
    {
        0 ,       // DEVstar
        0x38*2,     // HsyncShiftOffset
        64*2,     // HSyncWidth
        150*2,    // HSyncBackPorch
        24,       // VSyncWidth
        1,        // VSyncBackPorch
        1370,     // DeWidth
        700,      // DeHeight
        928*2,    // HTotal
        750,      // VTotal
        34.800*2,// OuputDClk
        ((PANEL_DAC_INTERLACE_BIT&0xFF)|(PANEL_DAC_I1440_MODE_BIT&0)|(PANEL_DAC_INV_FIELD_BIT&0|PANEL_DAC_SHIFT_RIGHT_BIT&0)),
        PANEL_REDUCE_DE_SIZE_BIT|PANEL_DOUBLE_OSD_X_BIT,//ExtendFlag
    },
    //DAC_FOR_NTSC_375K_120I
    {
        0 ,       // DEVstar
        0x38*2,     // HsyncShiftOffset
        64*2,     // HSyncWidth
        150*2,    // HSyncBackPorch
        19,       // VSyncWidth
        1,        // VSyncBackPorch
        1370,     // DeWidth
        576,      // DeHeight
        928*2,    // HTotal
        625,      // VTotal
        34.800*2,// OuputDClk
        ((PANEL_DAC_INTERLACE_BIT&0xFF)|(PANEL_DAC_I1440_MODE_BIT&0)|(PANEL_DAC_INV_FIELD_BIT&0|PANEL_DAC_SHIFT_RIGHT_BIT&0)),
        PANEL_REDUCE_DE_SIZE_BIT|PANEL_DOUBLE_OSD_X_BIT,//ExtendFlag
    },
 #endif
//-----------------------------------------------------------------------------------------------------------------------------
};

////////////////////////////////////////////////////////
U16 pnl_crt_GetDeVStart(PanelSelectType PnlSel)
{
    return tPanelOutData[PnlSel].DEVstart;
}
////////////////////////////////////////////////////////
U8 pnl_crt_GetHSyncShift(PanelSelectType PnlSel)
{
    return tPanelOutData[PnlSel].HsyncShiftOffset;
}
////////////////////////////////////////////////////////
U16 pnl_crt_GetHStart(PanelSelectType PnlSel)
{
#if (ISCANENABLE)
    if (PnlSel >= DAC_FOR_PAL_3375K_75I)
        return ((PANEL_HSYNC_WIDTH+PANEL_HSYNC_BACK_PORCH)-pnl_crt_GetScanHshift(PnlSel));
    else
#endif
        return ((PANEL_HSYNC_WIDTH+PANEL_HSYNC_BACK_PORCH));
}
////////////////////////////////////////////////////////
U8 pnl_crt_GetHSyncWidth(PanelSelectType PnlSel)
{
    return tPanelOutData[PnlSel].HSyncWidth;
}
////////////////////////////////////////////////////////
U16 pnl_crt_GetHSyncBackPorch(PanelSelectType PnlSel)
{
    return tPanelOutData[PnlSel].HSyncBackPorch;
}
////////////////////////////////////////////////////////
U16 pnl_crt_GetVSyncWidth(PanelSelectType PnlSel)
{
    return tPanelOutData[PnlSel].VSyncWidth;
}
////////////////////////////////////////////////////////
U16 pnl_crt_GetVSyncBackPorch(PanelSelectType PnlSel)
{
    return tPanelOutData[PnlSel].VSyncBackPorch;
}
////////////////////////////////////////////////////////
U16 pnl_crt_GetDeWidth(PanelSelectType PnlSel)
{
    return tPanelOutData[PnlSel].DeWidth;
}
////////////////////////////////////////////////////////
U16 pnl_crt_GetDeHeight(PanelSelectType PnlSel)
{
    return tPanelOutData[PnlSel].DeHeight;
}
////////////////////////////////////////////////////////
U16 pnl_crt_GetHTotal(PanelSelectType PnlSel)
{
    return tPanelOutData[PnlSel].HTotal;
}
////////////////////////////////////////////////////////
U16 pnl_crt_GetVTotal(PanelSelectType PnlSel)
{
    return tPanelOutData[PnlSel].VTotal;
}
////////////////////////////////////////////////////////
U32 pnl_crt_GetOuputDClk(PanelSelectType PnlSel)
{
    return tPanelOutData[PnlSel].OuputDClk;
}
////////////////////////////////////////////////////////
U8 pnl_crt_GetOutputCtrl(PanelSelectType PnlSel)
{
    return tPanelOutData[PnlSel].OutputCtrl;
}
////////////////////////////////////////////////////////
U8 pnl_crt_ExtendFlag(PanelSelectType PnlSel)
{
    return tPanelOutData[PnlSel].ExtendFlag;
}

#if (ISCANENABLE)
////////////////////////////////////////////////////////
//    typedef struct _ScanType
//    {
//        U16 wHt;
//        U16 wVt;
//        U16 wHtotal;  Only for scaling calculate
//        U16 wVtotal;  Only for scaling calculate
//        U16 wVend;
//        U8  ucHshift;
//        U8  ucX;
//        U8  ucY;
//    }ScanType;

code ScanType tScanSetting[5]=
{
    {1810, 450, 730, 364, 432, 27, 14, 12}, //75I  33750/ 75 = 450  576*(3/4) = 432
    {1810, 375, 692, 370, 360, 27, 14, 12}, //90I  33750/ 90 = 375  480*(3/4) = 360
    {1855, 337, 730, 494, 296, 27, 14, 12}, //100I 33750/100 = 337  576*(1/2) = 288
    {1855, 281, 692, 504, 263, 27, 14, 12}, //120I 33750/120 = 281  480*(1/2) = 240
    {1855, 562, 730, 364, 460, 27, 14, 12}, //60I  33750/60  = 562.5
};

U16 pnl_crt_GetScanHt(PanelSelectType PnlSel)
{
    return tScanSetting[PnlSel - DAC_FOR_PAL_3375K_75I].wHt;
}

U16 pnl_crt_GetScanVt(PanelSelectType PnlSel)
{
    return tScanSetting[PnlSel - DAC_FOR_PAL_3375K_75I].wVt;
}

U16 pnl_crt_GetScanHtotal(PanelSelectType PnlSel)
{
    return tScanSetting[PnlSel - DAC_FOR_PAL_3375K_75I].wHtotal;
}

U16 pnl_crt_GetScanVtotal(PanelSelectType PnlSel)
{
    return tScanSetting[PnlSel - DAC_FOR_PAL_3375K_75I].wVtotal;
}

U16 pnl_crt_GetScanVend(PanelSelectType PnlSel)
{
    return tScanSetting[PnlSel - DAC_FOR_PAL_3375K_75I].wVend;
}

U8 pnl_crt_GetScanHshift(PanelSelectType PnlSel)
{
    return tScanSetting[PnlSel - DAC_FOR_PAL_3375K_75I].ucHshift;
}

U8 pnl_crt_GetScanX(PanelSelectType PnlSel)
{
    return tScanSetting[PnlSel - DAC_FOR_PAL_3375K_75I].ucX;
}

U8 pnl_crt_GetScanY(PanelSelectType PnlSel)
{
    return tScanSetting[PnlSel - DAC_FOR_PAL_3375K_75I].ucY;
}
#endif

⌨️ 快捷键说明

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