Ejemplo n.º 1
0
//·µ»Ø1³É¹¦£¬·µ»Ø0ʧ°Ü
uchar OV7670_init(void)
{
	uchar temp;
	
	uint i=0;

	
	InitSCCB();//io init..

	temp=0x80;
	if(0==wrOV7670Reg(0x12, temp)) //Reset SCCB
	{
		return 0 ;
	}
	delay_ms(10);

	for(i=0;i<CHANGE_REG_NUM;i++)
	{
		if( 0==wrOV7670Reg(pgm_read_byte( &change_reg[i][0]),pgm_read_byte( &change_reg[i][1]) ))
		{
			return 0;
		}
	}

	return 0x01; //ok

	
} 
Ejemplo n.º 2
0
//·µ»Ø1³É¹¦£¬·µ»Ø0ʧ°Ü
uchar OV7670_init(void)
{
	
	
	uint i=0;

	
	InitSCCB();//io init..
	//OV2640_JpegInit(1);
	
	
	RCC->APB2ENR|=1<<4;//ÏÈʹÄÜÍâÉèPORTCʱÖÓ									 
	//PORTC0~13ÍÆÍìÊä³ö 	
	GPIOC->CRL = 0x88888888;
	GPIOC->ODR |= 0x00FF;
	Exit_Init(GPIOB, GPIO_Pin_8, GPIO_Mode_IPU, EXTI_Trigger_Rising, 2, 3);	//VSYNC
	Exit_Init(GPIOB, GPIO_Pin_15, GPIO_Mode_IPU, EXTI_Trigger_Falling, 2, 4);//PICLK
	GpioInit(GPIOB, GPIO_Pin_14, GPIO_Mode_IPU, 0);							//HREF
	
	return;//´ÓÕâÀï·µ»Ø	
	

	temp=0x80;
	if(0==wrOV7670Reg(0x12, temp)) //Reset SCCB
	{
		return 0 ;
		
	}
	while(0)
	{
		rdOV7670Reg(0x1C, &temp);
		USART_Transmit(temp);
		Delay_nMS(100);
	}
	Delay_nMS(10);

	for(i=0;i<CHANGE_REG_NUM;i++)
	{
		if( 0 == wrOV7670Reg (change_reg[i][0],change_reg[i][1])   )
		{
			return 0;
		}
	}

	return 0x01; //ok

	
}