1)读不到ID,这种情况,首先排除硬件部分,如模组没焊接好(有时是数据总线或者I2C或者其它控制线)。其次就是上电时序没上正确。
(2)前后置摄像头切换有问题:
这种情况一般是在上前置camera时没将后置camera的PDN设成不工作引起的。同样上后置camera时没将前置摄像头PDN设成不工作。这样会引起在切换到前置或后置时另外一个sensor仍然有数据输出,到ISP报ANR错误。
(3)camera漏电:
这种情况一般多时下电时PDN处理不当引起的,一般情况是在下电的时候将PDN根据datasheet有效后(standby后),然后在下电。而如果是有前后置camera,那么不管当前是哪个camera,下电时对PDN统一处理。
(4)模组拍照方向,可以通过驱动中的方向调整函数进行调整,如下:
static imgsensor_struct imgsensor = {
.mirror = IMAGE_V_MIRROR, //mirrorflip information,other IMAGE_H_MIRROR、IMAGE_NORMAL_MIRROR
.sensor_mode = IMGSENSOR_MODE_INIT, //IMGSENSOR_MODE enum value,record current sensor mode,such as: INIT, Preview, Capture, Video,High Speed Video, Slim Video
.shutter = 0x3D0, //current shutter
.gain = 0x100, //current gain
.dummy_pixel = 0, //current dummypixel
.dummy_line = 0, //current dummyline
.current_fps = 0, //full size current fps : 24fps for PIP, 30fps for Normal or ZSD
.autoflicker_en = KAL_FALSE, //auto flicker enable: KAL_FALSE for disable auto flicker, KAL_TRUE for enable auto flicker
.test_pattern = KAL_FALSE, //test pattern mode or not. KAL_FALSE for in test pattern mode, KAL_TRUE for normal output
.current_scenario_id = MSDK_SCENARIO_ID_CAMERA_PREVIEW,//current scenario id
.ihdr_en = 0, //sensor need support LE, SE with HDR feature
.i2c_write_id = 0x00,//record current sensor's i2c write id
};
(5)预览图像时,物体快速移动,图像撕裂现象,这种情况一般是由于LCD帧速率不够,或者LCD刷新频率不够引起的。