This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM8127与YUV 16bit sensor对接,数据异常请教

之前在帖子中请教过,现在从ipnc-rdk-3.5移到ipnc-rdk-3.8。sensor 输出YUV 4:2:2 16bit的数据给DM8127,参照OV10630在cameraLink_drv.c做了如下修改:

pVipCreateArgs->inFmt.dataFormat = FVID2_DF_YUV422SP_VU;
pVipCreateArgs->videoIfMode = ISS_CAPT_YUV_16BIT;

在issDrv_captureApi.c中配置:
isif_reg->SYNCEN = 0x3;
ipipe_reg->SRC_COL = 27;
ipipeif_reg->CFG2 = 0x0E;
ipipe_reg->SRC_HPS=0;
ipipe_reg->SRC_VPS=0;
ipipe_reg->SRC_VSZ = 1080;
ipipe_reg->SRC_HSZ = 1920;

gIss_captCommonObj.pModuleInstance->nLscTableIsValid = MSP_TRUE;
ipipe_reg->WB2_WGN_R = 600;
ipipe_reg->WB2_WGN_B = 750;
ipipe_reg->RGB1_MUL_RR = 256;
ipipe_reg->RGB1_MUL_GR = 0;
ipipe_reg->RGB1_MUL_BR = 0;
ipipe_reg->RGB1_MUL_RG = 0;
ipipe_reg->RGB1_MUL_GG = 256;
ipipe_reg->RGB1_MUL_BG = 0;
ipipe_reg->RGB1_MUL_RB = 0;
ipipe_reg->RGB1_MUL_GB = 0;
ipipe_reg->RGB1_MUL_BB = 256;
*(MSP_U32 *)(0x5505006C) &= 0xBFFFFF;

引脚的pinmux部分配置:
//D8~D15
*PINCNTL156 = 0x00050002;
*PINCNTL157 = 0x00050002;
*PINCNTL158 = 0x00050002;
*PINCNTL159 = 0x00050002;
*PINCNTL160 = 0x00050002;
*PINCNTL161 = 0x00050002;
*PINCNTL162 = 0x00050002;
*PINCNTL163 = 0x00050002;
//D7~D0
*PINCNTL164 = 0x00050002;
*PINCNTL165 = 0x00050002;
*PINCNTL166 = 0x00050002;
*PINCNTL167 = 0x00050002;
*PINCNTL168 = 0x00050002;
*PINCNTL169 = 0x00050002;
*PINCNTL170 = 0x00050002;
*PINCNTL171 = 0x00050002;
//hs
*PINCNTL172 = 0x00050002;
//vs
*PINCNTL173 = 0x00050002;
//fld
*PINCNTL174 = 0x00050002;
//pclk
*PINCNTL175 = 0x00050002;

采集到的图片在web上显示是:

使使用DDC抓的RAW和YUV数据与web上看见的差不多,抓的图见附件。

我也尝试修改过极性:

isifCfg.hdPolarity = ISS_ISIF_SYNC_POLARITY_POSITIVE;//ISS_ISIF_SYNC_POLARITY_NEGATIVE;
isifCfg.vdPolarity = ISS_ISIF_SYNC_POLARITY_POSITIVE;

但是效果是一样的。

由于还没申请到ISS的文档,很多寄存器不知道怎么修改。

1,请问我还需要怎么修改配置?

2,我的图左边和上边都存在黑边,请问怎么修改?

  • 黑边的问题已经通过调试下面两个参数解决。现在就是视频还是不对。

    ipipe_reg->SRC_HPS=192;
    ipipe_reg->SRC_VPS=45;

  • 你好,请问接收YUV16的数据,除了帖子中的设置外,还需要哪些地方设置,我们这边用V3.8版本,接收YUV16分辨率3392*2008,一直不出流,修改分辨率要设置哪些模块呢?还请指教一二。

  • Jiran Sun 说:

    你好,请问接收YUV16的数据,除了帖子中的设置外,还需要哪些地方设置,我们这边用V3.8版本,接收YUV16分辨率3392*2008,一直不出流,修改分辨率要设置哪些模块呢?还请指教一二。

    你好,你是通过camera 接口 接入 还是 vin prot 接口接入的视频 ? 可以确定前端的输入是正常的吗?

  • 谢谢你的回复,

           我这边是通过VP接口接入视频,可以确认前端输入正常,我们这边尝试过接收1920*1080分辨率的YUV数据,可以出流,但是修改分辨率为3392*2008,后端8127的链路就没有数据流,也不知道哪块设置没有正确。汗

  • 你好,请问接收YUV16的数据,除了帖子中的设置外,还需要哪些地方设置,我们这边用V3.8版本,接收YUV16分辨率3392*2008,一直不出流,修改分辨率要设置哪些模块呢?

    【更新 http://www.deyisupport.com/question_answer/dsp_arm/davinci_digital_media_processors/f/39/t/87101.aspx】

  • http://www.deyisupport.com/question_answer/dsp_arm/davinci_digital_media_processors/f/39/t/120877.aspx

    你好,请到新帖位置回复,谢谢。

    vip 的最大采集时钟是165Mhz ,你现在的输入时钟是多少,帧率是多少 ?

  • anguo wang 说:

    黑边的问题已经通过调试下面两个参数解决。现在就是视频还是不对。

    ipipe_reg->SRC_HPS=192;
    ipipe_reg->SRC_VPS=45;

    你好,我们的环境是球机机芯输出YUV422,接入8127,RDK3.8版本,也遇到这种问题左边和上面有黑边,我尝试改过issdrv_captureApi.c中的        

    ipipe_reg->SRC_HPS=192;
    ipipe_reg->SRC_VPS=36;

    但是没有效果,黑边还存在,也没有改变。机芯接口时序图如下,

    请教一下,还有其他地方设置影响寄存器配置吗,多谢啦