找了原子哥STM32F4探索者的ov2640源碼進行了修改,但無法顯示任何影像,連串口2也收不到任何數據
串口2接了PA2和PA3
修改了以下代码,包括header,求解答
[mw_shl_code=c,true]void SCCB_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB, ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;
GPIO_Init(GPIOB, &GPIO_InitStructure);
GPIO_SetBits(GPIOB,GPIO_Pin_0|GPIO_Pin_1);
SCCB_SDA_OUT();
} [/mw_shl_code]
[mw_shl_code=c,true]u8 OV2640_Init(void)
{
u16 i=0;
u16 reg;
GPIO_InitTypeDef GPIO_InitStructure;
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC, ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_14|GPIO_Pin_15;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;?
GPIO_Init(GPIOC, &GPIO_InitStructure);
OV2640_PWDN=0; //POWER ON
delay_ms(10);
OV2640_RST=0;
delay_ms(10);
OV2640_RST=1;
SCCB_Init();
SCCB_WR_Reg(OV2640_DSP_RA_DLMT, 0x01);
SCCB_WR_Reg(OV2640_SENSOR_COM7, 0x80);
delay_ms(50);
reg=SCCB_RD_Reg(OV2640_SENSOR_MIDH);
reg<<=8;
reg|=SCCB_RD_Reg(OV2640_SENSOR_MIDL);
if(reg!=OV2640_MID)
{
printf("MID:%d\r\n",reg);
return 1;
}
reg=SCCB_RD_Reg(OV2640_SENSOR_PIDH);
reg<<=8;
reg|=SCCB_RD_Reg(OV2640_SENSOR_PIDL);
if(reg!=OV2640_PID)
{
printf("HID:%d\r\n",reg);
return 2;
}
for(i=0;i<sizeof(ov2640_sxga_init_reg_tbl)/2;i++)
{
SCCB_WR_Reg(ov2640_sxga_init_reg_tbl[0],ov2640_sxga_init_reg_tbl[1]);
}
return 0x00; //ok
} [/mw_shl_code]
|