/**
  * @brief  主函数
  * @param  无
  * @retval 无
  */
int main(void)
{
    /* 液晶初始化 */
    LCD_Init();

    //while(1);
#if 1
    /* ov7725 gpio 初始化 */
    Ov7725_GPIO_Config();

    /* ov7725 寄存器配置初始化 */
    while(Ov7725_Init() != SUCCESS);

    /* ov7725 场信号线初始化 */
    VSYNC_Init();
    Ov7725_vsync = 0;

    while(1)
    {
        if( Ov7725_vsync == 2 )
        {
            FIFO_PREPARE;  			/*FIFO准备*/
            ImagDisp();					/*采集并显示*/
            Ov7725_vsync = 0;
        }
    }
#endif
}
void rt_thread_entry_trace(void* parameter)
{
//	uint32_t tick=0;
	Ov7725_vsync = 0;
	while(1)
	{
		if(Ov7725_vsync == 2)
		{
			FIFO_PREPARE;  			/*FIFO准备*/					
			ImagDisp(&Cam_data[0][0]);	/*采集并显示*/		
			if(Trace(&condition_yellow,&result))
			{
				targetX=result.x-100;
				targetY=result.y-90;
				targetX/=5;
				targetY/=5;
				targetH = result.h/5;
				targetW = result.w/5;
//				ShowImage();
//				ShowLocation(result);
			}
			else{
				targetX=0;
				targetY=0;
				targetH=0;
				targetW=0;
			}
			Ov7725_vsync = 0;		//处理结束标志			
		}
	}
}
/*---------------------------------------------------------------------------------------*/
void Camera_Test(void)
{
	static uint8_t led_state = 0;
  /* 液晶初始化 */
	//LCD_Init();
	Key2_GPIO_Config();
  GPIO_ResetBits(GPIOB, GPIO_Pin_1);
//  Lcd_GramScan( 2);
  
  /* ov7725 gpio 初始化 */
	Ov7725_GPIO_Config();
	
	/* ov7725 寄存器配置初始化 */
	while(Ov7725_Init() != SUCCESS);
	
	/* ov7725 场信号线初始化 */
	VSYNC_Init();	
	Ov7725_vsync = 0;
	
	while(1)
	{
		if(Key_Scan(GPIOC,GPIO_Pin_13,0) == KEY_ON)
		{
			if(led_state == 0)
			{
				GPIO_ResetBits(GPIOA, GPIO_Pin_8);
				led_state = 1;
				}
			else
			{
				GPIO_SetBits(GPIOA, GPIO_Pin_8);
				led_state = 0;
				}

			}
			
		if( Ov7725_vsync == 2 )
		{
			FIFO_PREPARE;  			/*FIFO准备*/					
			ImagDisp();					/*采集并显示*/
			Ov7725_vsync = 0;			
		}
	}
}