大家好、TI 支持团队。
我在 ti-processor-sdk-rtos-j721e-evm-08_02_00_05中遇到 DSI 接口问题。
DSI 接口可以使用以下 DSI 参数配置输出正弦信号
("pdk_jacinto_08_02_00_21/packages/ti/drv/dss/src/drv/dctrlDss.c"中的 dssDctrlUpdateVideoSizeConfig 函数
horzTotal = mInfo->width + mInfo->hFrontPorch + mInfo->hBackPorch + mInfo->hSyncLen;
dsiObj->videoSizeCfg.vact = mInfo->height; //[720]
dsiObj->videoSizeCfg.vfp = 1; //[1]
dsiObj->videoSizeCfg.vbp = mInfo->vBackPorch; //[20]
dsiObj->videoSizeCfg.vsa = mInfo->vSyncLen; //[5]
dsiObj->videoSizeCfg.hsa = (mInfo->hSyncLen * BPP) - 14; //[106]
dsiObj->videoSizeCfg.hbp = (mInfo->hBackPorch * BPP) - 12; //[648]
dsiObj->videoSizeCfg.rgb = mInfo->width * BPP; //[3840]
dsiObj->videoSizeCfg.hfp = (mInfo->hFrontPorch * BPP) - 6; //[324]
dsiObj->videoSizeCfg.blkLinePulsePacket = (horzTotal * BPP) - 20 - dsiObj->videoSizeCfg.hsa; //[4824] ( 1280 + 110 + 220 + 40 ) * BPP - 20 - dsiObj->videoSizeCfg.hsa;
但该配置用于让 FPD Link 串行器在 LCD 侧显示。
我使用标准 VESA 参数重新配置 DSI 参数并将其作为 BLOW。
uint32_t horzTotal;
horzTotal = mInfo->width + mInfo->hFrontPorch + mInfo->hBackPorch + mInfo->hSyncLen;
dsiObj->videoSizeCfg.vact = 720;
dsiObj->videoSizeCfg.vfp = 5;
dsiObj->videoSizeCfg.vbp = 20;
dsiObj->videoSizeCfg.vsa = 5;
dsiObj->videoSizeCfg.hsa = ( 40 * BPP );
dsiObj->videoSizeCfg.hbp = ( 220 * BPP );
dsiObj->videoSizeCfg.rgb = (1280 * BPP );
dsiObj->videoSizeCfg.hfp = ( 110 * BPP );
dsiObj->videoSizeCfg.blkLinePulsePacket = (horzTotal * BPP);
修改后、DSI 接口数据通道没有任何信号。
我是否错过了配置的某些内容?
以及如何计算"blkLinePulsePacket"值?