#include <stdint.h>
#include "../inc/ov5642cfg.h"
#include "../inc/ov5642.h"
#include "../inc/sccb.h"
#include "unistd.h"

uint8_t CMOS_Sensor_Init(void)
{

	uint16_t VER;
	uint8_t PID;
	uint16_t CMOS_ID;
	uint16_t i=0;
	uint8_t CMOS_MODEL;

	SCCB_Init(40000, 0);        		//ʼSCCB IO
//	//ȡƷͺ
	VER=SCCB_RD_Reg(0x30,0x0a);
	PID=SCCB_RD_Reg(0x30,0x0b);
	CMOS_ID = (VER<<8)|PID;
	if(CMOS_ID == 0x5642)
	{
		CMOS_MODEL = OV5642;
		//ʼ
		for(i=0;i<sizeof(ov5642_init_reg_tbl)/sizeof(ov5642_init_reg_tbl[0]);i++)
		{
			SCCB_WR_Reg(ov5642_init_reg_tbl[i][0],ov5642_init_reg_tbl[i][1],ov5642_init_reg_tbl[i][2]);
			usleep(2000);
		}
	}
	else
		CMOS_MODEL = UNKNOWN;

   	return CMOS_MODEL; 	//ok
}
