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.

[参考译文] TDA4VM:CSI 和 VC 端口映射设置和调试

Guru**** 1822590 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1219415/tda4vm-csi-and-vc-port-map-setting-and-debug

器件型号:TDA4VM

我们添加了一个新的摄像头驱动程序、然后运行"vx_app_single_cam.sh"脚本测试图像发生错误、错误日志为"vx_zone_warning :[tivxCaptureSetTimeout:796] CAPTURE:warning:error 帧未使用 tivxCaptureRegisterErrorFrame 提供错误帧、默认为永远等待!!!"  ;

数据链路:

串行器->解串器-> CSI1 -> VC0   

读取串行器/解串器寄存器后、流数据包锁定在解串器中并输出到 CSI 端口。

问:

1.如何解决当前的错误,  我们可以使用任何工具或脚本?  

2.如何显示 CSI 输入日期日志

3.如何在代码中配置 CSI 端口和 VC 端口。 哪个是演示路径?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗯、这不是误差。 这只是一条消息、指出没有错误帧、因此如果传感器不输出任何帧、CSIRX 不捕获任何帧、它会被卡住。  

    您的传感器/解串器是否正确配置、以 在正确的虚拟通道编号和数据类型上输出数据? 通道速度是否与您的输出匹配? 您是否关注以下有关在成像框架中添加新传感器的说明?  

    https://software-dl.ti.com/jacinto7/esd/processor-sdk-rtos-jacinto7/latest/exports/docs/psdk_rtos/docs/user_guide/developer_notes_image_sensor.html

      

    此致、

    Brijesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    #include "iss_sensor_gmsl_ar0233.h"
    #include "max929x_ar0233_serdes_config.h"
    
    static IssSensor_CreateParams  gmsl_ar0233CreatePrms = {
        GMSL_AR0233_UYVY,     /*sensor name*/
        0x3,                             /*i2cInstId*/
        {0, 0, 0, 0, 0, 0, 0, 0},   /*i2cAddrSensor*/
        {0x20, 0x21, 0, 0, 0, 0, 0},      /*i2cAddrSer*/
        /*IssSensor_Info*/
        {
            {
                GMSL_AR0233_OUT_WIDTH,               /*width*/
                GMSL_AR0233_OUT_HEIGHT,              /*height*/
                1,                              /*num_exposures*/
                vx_false_e,                     /*line_interleaved*/
                {
                    {VX_DF_IMAGE_UYVY, 7},    /*dataFormat and MSB [0]*/
                },
                0,                              /*meta_height_before*/
                0,                              /*meta_height_after*/
            },
            ISS_SENSOR_GMSL_AR0233_FEATURES,     /*features*/
            ALGORITHMS_ISS_AEWB_MODE_NONE,  /*aewbMode*/
            30,                             /*fps*/
            4,                              /*numDataLanes*/
            {1, 2, 3, 4},                   /*dataLanesMap*/
            {0, 0, 0, 0},                   /*dataLanesPolarity*/
            CSIRX_LANE_BAND_SPEED_1500_TO_1750_MBPS, /*csi_laneBandSpeed*/
        },
        2,                                  /*numChan*/
        5233,                                /*dccId*/
    };
    
    static IssSensorFxns           gmsl_ar0233SensorFxns = {
        gmsl_ar0233_Probe,
        gmsl_ar0233_Config,
        gmsl_ar0233_StreamOn,
        gmsl_ar0233_StreamOff,
        gmsl_ar0233_PowerOn,
        gmsl_ar0233_PowerOff,
        NULL,
        NULL,
        gmsl_ar0233_GetDccParams,
        gmsl_ar0233_InitAewbConfig,
        NULL,
        NULL,
        NULL,
        gmsl_ar0233_deinit,
        NULL,
        NULL
    };
    
    static IssSensorIntfParams     gmsl_ar0233SensorIntfPrms = {
        0,             /*sensorBroadcast*/
        0,             /*enableFsin*/
        0,			   /*numCamerasStreaming*/
    };
    
    IssSensors_Handle gmsl_ar0233SensorHandle = {
        1,                                 /*isUsed*/
        &gmsl_ar0233CreatePrms,                /*CreatePrms*/
        &gmsl_ar0233SensorFxns,                /*SensorFxns*/
        &gmsl_ar0233SensorIntfPrms,            /*SensorIntfPrms*/
    };
    
    static uint8_t portInitNum[BOARD_GMSL_CSI_NMU] = {0};
    
    /*
     * \brief DCC Parameters of gw_ar0233
     */
    IssCapture_CmplxIoLaneCfg           gmsl_ar0233Csi2CmplxIoLaneCfg;
    
    extern IssSensors_Handle * gIssSensorTable[ISS_SENSORS_MAX_SUPPORTED_SENSOR];
    
    int32_t IssSensor_gmsl_ar0233_Init()
    {
        int32_t status;
        status = IssSensor_Register(&gmsl_ar0233SensorHandle);
        if(0 != status)
        {
            printf("IssSensor_gmsl_ar0233_Init failed \n");
        }
    
        return status;
    }
    
    /*******************************************************************************
     *  Local Functions Definition
     *******************************************************************************
     */
    static int32_t gmsl_ar0233_Probe(uint32_t chId, void *pSensorHdl)
    {
    	/*
    		Probe is used only for detecting cameras connected to an GMSL Link port. 
    		There is no reliable way of detecting this camera. 
    		Always return -1 to indicate autodetect failed.
    		If needed, user can manually select this sensor from application menu.
    	*/
        int32_t status = 0;
        return (status);
    }
    static int32_t gmsl_ar0233_Config(uint32_t chId, void *pSensorHdl, uint32_t sensor_features_requested)
    {
        int32_t status = 0;
        I2cParams *deserCfg = NULL;
        I2cParams *serCfg = NULL;
        int8_t gmslInstanceId = getGMSLInstIdFromChId(chId);
        uint32_t i2cInstId;
        IssSensors_Handle * pSenHandle = (IssSensors_Handle*)pSensorHdl;
        IssSensor_CreateParams * pCreatePrms;
        uint8_t cnt = 0;
        I2cParams dserPreCfg[] = 
        {
            {0x0010, 0x00, 10},
            {0x0010, 0x20, 200},
            {0xFFFF, 0, 0}
        };
        uint8_t serDefAddrList[] = {0x40, 0x42, 0x60, 0x62};
    
        assert(NULL != pSenHandle);
        pCreatePrms = pSenHandle->createPrms;
        assert(NULL != pCreatePrms);
    
        dserPreCfg[0].nRegValue |= (1 << (chId%2)); 
        dserPreCfg[1].nRegValue |= (1 << (chId%2)); 
    
        deserCfg = dserPreCfg;
        if(chId % 2)
        {
            serCfg = gmslBCfg;
        }
        else
        {
            serCfg = gmslACfg;
        }
        
        i2cInstId = pCreatePrms->i2cInstId;
    
        if(NULL != deserCfg)
        {
            status = max9296_cfgScript(deserCfg, gmslInstanceId);
        }
        
        for(cnt=0; cnt<sizeof(serDefAddrList); cnt++)
        {
            if (0 == MAX92xx_WriteReg(i2cInstId, serDefAddrList[cnt], 0x0000, pCreatePrms->i2cAddrSer[chId] << 1))
            {
                break;
            }
        }
    
        if(0 == status)
        {
            if(NULL != serCfg)
            {
                status = max9295_cfgScript(i2cInstId, pCreatePrms->i2cAddrSer[chId], serCfg);
            }
        }
        portInitNum[gmslInstanceId] |= (1 << (chId%2));
        if(0x03 == (portInitNum[gmslInstanceId] & 0x03))
        {
            dserPreCfg[0].nRegValue |= 0x03; 
            dserPreCfg[1].nRegValue |= 0x03; 
            status = max9296_cfgScript(deserCfg, gmslInstanceId);
            printf("Set dser into spilt mode, port init state:0x%02x\n", portInitNum[gmslInstanceId]);
        }
    
        return (status);
    }
    static int32_t gmsl_ar0233_StreamOn(uint32_t chId, void *pSensorHdl)
    {
        int32_t status = 0;
        int8_t gmslInstanceId = getGMSLInstIdFromChId(chId);
        I2cParams dseStartCSICfg[] = 
        {
            {0x0313, 0x02, 10},
            {0xFFFF, 0, 0}
        };
    
        status = max9296_cfgScript(dseStartCSICfg, gmslInstanceId);
        if(0 == status)
        {
            portInitNum[gmslInstanceId] |= (1 << (chId + 4));
        }
    
        return (status);
    }
    static int32_t gmsl_ar0233_StreamOff(uint32_t chId, void *pSensorHdl)
    {
        int32_t status = 0;
        int8_t gmslInstanceId = getGMSLInstIdFromChId(chId);
        I2cParams dseStopCSICfg[] = 
        {
            {0x0313, 0x00, 10},
            {0xFFFF, 0, 0}
        };
    
        portInitNum[gmslInstanceId] &= (~(1 << (chId + 4)));
        if(0 == (portInitNum[gmslInstanceId] & 0xF0))
        {
            status = max9296_cfgScript(dseStopCSICfg, gmslInstanceId);
        }
    
        return (status);
    }
    static int32_t gmsl_ar0233_PowerOn(uint32_t chId, void *pSensorHdl)
    {
        int32_t status = 0;
        return status;
    }
    static int32_t gmsl_ar0233_PowerOff(uint32_t chId, void *pSensorHdl)
    {
        int32_t status = 0;
        return status;
    }
    static int32_t gmsl_ar0233_GetDccParams(uint32_t chId, void *pSensorHdl, IssSensor_DccParams *pDccPrms)
    {
        int32_t status = 0;
        return status;
    }
    static void gmsl_ar0233_InitAewbConfig(uint32_t chId, void *pSensorHdl)
    {
        return;
    }
    static void gmsl_ar0233_deinit (uint32_t chId, void *pSensorHdl)
    {
        return;
    }

    这是源代码。 我们按照传感器成像框架添加了自己的传感器驱动程序。 某些 SerDser 配置是固定的 max9296和 max9295。

     ./vx_app_single_cam.out 
    APP: Init ... !!!
    MEM: Init ... !!!
    MEM: Initialized DMA HEAP (fd=4) !!!
    MEM: Init ... Done !!!
    IPC: Init ... !!!
    IPC: Init ... Done !!!
    REMOTE_SERVICE: Init ... !!!
    REMOTE_SERVICE: Init ... Done !!!
        57.595734 s: GTC Frequency = 200 MHz
    APP: Init ... Done !!!
        57.598717 s:  VX_ZONE_INIT:Enabled
        57.598744 s:  VX_ZONE_ERROR:Enabled
        57.598750 s:  VX_ZONE_WARNING:Enabled
        57.599816 s:  VX_ZONE_INIT:[tivxInitLocal:130] Initialization Done !!!
        57.599966 s:  VX_ZONE_INIT:[tivxHostInitLocal:93] Initialization Done for HOST !!!
    
     Single Camera Demo - (c) Texas Instruments 2019
     ========================================================
    
     Usage,
      ./vx_app_single_cam.out --cfg <config file>
    
    Defaulting to interactive mode 
    IttCtrl_registerHandler: command echo registered at location 0 
    IttCtrl_registerHandler: command iss_read_2a_params registered at location 1 
    IttCtrl_registerHandler: command iss_write_2a_params registered at location 2 
    IttCtrl_registerHandler: command iss_raw_save registered at location 3 
    IttCtrl_registerHandler: command iss_yuv_save registered at location 4 
    IttCtrl_registerHandler: command iss_read_sensor_reg registered at location 5 
    IttCtrl_registerHandler: command iss_write_sensor_reg registered at location 6 
    IttCtrl_registerHandler: command dev_ctrl registered at location 7 
    IttCtrl_registerHandler: command iss_send_dcc_file registered at location 8 
     NETWORK: Opened at IP Addr = 1.4.16.64, socket port=5000!!!
    tivxImagingLoadKernels done
        57.607733 s: ISS: Enumerating sensors ... !!!
    [MCU2_0]     57.608033 s: REMOTE_SERVICE: RX: mpu1_0 (port 1026) -> mcu2_0 (port 21) cmd = 0x00000000, prm_size = 384 bytes ... !!!
    [MCU2_0]     57.608156 s: ImageSensor_RemoteServiceHandler: IM_SENSOR_CMD_ENUMERATE 
    [MCU2_0]     57.608285 s: Max92xx config start.
    [MCU2_0]     57.608487 s: MAX92xx_WriteReg: Write reg 0x0313 by value 0x00, on slave 0x48 in I2C3
    [MCU2_0]     57.627840 s: Access register num=1
    [MCU2_0]     57.627882 s: End of Max9296 config 
    [MCU2_0]     57.627910 s: Max92xx config start.
    [MCU2_0]     57.628094 s: MAX92xx_WriteReg: Write reg 0x0010 by value 0x01, on slave 0x48 in I2C3
    [MCU2_0]     57.647957 s: MAX92xx_WriteReg: Write reg 0x0010 by value 0x21, on slave 0x48 in I2C3
    [MCU2_0]     57.847841 s: Access register num=2
    [MCU2_0]     57.847884 s: End of Max9296 config 
    [MCU2_0]     57.848146 s: max9296_CSI1_I2C3 linkA detected.
    [MCU2_0]     57.848181 s: Max92xx config start.
    [MCU2_0]     57.848361 s: MAX92xx_WriteReg: Write reg 0x0010 by value 0x02, on slave 0x48 in I2C3
    [MCU2_0]     57.867959 s: MAX92xx_WriteReg: Write reg 0x0010 by value 0x22, on slave 0x48 in I2C3
    [MCU2_0]     58.067843 s: Access register num=2
    [MCU2_0]     58.067886 s: End of Max9296 config 
    [MCU2_0]     58.068116 s: max9296_CSI1_I2C3 linkB can not detected.
    [MCU2_0]     58.068151 s: Max92xx config start.
    [MCU2_0]     58.068292 s: MAX92xx_WriteReg: Write reg 0x0050 by value 0x00, on slave 0x48 in I2C3
    [MCU2_0]     58.068464 s: MAX92xx_WriteReg: Write reg 0x0051 by value 0x01, on slave 0x48 in I2C3
    [MCU2_0]     58.068630 s: MAX92xx_WriteReg: Write reg 0x044a by value 0xd8, on slave 0x48 in I2C3
    [MCU2_0]     58.068846 s: MAX92xx_WriteReg: Write reg 0x040b by value 0x07, on slave 0x48 in I2C3
    [MCU2_0]     58.069032 s: MAX92xx_WriteReg: Write reg 0x040c by value 0x00, on slave 0x48 in I2C3
    [MCU2_0]     58.069198 s: MAX92xx_WriteReg: Write reg 0x040d by value 0x1e, on slave 0x48 in I2C3
    [MCU2_0]     58.069361 s: MAX92xx_WriteReg: Write reg 0x040e by value 0x1e, on slave 0x48 in I2C3
    [MCU2_0]     58.069522 s: MAX92xx_WriteReg: Write reg 0x040f by value 0x00, on slave 0x48 in I2C3
    [MCU2_0]     58.069682 s: MAX92xx_WriteReg: Write reg 0x0410 by value 0x00, on slave 0x48 in I2C3
    [MCU2_0]     58.069847 s: MAX92xx_WriteReg: Write reg 0x0411 by value 0x01, on slave 0x48 in I2C3
    [MCU2_0]     58.070028 s: MAX92xx_WriteReg: Write reg 0x0412 by value 0x01, on slave 0x48 in I2C3
    [MCU2_0]     58.070193 s: MAX92xx_WriteReg: Write reg 0x042d by value 0x15, on slave 0x48 in I2C3
    [MCU2_0]     58.070356 s: MAX92xx_WriteReg: Write reg 0x044a by value 0xd8, on slave 0x48 in I2C3
    [MCU2_0]     58.070518 s: MAX92xx_WriteReg: Write reg 0x044b by value 0x07, on slave 0x48 in I2C3
    [MCU2_0]     58.070681 s: MAX92xx_WriteReg: Write reg 0x044c by value 0x00, on slave 0x48 in I2C3
    [MCU2_0]     58.070845 s: MAX92xx_WriteReg: Write reg 0x044d by value 0x1e, on slave 0x48 in I2C3
    [MCU2_0]     58.071026 s: MAX92xx_WriteReg: Write reg 0x044e by value 0x5e, on slave 0x48 in I2C3
    [MCU2_0]     58.071195 s: MAX92xx_WriteReg: Write reg 0x044f by value 0x00, on slave 0x48 in I2C3
    [MCU2_0]     58.071359 s: MAX92xx_WriteReg: Write reg 0x0450 by value 0x40, on slave 0x48 in I2C3
    [MCU2_0]     58.071521 s: MAX92xx_WriteReg: Write reg 0x0451 by value 0x01, on slave 0x48 in I2C3
    [MCU2_0]     58.071681 s: MAX92xx_WriteReg: Write reg 0x0452 by value 0x41, on slave 0x48 in I2C3
    [MCU2_0]     58.071845 s: MAX92xx_WriteReg: Write reg 0x046d by value 0x15, on slave 0x48 in I2C3
    [MCU2_0]     58.072024 s: MAX92xx_WriteReg: Write reg 0x0330 by value 0x04, on slave 0x48 in I2C3
    [MCU2_0]     58.072194 s: MAX92xx_WriteReg: Write reg 0x044a by value 0xd8, on slave 0x48 in I2C3
    [MCU2_0]     58.072357 s: MAX92xx_WriteReg: Write reg 0x0333 by value 0x4e, on slave 0x48 in I2C3
    [MCU2_0]     58.072516 s: MAX92xx_WriteReg: Write reg 0x0335 by value 0x00, on slave 0x48 in I2C3
    [MCU2_0]     58.072678 s: MAX92xx_WriteReg: Write reg 0x0443 by value 0x01, on slave 0x48 in I2C3
    [MCU2_0]     58.072844 s: MAX92xx_WriteReg: Write reg 0x0444 by value 0x01, on slave 0x48 in I2C3
    [MCU2_0]     58.073022 s: MAX92xx_WriteReg: Write reg 0x1d00 by value 0xf4, on slave 0x48 in I2C3
    [MCU2_0]     58.073187 s: MAX92xx_WriteReg: Write reg 0x0320 by value 0x30, on slave 0x48 in I2C3
    [MCU2_0]     58.073349 s: MAX92xx_WriteReg: Write reg 0x1d00 by value 0xf5, on slave 0x48 in I2C3
    [MCU2_0]     58.073510 s: MAX92xx_WriteReg: Write reg 0x0332 by value 0x30, on slave 0x48 in I2C3
    [MCU2_0]     58.073670 s: MAX92xx_WriteReg: Write reg 0x0313 by value 0x02, on slave 0x48 in I2C3
    [MCU2_0]     58.073739 s: Access register num=33
    [MCU2_0]     58.073766 s: End of Max9296 config 
    [MCU2_0]     58.073989 s: REMOTE_SERVICE: TX: mcu2_0 (port 21) -> mpu1_0 (port 1026) cmd = 0x00000000, prm_size = 384 bytes ... !!!
        58.074708 s: ISS: Enumerating sensors ... found 0 : IMX390-UB953_D3
        58.074722 s: ISS: Enumerating sensors ... found 1 : AR0233-UB953_MARS
        58.074728 s: ISS: Enumerating sensors ... found 2 : AR0820-UB953_LI
        58.074733 s: ISS: Enumerating sensors ... found 3 : UB9xxx_RAW12_TESTPATTERN
        58.074738 s: ISS: Enumerating sensors ... found 4 : UB96x_UYVY_TESTPATTERN
        58.074743 s: ISS: Enumerating sensors ... found 5 : GW_AR0233_UYVY
        58.405700 s: ISS: Enumerating sensors ... found 6 : AR0233_MAX9295_UYVY
    Select camera port index 0-11 : 0
    7 registered sensor drivers
    a : IMX390-UB953_D3 
    b : AR0233-UB953_MARS 
    c : AR0820-UB953_LI 
    d : UB9xxx_RAW12_TESTPATTERN 
    e : UB96x_UYVY_TESTPATTERN 
    f : GW_AR0233_UYVY 
    g : AR0233_MAX9295_UYVY 
    Select a sensor above or press '0' to autodetect the sensor : Invalid selection 
    . Try again 
    7 registered sensor drivers
    a : IMX390-UB953_D3 
    b : AR0233-UB953_MARS 
    c : AR0820-UB953_LI 
    d : UB9xxx_RAW12_TESTPATTERN 
    e : UB96x_UYVY_TESTPATTERN 
    f : GW_AR0233_UYVY 
    g : AR0233_MAX9295_UYVY 
    Select a sensor above or press '0' to autodetect the sensor : g
    Sensor selected : AR0233_MAX9295_UYVY
    LDC Selection Yes(1)/No(0) : LDC Selection Yes(1)/No(0) : 0
    app_init done
    Querying AR0233_MAX9295_UYVY 
        68.435282 s: ISS: Querying sensor [AR0233_MAX9295_UYVY] ... !!!
        68.435883 s: ISS: Querying sensor [AR0233_MAX9295_UYVY] ... Done !!!
    YUV Input selected. VISS and AEWB nodes will be bypassed. 
    Sensor DCC is enabled 
    Sensor width = 1920
    Sensor height = 1080
    Sensor DCC ID = 5233
    Sensor Supported Features = 0x100
    Sensor Enabled Features = 0x100
        68.435914 s: ISS: Initializing sensor [AR0233_MAX9295_UYVY], doing IM_SENSOR_CMD_PWRON ... !!!
        68.436403 s: ISS: Initializing sensor [AR0233_MAX9295_UYVY], doing IM_SENSOR_CMD_CONFIG ... !!!
    [MCU2_0]     68.435489 s: REMOTE_SERVICE: RX: mpu1_0 (port 1026) -> mcu2_0 (port 21) cmd = 0x00000001, prm_size = 384 bytes ... !!!
    [MCU2_0]     68.435604 s: ImageSensor_RemoteServiceHandler: IM_SENSOR_CMD_QUERY 
    [MCU2_0]     68.435645 s: Received Query for AR0233_MAX9295_UYVY 
    [MCU2_0]     68.435859 s: REMOTE_SERVICE: TX: mcu2_0 (port 21) -> mpu1_0 (port 1026) cmd = 0x00000001, prm_size = 384 bytes ... !!!
    [MCU2_0]     68.436121 s: REMOTE_SERVICE: RX: mpu1_0 (port 1026) -> mcu2_0 (port 21) cmd = 0x00000002, prm_size = 384 bytes ... !!!
    [MCU2_0]     68.436203 s: ImageSensor_RemoteServiceHandler: IM_SENSOR_CMD_PWRON 
    [MCU2_0]     68.436239 s: IM_SENSOR_CMD_PWRON : channel_mask = 0x1 
    [MCU2_0]     68.436387 s: REMOTE_SERVICE: TX: mcu2_0 (port 21) -> mpu1_0 (port 1026) cmd = 0x00000002, prm_size = 384 bytes ... !!!
    [MCU2_0]     68.436619 s: REMOTE_SERVICE: RX: mpu1_0 (port 1026) -> mcu2_0 (port 21) cmd = 0x00000003, prm_size = 384 bytes ... !!!
    [MCU2_0]     68.436690 s: ImageSensor_RemoteServiceHandler: IM_SENSOR_CMD_CONFIG 
    [MCU2_0]     68.436725 s: Application requested features = 0x100 
    [MCU2_0]  
    [MCU2_0]     68.436759 s: IM_SENSOR_CMD_CONFIG channel_mask = 1
    [MCU2_0]     68.436861 s: Configuring camera # 0 
    [MCU2_0]     68.436907 s: Max92xx config start.
    [MCU2_0]     68.437063 s: MAX92xx_WriteReg: Write reg 0x0010 by value 0x01, on slave 0x48 in I2C3
    [MCU2_0]     68.446918 s: MAX92xx_WriteReg: Write reg 0x0010 by value 0x21, on slave 0x48 in I2C3
        68.651701 s: ISS: Initializing sensor [AR0233_MAX9295_UYVY] ... Done !!!
    Creating graph 
    Initializing params for capture node 
    app_create_graph: Set CSI1 vcid=0, lane_number=4, lane_speed=19
    capture_config = 0x0xffff89eeb968 
    Creating capture node 
    obj->capture_node = 0x0xffff89e5d6e8 
    Display Set Target done
    vxSetGraphScheduleConfig done
    [MCU2_0]     68.646843 s: Access register num=2
    [MCU2_0]     68.646885 s: End of Max9296 config 
    [MCU2_0]     68.647011 s: Error writing 0x40 to MAX92xx register 0x0 useing i2c3_0x40
    [MCU2_0]     68.647128 s: Error writing 0x40 to MAX92xx register 0x0 useing i2c3_0x42
    [MCU2_0]     68.647239 s: Error writing 0x40 to MAX92xx register 0x0 useing i2c3_0x60
    [MCU2_0]     68.647423 s: MAX92xx_WriteReg: Write reg 0x0000 by value 0x40, on slave 0x62 in I2C3
    [MCU2_0]     68.647482 s: Max9295 config start : slaveAddr = 0x20 
    [MCU2_0]     68.647666 s: MAX92xx_WriteReg: Write reg 0x007b by value 0x32, on slave 0x20 in I2C3
    [MCU2_0]     68.647876 s: MAX92xx_WriteReg: Write reg 0x0083 by value 0x32, on slave 0x20 in I2C3
    [MCU2_0]     68.648099 s: MAX92xx_WriteReg: Write reg 0x008b by value 0x32, on slave 0x20 in I2C3
    [MCU2_0]     68.648307 s: MAX92xx_WriteReg: Write reg 0x0093 by value 0x32, on slave 0x20 in I2C3
    [MCU2_0]     68.648508 s: MAX92xx_WriteReg: Write reg 0x00a3 by value 0x32, on slave 0x20 in I2C3
    [MCU2_0]     68.648708 s: MAX92xx_WriteReg: Write reg 0x00ab by value 0x32, on slave 0x20 in I2C3
    [MCU2_0]     68.648911 s: MAX92xx_WriteReg: Write reg 0x0330 by value 0x00, on slave 0x20 in I2C3
    [MCU2_0]     68.649131 s: MAX92xx_WriteReg: Write reg 0x0331 by value 0x33, on slave 0x20 in I2C3
    [MCU2_0]     68.649339 s: MAX92xx_WriteReg: Write reg 0x0332 by value 0xe0, on slave 0x20 in I2C3
    [MCU2_0]     68.649543 s: MAX92xx_WriteReg: Write reg 0x0333 by value 0x04, on slave 0x20 in I2C3
    [MCU2_0]     68.649743 s: MAX92xx_WriteReg: Write reg 0x0334 by value 0x00, on slave 0x20 in I2C3
    [MCU2_0]     68.650001 s: MAX92xx_WriteReg: Write reg 0x0335 by value 0x00, on slave 0x20 in I2C3
    [MCU2_0]     68.650212 s: MAX92xx_WriteReg: Write reg 0x0308 by value 0x7d, on slave 0x20 in I2C3
    [MCU2_0]     68.650414 s: MAX92xx_WriteReg: Write reg 0x0311 by value 0x15, on slave 0x20 in I2C3
    [MCU2_0]     68.650614 s: MAX92xx_WriteReg: Write reg 0x0314 by value 0x5e, on slave 0x20 in I2C3
    [MCU2_0]     68.650823 s: MAX92xx_WriteReg: Write reg 0x0315 by value 0x00, on slave 0x20 in I2C3
    [MCU2_0]     68.651038 s: MAX92xx_WriteReg: Write reg 0x0002 by value 0x13, on slave 0x20 in I2C3
    [MCU2_0]     68.651247 s: MAX92xx_WriteReg: Write reg 0x0053 by value 0x10, on slave 0x20 in I2C3
    [MCU2_0]     68.651449 s: MAX92xx_WriteReg: Write reg 0x02be by value 0x10, on slave 0x20 in I2C3
    [MCU2_0]     68.651501 s:  End of Max9295 config 
    [MCU2_0]     68.651528 s: IM_SENSOR_CMD_CONFIG returning status = 0
    [MCU2_0]     68.651684 s: REMOTE_SERVICE: TX: mcu2_0 (port 21) -> mpu1_0 (port 1026) cmd = 0x00000003, prm_size = 384 bytes ... !!!
    Scaler is disabled
    app_create_graph exiting
    app_create_graph done
        68.665790 s: ISS: Starting sensor [AR0233_MAX9295_UYVY] ... !!!
    [MCU2_0]     68.657462 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x00000307
    [MCU2_0]     68.662914 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x00000500
    [MCU2_0]     68.663326 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x00001308
    [MCU2_0]     68.664248 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x00001500
    [MCU2_0]     68.665891 s: REMOTE_SERVICE: RX: mpu1_0 (port 1026) -> mcu2_0 (port 21) cmd = 0x00000001, prm_size = 0 bytes ... !!!
    [MCU2_0]     68.666057 s: REMOTE_SERVICE: RX: mpu1_0 (port 1026) -> mcu2_0 (port 21) cmd = 0x00000001, prm_size = 0 bytes ... !!!
    [MCU2_0]     68.666152 s: REMOTE_SERVICE: RX: mpu1_0 (port 1026) -> mcu2_0 (port 21) cmd = 0x00000005, prm_size = 0 bytes ... !!!
    [MCU2_0]     68.666268 s: REMOTE_SERVICE: TX: mcu2_0 (port 21) -> mpu1_0 (port 1026) cmd = 0x00000005, prm_size = 0 bytes ... !!!
    [MCU2_0]     68.666582 s: REMOTE_SERVICE: RX: mpu1_0 (port 1026) -> mcu2_0 (port 21) cmd = 0x00000004, prm_size = 384 bytes ... !!!
    [MCU2_0]     68.666673 s: ImageSensor_RemoteServiceHandler: IM_SENSOR_CMD_STREAM_ON 
        68.677052 s: ISS: Starting sensor [AR0233_MAX9295_UYVY] ... !!!
    [MCU2_0]     68.666721 s: IM_SENSOR_CMD_STREAM_ON:  channel_mask = 0x1
    [MCU2_0]     68.666764 s: Max92xx config start.
    [MCU2_0]     68.667033 s: MAX92xx_WriteReg: Write reg 0x0313 by value 0x02, on slave 0x48 in I2C3
    [MCU2_0]     68.676839 s: Access register num=1
    [MCU2_0]     68.676879 s: End of Max9296 config 
    [MCU2_0]     68.677031 s: REMOTE_SERVICE: TX: mcu2_0 (port 21) -> mpu1_0 (port 1026) cmd = 0x00000004, prm_size = 384 bytes ... !!!
    
    
     ==========================
     Demo : Single Camera w/ 2A
     ==========================
    
     p: Print performance statistics
    
     s: Save Sensor RAW, VISS Output and H3A output images to File System
    
     e: Export performance statistics
    
     u: Update DCC from File System
    
    
     x: Exit
    
     Enter Choice: 
    Unsupported command 
    
    
    
     ==========================
     Demo : Single Camera w/ 2A
     ==========================
    
     p: Print performance statistics
    
     s: Save Sensor RAW, VISS Output and H3A output images to File System
    
     e: Export performance statistics
    
     u: Update DCC from File System
    
    
     x: Exit
    
     Enter Choice: [MCU2_0]     68.996066 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x0000e307
    [MCU2_0]     68.996466 s:  VX_ZONE_WARNING:[tivxCaptureSetTimeout:796]  CAPTURE: WARNING: Error frame not provided using tivxCaptureRegisterErrorFrame, defaulting to waiting forever !!!
    [MCU2_0]     68.996590 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x00011307
    

    这是单个凸轮运行日志。 我们找不到任何有用的信息。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    好的、您能否确保解串器和/或传感器配置为输出数据类型 YUV422等值0x1E 并且虚拟通道 ID 也设置为0x0?

    因为根据上面的日志、单摄像头 应用程序可以 看到这一点。 如果它们不匹配、CSIRX 将不会 捕获数据。  

    此外、您是否可以检查并确保传感器和/或解串器输出 仅在 streamon 回调中启动、而不是 在这之前启动?  

    此致、

    Brijesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

     日期类型和 vi id 由该寄存器操作设置;输入/输出 data_type 为 YUV422_8bit 而 vc_id 为0。

     这一步打开解串器 输出数据。

    我如何转储 CSI 关系寄存器、以及我应该查找哪些寄存器?  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [MCU2_0]     66.938281 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x00024500
    [MCU2_0]     66.938410 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x0001d500
    [MCU2_0]     66.938545 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x00013307
     i 962...
    [MCU2_0]     66.954948 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x00026500
    [MCU2_0]     66.955074 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x0001e500
    [MCU2_0]     66.955210 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x0000e307
     i 963...
    [MCU2_0]     66.971666 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x00020500
    [MCU2_0]     66.971794 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x0001b500
    [MCU2_0]     66.971931 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x00011307
     i 964...
    [MCU2_0]     66.988282 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x00022500
    [MCU2_0]     66.988412 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x0001c500
    [MCU2_0]     66.988546 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x00012307
     i 965...
    [MCU2_0]     67.004943 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x00024500
    [MCU2_0]     67.005070 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x0001d500
    [MCU2_0]     67.005203 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x00013307
     i 966...
    [MCU2_0]     67.021652 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x00026500
    [MCU2_0]     67.021779 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x0001e500
    [MCU2_0]     67.021915 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x0000e307
     i 967...
    [MCU2_0]     67.038283 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x00020500
    [MCU2_0]     67.038411 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x0001b500
    [MCU2_0]     67.038615 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x00011307
     i 968...
    [MCU2_0]     67.054947 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x00022500
    [MCU2_0]     67.055073 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x0001c500
    [MCU2_0]     67.055205 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x00012307
     i 969...
    [MCU2_0]     67.071672 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x00024500
    [MCU2_0]     67.071805 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x0001d500
    [MCU2_0]     67.071941 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x00013307
     i 970...
    [MCU2_0]     67.088278 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x00026500
    [MCU2_0]     67.088410 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x0001e500
    [MCU2_0]     67.088613 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x0000e307
     i 971...
    [MCU2_0]     67.104944 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x00020500
    [MCU2_0]     67.105068 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x0001b500
    [MCU2_0]     67.105205 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x00011307
     i 972...
    [MCU2_0]     67.121662 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x00022500
    [MCU2_0]     67.121790 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x0001c500
    [MCU2_0]     67.121929 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x00012307
     i 973...
    [MCU2_0]     67.138281 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x00024500
    [MCU2_0]     67.138411 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x0001d500
    [MCU2_0]     67.138613 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x00013307
     i 974...
    
    
    [MCU2_0]     67.154949 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x00026500
    [MCU2_0]     67.155073 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x0001e500
    [MCU2_0]     67.155205 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x0000e307
     i 975...
    [MCU2_0]     67.171666 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x00020500
    [MCU2_0]     67.171795 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x0001b500
    [MCU2_0]     67.171933 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x00011307
        67.188512 s: ISS: Stopping sensor [AR0233_MAX9295_UYVY] ... !!!
    [MCU2_0]     67.188275 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x00022500
    [MCU2_0]     67.188402 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x0001c500
    [MCU2_0]     67.188777 s: REMOTE_SERVICE: RX: mpu1_0 (port 1026) -> mcu2_0 (port 21) cmd = 0x00000005, prm_size = 384 bytes ... !!!
    [MCU2_0]     67.188877 s: ImageSensor_RemoteServiceHandler: IM_SENSOR_CMD_STREAM_OFF 
    [MCU2_0]     67.188924 s: IM_SENSOR_CMD_STREAM_ON:  channel_mask = 0x1
    [MCU2_0]     67.188965 s: Max92xx config start.
    [MCU2_0]     67.189158 s: MAX92xx_WriteReg: Write reg 0x0313 by value 0x00, on slave 0x48 in I2C3
        67.198829 s: ISS: Stopping sensor [AR0233_MAX9295_UYVY] ... Done !!!
    [MCU2_0]     67.198616 s: Access register num=1
    [MCU2_0]     67.198658 s: End of Max9296 config 
    [MCU2_0]     67.198810 s: REMOTE_SERVICE: TX: mcu2_0 (port 21) -> mpu1_0 (port 1026) cmd = 0x00000005, prm_size = 384 bytes ... !!!
        67.258104 s: ISS: Stopping sensor [AR0233_MAX9295_UYVY] ... !!!
    [MCU2_0]     67.258300 s: REMOTE_SERVICE: RX: mpu1_0 (port 1026) -> mcu2_0 (port 21) cmd = 0x00000005, prm_size = 384 bytes ... !!!
    [MCU2_0]     67.258412 s: ImageSensor_RemoteServiceHandler: IM_SENSOR_CMD_STREAM_OFF 
    [MCU2_0]     67.258458 s: IM_SENSOR_CMD_STREAM_ON:  channel_mask = 0x1
    [MCU2_0]     67.258500 s: Max92xx config start.
    [MCU2_0]     67.258694 s: MAX92xx_WriteReg: Write reg 0x0313 by value 0x00, on slave 0x48 in I2C3
        67.268829 s: ISS: Stopping sensor [AR0233_MAX9295_UYVY] ... Done !!!
    app_run_graph done
    releasing capture node
    releasing displayNode
        67.268887 s:  VX_ZONE_ERROR:[ownReleaseReferenceInt:294] Invalid reference
    releasing raw image done
    releasing cap_frame # 0
    releasing cap_frame # 1
    releasing cap_frame # 2
    releasing cap_frame # 3
    releasing capt_yuv_image
    releasing Display Param Data Object
    releasing graph
    [MCU2_0]     67.268615 s: Access register num=1
    [MCU2_0]     67.268658 s: End of Max9296 config 
    [MCU2_0]     67.268810 s: REMOTE_SERVICE: TX: mcu2_0 (port 21) -> mpu1_0 (port 1026) cmd = 0x00000005, prm_size = 384 bytes ... !!!
    [MCU2_0]     67.270879 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x00002307
    [MCU2_0]     67.271151 s: ==========================================================
    [MCU2_0]     67.271236 s:  Capture Status: Instance|1
    [MCU2_0]     67.271270 s: ==========================================================
    [MCU2_0]     67.271315 s:  overflowCount: 0
    [MCU2_0]     67.271347 s:  spuriousUdmaIntrCount: 0
    [MCU2_0]     67.271415 s:  frontFIFOOvflCount: 0
    [MCU2_0]     67.271454 s:  crcCount: 0
    [MCU2_0]     67.271482 s:  eccCount: 0
    [MCU2_0]     67.271647 s:  correctedEccCount: 0
    [MCU2_0]     67.271696 s:  dataIdErrorCount: 0
    [MCU2_0]     67.271731 s:  invalidAccessCount: 0
    [MCU2_0]     67.271765 s:  invalidSpCount: 0
    [MCU2_0]     67.271801 s:  strmFIFOOvflCount[0]: 0
    [MCU2_0]     67.271838 s:  strmFIFOOvflCount[1]: 0
    [MCU2_0]     67.271867 s:  Channel Num | Frame Queue Count | Frame De-queue Count | Frame Drop Count | Error Frame Count |
    [MCU2_0]     67.271940 s:            0 |               980 |                  980 |                1 |                 0 |
    [MCU2_0]     67.272787 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x00002500
    [MCU2_0]     67.273049 s: IPC: RX: mpu1_0 (port 1025) -> mcu2_0 (port 13) msg = 0x00003308
    releasing graph done
    Error : app_delete_graph returned 0xfffffff4 
    tivxHwaUnLoadKernels done
    tivxImagingUnLoadKernels done
    vxReleaseContext done
    app_deinit done
        67.289381 s: ISS: De-initializing sensor [AR0233_MAX9295_UYVY] ... !!!
        67.289866 s: ISS: De-initializing sensor [AR0233_MAX9295_UYVY] ... Done !!!
        67.289883 s:  VX_ZONE_INIT:[tivxHostDeInitLocal:107] De-Initialization Done for HOST !!!
        67.294287 s:  VX_ZONE_INIT:[tivxDeInitLocal:193] De-Initialization Done !!!
    APP: Deinit ... !!!
    REMOTE_SERVICE: Deinit ... !!!
    REMOTE_SERVICE: Deinit ... Done !!!
    IPC: Deinit ... !!!
    IPC: DeInit ... Done !!!
    MEM: Deinit ... !!!
    DDR_SHARED_MEM: Alloc's: 6 alloc's of 16589060 bytes 
    DDR_SHARED_MEM: Free's : 6 free's  of 16589060 bytes 
    DDR_SHARED_MEM: Open's : 0 allocs  of 0 bytes 
    DDR_SHARED_MEM: Total size: 536870912 bytes 
    MEM: Deinit ... Done !!!
    APP: Deinit ... Done !!!
    [MCU2_0]     67.288306 s: IPC: TX: mcu2_0 (port 13) -> mpu1_0 (port 1025) msg = 0x00003500
    [MCU2_0]     67.289626 s: REMOTE_SERVICE: RX: mpu1_0 (port 1026) -> mcu2_0 (port 21) cmd = 0x00000006, prm_size = 384 bytes ... !!!
    [MCU2_0]     67.289846 s: REMOTE_SERVICE: TX: mcu2_0 (port 21) -> mpu1_0 (port 1026) cmd = 0x00000006, prm_size = 384 bytes ... !!!
    根据修改 CSI 通道速度,有一些图像日期传输到 CSI 看起来像。 但图像不正确。有一些保存图像。哪里是我的错误?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    是的、根据这些统计数据、捕获工作正常。 它捕获了大约980个帧,并能够为这些帧运行 OpenVX 图形。  您能否确认这是带有错误"错误帧未使用 TIvxCaptureRegisterErrorFrame 提供,默认为永远等待 "的错误吗?

    [MCU2_0] 67.271867 s:通道编号|帧队列计数|帧去队列计数|帧丢弃计数|错误帧计数|
    [MCU2_0] 67.271940 s:0| 980 | 980 | 1| 0|

    这是否也是单摄像头应用?  CSIRX 的输出会在哪里? 是连接到 LDC 节点吗? LDC 节点运行正常吗? 在控制台上运行并共享输出时、您能否按下"p"?

    此致、

    Brijesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Summary of CPU load,
    ====================
    
    CPU: mpu1_0: TOTAL LOAD =   0.79 % ( HWI =   0. 0 %, SWI =   0. 0 % )
    CPU: mcu2_0: TOTAL LOAD =   6. 0 % ( HWI =   0. 0 %, SWI =   0. 0 % )
    CPU: mcu2_1: TOTAL LOAD =   1. 0 % ( HWI =   0. 0 %, SWI =   0. 0 % )
    CPU:  c6x_1: TOTAL LOAD =   0. 0 % ( HWI =   0. 0 %, SWI =   0. 0 % )
    CPU:  c6x_2: TOTAL LOAD =   0. 0 % ( HWI =   0. 0 %, SWI =   0. 0 % )
    CPU:  c7x_1: TOTAL LOAD =   0. 0 % ( HWI =   0. 0 %, SWI =   0. 0 % )
    
    
    HWA performance statistics,
    ===========================
    
    
    
    DDR performance statistics,
    ===========================
    
    DDR: READ  BW: AVG =    269 MB/s, PEAK =   4898 MB/s
    DDR: WRITE BW: AVG =    250 MB/s, PEAK =    976 MB/s
    DDR: TOTAL BW: AVG =    519 MB/s, PEAK =   5874 MB/s
    
    
    Detailed CPU performance/memory statistics,
    ===========================================
    
    DDR_SHARED_MEM: Alloc's: 6 alloc's of 16589060 bytes 
    DDR_SHARED_MEM: Free's : 0 free's  of 0 bytes 
    DDR_SHARED_MEM: Open's : 6 allocs  of 16589060 bytes 
    DDR_SHARED_MEM: Total size: 536870912 bytes 
    
    CPU: mcu2_0: TASK:           IPC_RX:   0. 2 %
    CPU: mcu2_0: TASK:       REMOTE_SRV:   0. 4 %
    CPU: mcu2_0: TASK:        LOAD_TEST:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_CPU_0:   0. 0 %
    CPU: mcu2_0: TASK:        TIVX_V1NF:   0. 0 %
    CPU: mcu2_0: TASK:      TIVX_V1LDC1:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_V1SC1:   0. 0 %
    CPU: mcu2_0: TASK:      TIVX_V1MSC2:   0. 0 %
    CPU: mcu2_0: TASK:       TIVXVVISS1:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_CAPT1:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_CAPT2:   0.21 %
    CPU: mcu2_0: TASK:       TIVX_DISP1:   0.31 %
    CPU: mcu2_0: TASK:       TIVX_DISP2:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_CSITX:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_CAPT3:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_CAPT4:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_CAPT5:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_CAPT6:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_CAPT7:   0. 0 %
    CPU: mcu2_0: TASK:       TIVX_CAPT8:   0. 0 %
    CPU: mcu2_0: TASK:      TIVX_DPM2M1:   0. 0 %
    CPU: mcu2_0: TASK:      TIVX_DPM2M2:   0. 0 %
    CPU: mcu2_0: TASK:      TIVX_DPM2M3:   0. 0 %
    CPU: mcu2_0: TASK:      TIVX_DPM2M4:   0. 0 %
    
    CPU: mcu2_0: HEAP:    DDR_LOCAL_MEM: size =   16777216 B, free =   16705536 B ( 99 % unused)
    CPU: mcu2_0: HEAP:           L3_MEM: size =     262144 B, free =     261888 B ( 99 % unused)
    
    CPU: mcu2_1: TASK:           IPC_RX:   0. 0 %
    CPU: mcu2_1: TASK:       REMOTE_SRV:   0. 0 %
    CPU: mcu2_1: TASK:        LOAD_TEST:   0. 0 %
    CPU: mcu2_1: TASK:       TIVX_CPU_1:   0. 0 %
    CPU: mcu2_1: TASK:         TIVX_SDE:   0. 0 %
    CPU: mcu2_1: TASK:         TIVX_DOF:   0. 0 %
    CPU: mcu2_1: TASK:      IPC_TEST_RX:   0. 0 %
    CPU: mcu2_1: TASK:      IPC_TEST_TX:   0. 0 %
    CPU: mcu2_1: TASK:      IPC_TEST_TX:   0. 0 %
    CPU: mcu2_1: TASK:      IPC_TEST_TX:   0. 0 %
    CPU: mcu2_1: TASK:      IPC_TEST_TX:   0. 0 %
    CPU: mcu2_1: TASK:      IPC_TEST_TX:   0. 0 %
    
    CPU: mcu2_1: HEAP:    DDR_LOCAL_MEM: size =   16777216 B, free =   16773376 B ( 99 % unused)
    CPU: mcu2_1: HEAP:           L3_MEM: size =     262144 B, free =     262144 B (100 % unused)
    
    CPU:  c6x_1: TASK:           IPC_RX:   0. 0 %
    CPU:  c6x_1: TASK:       REMOTE_SRV:   0. 0 %
    CPU:  c6x_1: TASK:        LOAD_TEST:   0. 0 %
    CPU:  c6x_1: TASK:         TIVX_CPU:   0. 0 %
    CPU:  c6x_1: TASK:      IPC_TEST_RX:   0. 0 %
    CPU:  c6x_1: TASK:      IPC_TEST_TX:   0. 0 %
    CPU:  c6x_1: TASK:      IPC_TEST_TX:   0. 0 %
    CPU:  c6x_1: TASK:      IPC_TEST_TX:   0. 0 %
    CPU:  c6x_1: TASK:      IPC_TEST_TX:   0. 0 %
    CPU:  c6x_1: TASK:      IPC_TEST_TX:   0. 0 %
    
    CPU:  c6x_1: HEAP:    DDR_LOCAL_MEM: size =   16777216 B, free =   16773376 B ( 99 % unused)
    CPU:  c6x_1: HEAP:           L2_MEM: size =     229376 B, free =     229376 B (100 % unused)
    CPU:  c6x_1: HEAP:  DDR_SCRATCH_MEM: size =   50331648 B, free =   50331648 B (100 % unused)
    
    CPU:  c6x_2: TASK:           IPC_RX:   0. 0 %
    CPU:  c6x_2: TASK:       REMOTE_SRV:   0. 0 %
    CPU:  c6x_2: TASK:        LOAD_TEST:   0. 0 %
    CPU:  c6x_2: TASK:         TIVX_CPU:   0. 0 %
    CPU:  c6x_2: TASK:      IPC_TEST_RX:   0. 0 %
    CPU:  c6x_2: TASK:      IPC_TEST_TX:   0. 0 %
    CPU:  c6x_2: TASK:      IPC_TEST_TX:   0. 0 %
    CPU:  c6x_2: TASK:      IPC_TEST_TX:   0. 0 %
    CPU:  c6x_2: TASK:      IPC_TEST_TX:   0. 0 %
    CPU:  c6x_2: TASK:      IPC_TEST_TX:   0. 0 %
    
    CPU:  c6x_2: HEAP:    DDR_LOCAL_MEM: size =   16777216 B, free =   16773376 B ( 99 % unused)
    CPU:  c6x_2: HEAP:           L2_MEM: size =     229376 B, free =     229376 B (100 % unused)
    CPU:  c6x_2: HEAP:  DDR_SCRATCH_MEM: size =   50331648 B, free =   50331648 B (100 % unused)
    
    CPU:  c7x_1: TASK:           IPC_RX:   0. 0 %
    CPU:  c7x_1: TASK:       REMOTE_SRV:   0. 0 %
    CPU:  c7x_1: TASK:        LOAD_TEST:   0. 0 %
    CPU:  c7x_1: TASK:      TIVX_C71_P1:   0. 0 %
    CPU:  c7x_1: TASK:      TIVX_C71_P2:   0. 0 %
    CPU:  c7x_1: TASK:      TIVX_C71_P3:   0. 0 %
    CPU:  c7x_1: TASK:      TIVX_C71_P4:   0. 0 %
    CPU:  c7x_1: TASK:      TIVX_C71_P5:   0. 0 %
    CPU:  c7x_1: TASK:      TIVX_C71_P6:   0. 0 %
    CPU:  c7x_1: TASK:      TIVX_C71_P7:   0. 0 %
    CPU:  c7x_1: TASK:      TIVX_C71_P8:   0. 0 %
    CPU:  c7x_1: TASK:      IPC_TEST_RX:   0. 0 %
    CPU:  c7x_1: TASK:      IPC_TEST_TX:   0. 0 %
    CPU:  c7x_1: TASK:      IPC_TEST_TX:   0. 0 %
    CPU:  c7x_1: TASK:      IPC_TEST_TX:   0. 0 %
    CPU:  c7x_1: TASK:      IPC_TEST_TX:   0. 0 %
    CPU:  c7x_1: TASK:      IPC_TEST_TX:   0. 0 %
    
    CPU:  c7x_1: HEAP:    DDR_LOCAL_MEM: size =  268435456 B, free =  268435200 B ( 99 % unused)
    CPU:  c7x_1: HEAP:           L3_MEM: size =    8159232 B, free =    8159232 B (100 % unused)
    CPU:  c7x_1: HEAP:           L2_MEM: size =     458752 B, free =     458752 B (100 % unused)
    CPU:  c7x_1: HEAP:           L1_MEM: size =      16384 B, free =      16384 B (100 % unused)
    CPU:  c7x_1: HEAP:  DDR_SCRATCH_MEM: size =  385875968 B, free =  385875968 B (100 % unused)
    
    
    [MCU2_0]    127.243504 s: REMOTE_SERVICE: RX: mpu1_0 (port 1026) -> mcu2_0 (port 21) cmd = 0x00000002, prm_size = 12 bytes ... !!!
    [MCU2_0]    127.243790 s: REMOTE_SERVICE: TX: mcu2_0 (port 21) -> mpu1_0 (port 1026) cmd = 0x00000002, prm_size = 12 bytes ... !!!
    [MCU2_0]    127.244326 s: REMOTE_SERVICE: RX: mpu1_0 (port 1026) -> mcu2_0 (port 21) cmd = 0x00000006, prm_size = 256 bytes ... !!!
    [MCU2_0]    127.244516 s: REMOTE_SERVICE: TX: mcu2_0 (port 21) -> mpu1_0 (port 1026) cmd = 0x00000006, prm_size = 256 bytes ... !!!
    [MCU2_0]    127.245123 s: REMOTE_SERVICE: RX: mpu1_0 (port 1026) -> mcu2_0 (port 21) cmd = 0x00000003, prm_size = 388 bytes ... !!!
    [MCU2_0]    127.245778 s: REMOTE_SERVICE: TX: mcu2_0 (port 21) -> mpu1_0 (port 1026) cmd = 0x00000003, prm_size = 388 bytes ... !!!
    [MCU2_0]    127.246146 s: REMOTE_SERVICE: RX: mpu1_0 (port 1026) -> mcu2_0 (port 21) cmd = 0x00000004, prm_size = 200 bytes ... !!!
    [MCU2_0]    127.246395 s: REMOTE_SERVICE: TX: mcu2_0 (port 21) -> mpu1_0 (port 1026) cmd = 0x00000004, prm_size = 200 bytes ... !!!
    [MCU2_0]    127.248107 s: REMOTE_SERVICE: RX: mpu1_0 (port 1026) -> mcu2_0 (port 21) cmd = 0x00000001, prm_size = 0 bytes ... !!!
    [MCU2_0]    127.248306 s: REMOTE_SERVICE: RX: mpu1_0 (port 1026) -> mcu2_0 (port 21) cmd = 0x00000005, prm_size = 0 bytes ... !!!
    [MCU2_0]    127.248447 s: REMOTE_SERVICE: TX: mcu2_0 (port 21) -> mpu1_0 (port 1026) cmd = 0x00000005, prm_size = 0 bytes ... !!!
    GRAPH:         graph_85 (#nodes =   2, #executions =    128)
     NODE:       CAPTURE2:                  node_96: avg =    585 usecs, min/max =    104 /   9581 usecs, #executions =        128
     NODE:       DISPLAY1:                  node_97: avg =  15861 usecs, min/max =    152 /  32410 usecs, #executions =        128
    
     PERF:            TOTAL: avg =  16872 usecs, min/max =  16591 /  42963 usecs, #executions =        127
    
     PERF:            TOTAL:   59.26 FPS
    
    
    
     ==========================
     Demo : Single Camera w/ 2A
     ==========================
    
     p: Print performance statistics
    
     s: Save Sensor RAW, VISS Output and H3A output images to File System
    
     e: Export performance statistics
    
     u: Update DCC from File System
    
    
     x: Exit
    这是"p"命令输出日志。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    但它运转正常、我看到图形以接近60fps 的速度运行、甚至捕捉和显示运行正常您在显示屏上看不到有效图像? 你能转储一个输出图像并共享它吗?

    此致、

    Brijesh  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

     这是捕捉图像;视图图像将跟随摄像机移动,但不显示正常图像,看起来像 绿屏。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您是否确定摄像机正在正确输出图像? 通常、YUV 格式的绿色表示它包含全0。 另请确认您是否提供了错误帧。 您能否注释出对 TIvxCaptureRegisterErrorFrame API 的调用,然后进行检查?

    此致、

    Brijesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    好的,我会稍后再试.  

    图像不是真正的绿屏、它看起来就像绿屏。  某些图像的轮廓可能模糊。

    我们保存原始图像印刷机"S";并重放它使用不同的编码格式、 如下所示查看:

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您能将此二进制文件分享给我吗?  

    是的、看起来里面确实有一些数据。  

    此致、

    Brijesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    3 μ 个项目

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我无法访问此文件、您能否将其压缩并附加到该 TT 中。

    此致、

    Brijesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    e2e.ti.com/.../4201.image.rar

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    您确定数据是 YUV422 8位吗? 因为我认为它是10位数据、而不是8位。   DSS 和 OpenVX 也不支持这种格式。  

    此致、

    Brijesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    兼容 YUYV 和 UYUV 格式的 vx_app_single_cam?我们看了几个文件的开头,发现文件头是不同的。有一个数据不匹配的地方?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    根据 MIPI 标准、它只能是 UYVY 数据。 在单摄像头应用中、YUYV 格式是什么意思?

    此外、它不仅是标头、而且整个文件看起来包含10位 YUV422数据。 每个32位值中的高12位仅包含0。  

    请确保从传感器输出 YUV422 8位数据。  

    此致、

    Brijesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我们已经在其他平台上对这款相机进行了修改,除了 SOC 之外,驱动程序硬件完全一致。 已确认输出图像以 YUV422 8位格式配置。

    因此、我们想知道 TI 的 CSI 通道是否有任何特殊格式要求。

    您能否提供分析基于该文档的图像数据的连接参考? 我们将尝试分析和比较这些平台的原始图像数据。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    CSIRX 不进行任何转换、会在数据从外部传感器到达时接收数据。 当我们分析缓冲器中的输出时、它显然不是 YUV422 8位数据。 在每个32位接收的字中、只有低20位 包含有效位。 高12位全部为0。  它用于所有32位字、而不仅仅是几个字。  

    这就是为什么我说的数据可能是 YUV422 10位而不是8位。  

    您正在使用哪种解串器? 有时、 解串器还可以上移 数据并能输出10位数据。  

    另外、您要 在 CSIRX 中配置的数据类型是什么?  

    此致、

    Brijesh  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我们启动 max9296解串器和 max9295串行器

     传感器驱动程序将数据类型设置为 UYVY。

    如何查找 CSIRX 配置?我们可以从哪些寄存器读取?  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    您能否检查 传感器或串行器/解串器设置、为什么它仅发送20个有效位而不是完整的32位 YUV422数据?  

    此致、

    Brijesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    e2e.ti.com/.../cap_5F00_0005.rar

    root@tda4vm-sk:~# k3conf write 04510020 8840001e 
    |--------------------------------------------------------------------------------------|
    | VERSION INFO                                                                         |
    |--------------------------------------------------------------------------------------|
    | K3CONF | (version v0.1-90-g1dd468d built 2023年 04月 23日 星期日 15:47:48 CST) |
    | SoC    | J721E SR1.1                                                                 |
    | SYSFW  | ABI: 3.1 (firmware version 0x0008 '8.6.3--v08.06.03 (Chill Capybar)')       |
    |--------------------------------------------------------------------------------------|
    
    Value at addr 0x4510020 = 0x8800001e

    我们将 从0x8c10001e 到0x8800001e 的 CSI_RX_IF_SHIM_DMACNTX (0x4510020)寄存器值修改为 0x8800001e,可以正常预览图像。 此寄存器配置代码在哪里以及如何调整相关代码。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    哦、您正在使用哪个 SDK 版本?  

    在 SDK 8.6版本中、捕获 YUV422数据时存在错误。 请 按照我在下面链接中推荐的内容进行更改、以解决此问题吗?

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1216084/tda4vm-after-upgrading-to-sdk8-06-the-camera-images-are-all-green/4589093#4589093

    此致、

    Brijesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我们使用08.06版本。您提供的连接未解决问题。 我合并代码并重新编译 PDK、vx_app_rtos_MCU_2_0、vx_app_single_cam 目标。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    大家好  

    您现在至少能看到一些更好的输出吗? 颜色可能不正确、但至少图像不应像以前那样呈绿色。  

    CSIRX 中的 YUV422输出格式需要上述修复。 您可以尝试我在以下链接中建议的修复吗?

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1216084/tda4vm-after-upgrading-to-sdk8-06-the-camera-images-are-all-green/4589198#4589198

    此致、

    Brijesh