stm32f407驱动GC0308摄像头
各位请教一下我用STM32F407驱动GC0308摄像头,摄像头3.3V供电,XCLK时钟用单片机产生8M,现在能读出厂家ID,但是配置寄存器时,
总有几个写不正确,硬件IIC和软件模拟都试过。
求指教。 附件里是摄像头芯片的datasheet 本帖最后由 qingchapp 于 2017-8-16 14:22 编辑
看了一下,写不进去的寄存器不是关键寄存器,现在想请教一下寄存器的配置,除了注意显示窗口的大小和屏一致,输出设为RGB565格式,还有哪些需要注意的地方,以下是我寄存器的配置。(前面是寄存器,后面是要写入的值)0xfe, 0x00,
0xd2, 0x10,
0x22, 0x55,
0x5a, 0x56,
0x5b, 0x40,//AWB_G_gain
0x5c, 0x4a,//AWB_B_gain
0x22, 0x57,// Open AWB
0x01, 0xfa,
0x02, 0x70,
0x0f, 0x01,//Hb( {0x0f, 0x01}),Vb( {0x0f , 0x02}
0x03, 0x01,
0x04, 0x2c,
0xe2, 0x00, //anti-flicker step
0xe3, 0x64, //anti-flicker step
0xe4, 0x02, //exp level 116.67fps??
0xe5, 0x58,
0xe6, 0x03,
0xe7, 0x20,
0xe8, 0x04,
0xe9, 0xb0,
0xea, 0x09,
0xeb, 0xc4,
0x05, 0x00,
0x06, 0x00,
0x07, 0x00,
0x08, 0x00,//Column start
0x09, 0x01,//Window height,VGA ?480,0x09 ?0x0a ???
0x0a, 0xe8,//Window height
0x0b, 0x02,//Window widthVGA ?640,0x0b ?0x0c ???
0x0c, 0x88,//Window width
0x0d, 0x02,
0x0e, 0x02,
0x0e, 0x02,
0x10, 0x22,
0x11, 0xfd,
0x12, 0x2a,//Sh_delay -> ????0x12 ?
0x13, 0x00,
0x14, 0x10,//???????,???
0x15, 0x0a,
0x16, 0x05,
0x17, 0x01,
0x18, 0x44,
0x19, 0x44,
0x1a, 0x1e,
0x1b, 0x00,
0x1c, 0xc1,
0x1d, 0x08,
0x1e, 0x60,
0x1f, 0x16,
0x20, 0xff,
0x21, 0xf8,//Y Gamma_en 0x21
0x22, 0x57,//AWB enable 0x22
0x24, 0xa6,//
0x25, 0x0f,//
//output sync_mode
0x26, 0x03,//
0x2f, 0x01,
0x30, 0xf7,
0x31, 0x50,
0x32, 0x00,
0x39, 0x04,
0x3a, 0x18,
0x3b, 0x20,
0x3c, 0x00,
0x3d, 0x00,
0x3e, 0x00,
0x3f, 0x00,
0x50, 0x10,
0x53, 0x82,
0x54, 0x80,
0x55, 0x80,
0x56, 0x82,
0x8b, 0x40,//???b2 ???,???Red ??
0x8c, 0x40,//???b2 ???,???green ??
0x8d, 0x40,//???b2 ???,???blue ?
0x8e, 0x2e,
0x8f, 0x2e,
0x90, 0x2e,
0x91, 0x3c,//The row center of lens shading. x4
0x92, 0x50,//The column center of lens shading. x4
0x5d, 0x12,
0x5e, 0x1a,
0x5f, 0x24,
0x60, 0x07,
0x61, 0x15,
0x62, 0x08,
0x64, 0x03,
0x66, 0xe5,
0x67, 0x86,
0x68, 0x82,
0x69, 0x18,
0x6a, 0x0f,
0x6b, 0x00,
0x6c, 0x5f,
0x6d, 0x8f,
0x6e, 0x55,//ASDE_auto_EE1_effect_start0x6e,
0x6f, 0x38,//ASDE_auto_EE2_effect_start0x6f
0x70, 0x15,
0x71, 0x33,
0x72, 0xdc,
0x73, 0x80,
0x74, 0x02,
0x75, 0x3f,
0x76, 0x02,
0x77, 0x36,//0x77 -- Edge1_effect,0x77 -- Edge2_effect
0x78, 0x88,
0x79, 0x81,
0x7a, 0x81,
0x7b, 0x22,
0x7c, 0xff,
0x93, 0x48,//CC Matrix C11
0x94, 0x00,//CC Matrix C12
0x95, 0x05,//CC Matrix C13
0x96, 0xe8,//CC Matrix C21
0x97, 0x40,//CC Matrix C22
0x98, 0xf0,//CC Matrix C23
0xb1, 0x38,
0xb2, 0x38,
0xbd, 0x38,
0xbe, 0x36,
0xd0, 0xc9,
0xd1, 0x10,//AEC ???????
//0xd2, 0x90//??AEC ??
0xd3, 0x80,//AEC ?????
0xd5, 0xf2,
0xd6, 0x16,
0xdb, 0x92,
0xdc, 0xa5,
0xdf, 0x23,
0xd9, 0x00,
0xda, 0x00,
0xe0, 0x09,
0xec, 0x20,//
0xed, 0x04,//
0xee, 0xa0,//Post gain limit
0xef, 0x40,//Pre gain limit
0x80, 0x03,
0x80, 0x03,
0x9F, 0x10,//0x9f~0xaf -- The 17 points of RGB gamma curve.
0xA0, 0x20,
0xA1, 0x38,
0xA2, 0x4E,
0xA3, 0x63,
0xA4, 0x76,
0xA5, 0x87,
0xA6, 0xA2,
0xA7, 0xB8,
0xA8, 0xCA,
0xA9, 0xD8,
0xAA, 0xE3,
0xAB, 0xEB,
0xAC, 0xF0,
0xAD, 0xF8,
0xAE, 0xFD,
0xAF, 0xFF,
0xc0, 0x00,//0xc0~0xcc -- The 13 points of Y gamma curve
0xc1, 0x10,
0xc2, 0x1C,
0xc3, 0x30,
0xc4, 0x43,
0xc5, 0x54,
0xc6, 0x65,
0xc7, 0x75,
0xc8, 0x93,
0xc9, 0xB0,
0xca, 0xCB,
0xcb, 0xE6,
0xcc, 0xFF,
0xf0, 0x02,
0xf1, 0x01,
0xf2, 0x01,
0xf3, 0x30,
0xf9, 0x9f,
0xfa, 0x78,
//---------------------------------------------------------------
0xfe, 0x01,
0x00, 0xf5,
0x02, 0x1a,
0x0a, 0xa0,
0x0b, 0x60,
0x0c, 0x08,
0x0e, 0x4c,
0x0f, 0x39,
0x11, 0x3f,
0x12, 0x72,
0x13, 0x13,
0x14, 0x42,
0x15, 0x43,
0x16, 0xc2,
0x17, 0xa8,
0x18, 0x18,
0x19, 0x40,
0x1a, 0xd0,
0x1b, 0xf5,
0x70, 0x40,
0x71, 0x58,
0x72, 0x30,
0x73, 0x48,
0x74, 0x20,
0x75, 0x60,
0x77, 0x20,
0x78, 0x32,
0x30, 0x03,
0x31, 0x40,
0x32, 0xe0,
0x33, 0xe0,//0x33~0x38Ϊֻ¶Á
0x34, 0xe0,
0x35, 0xb0,
0x36, 0xc0,
0x37, 0xc0,
0x38, 0x04,
0x39, 0x09,
0x3a, 0x12,
0x3b, 0x1C,
0x3c, 0x28,
0x3d, 0x31,
0x3e, 0x44,
0x3f, 0x57,
0x40, 0x6C,
0x41, 0x81,
0x42, 0x94,
0x43, 0xA7,
0x44, 0xB8,
0x45, 0xD6,
0x46, 0xEE,
0x47, 0x0d ,
0xfe ,0x00,
0xd2, 0x90,// Open AEC ·À¹öÆÁµÄ×Ô¶¯ÆØ¹âat last.
//-----------Update the registers 2010/07/07-------------//
0xfe, 0x00,
0x10, 0x26,
0x11, 0x0d, // fd,modified by mormo 2010/07/06
0x1a, 0x2a, // 1e,modified by mormo 2010/07/06
0x1c, 0x49, // c1,modified by mormo 2010/07/06AWB_R_gain_limit P1: 0x1c 0x80 The gain limit of AWB_R_gain
0x1d, 0x9a, // 08,modified by mormo 2010/07/06AWB_G_gain_limit P1: 0x1d 0x80 The gain limit of AWB_G_gain
0x1e, 0x61,// 60,modified by mormo 2010/07/06AWB_B_gain_limit P1: 0x1e 0x80 The gain limit of AWB_B_gain.
0x3a, 0x20,
0x50, 0x14, // 10,modified by mormo 2010/07/06
0x53, 0x80,
0x56, 0x80,
0x8b, 0x20,//LSC red b2 //LSC Gain = 1+ b2*R^2+b4*R^4(R ??LSC center ???),
0x8c, 0x20,//LSC green b2
0x8d, 0x20,//LSC blue b2
0x8e, 0x14, // LSC red b4
0x8f, 0x10, // LSC green b4
0x90, 0x14, // LSC blue b4
0x94, 0x02,
0x95, 0x07,
0x96, 0xe0,
0xb1, 0x40, // YCPT,Cb saturationFloat S2.5 bits,0x20 ???
0xb2, 0x40,// Cr saturationFloat S2.5 bits,0x20 ???
0xb3, 0x40,//?????,0x40 ???
0xb6, 0xe0,
0xd0, 0xcb, // AECTc9,modifed by mormo 2010/07/06
0xd3, 0x48, // 80,modified by mormor 2010/07/06
0xf2, 0x02,
0xf7, 0x12,//?????X/Y ??
0xf8, 0x0a,
//Registers of Page1
0xfe, 0x01,
0x02, 0x20,
0x04, 0x10,
0x05, 0x08,
0x06, 0x20,
0x08, 0x0a,
0x0e, 0x44,
0x0f, 0x32,
0x10, 0x41 ,
0x11, 0x37,
0x12, 0x22 ,
0x13, 0x19,
0x14, 0x44 ,
0x15, 0x44,
0x19, 0x50,
0x1a, 0xd8 ,
0x32, 0x10 ,
0x35, 0x00 ,
0x36, 0x80,
0x37, 0x00 ,
//-----------Update the registers end---------//
//Registers of Page0
0xfe, 0x00,
0x9F, 0x0E,
0xA0, 0x1C ,
0xA1, 0x34 ,
0xA2, 0x48 ,
0xA3, 0x5A ,
0xA4, 0x6B ,
0xA5, 0x7B ,
0xA6, 0x95 ,
0xA7, 0xAB ,
0xA8, 0xBF,
0xA9, 0xCE ,
0xAA, 0xD9 ,
0xAB, 0xE4,
0xAC, 0xEC ,
0xAD, 0xF7 ,
0xAE, 0xFD ,
0xAF, 0xFF,
您好,我现在在做GC0308的驱动,读ID那些已经完成了,不知道怎么配置寄存器,能发一下你的GC0308寄存器配置表给我吗,谢谢。我邮箱:1536487848@qq.com 楼上完成了吗,把代码开源下好吗?
页:
[1]