| 我们在做ESD测试时,发现M3VPSS的ISS子系统,H3A模块中的数据(fullH3ABufAddr)会因静电而变的不正常。这个数据我们会用来计算sensor曝光时间和增益。它被静电打坏之后会导致曝光时间和增益计算错误,从而导致图像变暗或者变亮。在这个结构体中,错误的数据字段我用注释标注出来啦: |
typedef struct
{
Task_Handle taskHndl;
Semaphore_Handle sem;
FVID2_Handle SensorHandle;
FVID2_Handle cameraVipHandle;
AEWB_VENDOR aewbVendor;
UInt32 aewbMode;
UInt32 aewbModeFlag;
UInt32 aewbPriority;
MSP_IspH3aCfgT ispH3aCfg;
MSP_IspConfigProcessingT *pIssConfig;
MSP_COMPONENT_TYPE *pIspHandle;
Void *pAlgHndl;
UInt32 h3aBufAddr[2];
UInt32 fullH3ABufAddr; //就是这个数据不正常!
UInt32 curH3aBufIdx;
UInt32 h3aBufSize;
Void *pH3AMem;
UInt32 aewbNumWinH;
UInt32 aewbNumWinV;
UInt32 aewbNumPix;
volatile UInt32 exitFlag;
Int32 AutoIris;
Int32 saturation;
Int32 sharpness;
Int32 brightness;
Int32 contrast;
Int32 blc;
Int32 AWBMode;
Int32 AEMode;
Int32 Env;
Int32 Binning;
Int32 FrameRate;
UInt8 *dcc_Default_Param;
Int32 dcc_init_done;
UInt32 dccSize;
UInt32 AFValue;
UInt32 AEWBValue1;
UInt32 AEWBValue2;
}Iss_2AObj;
我发现H3A模块的H3A_PCR寄存器中有一个OVF位可以检测overflow,但是似乎没起作用,图像变暗或者变亮之后检测这个位始终是0。
有大佬知道这个怎么解决吗?