⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 camdata.h

📁 对SAMSUNG 2440所有外部端口的全功能测试,包括SD卡,USB,CAMERA,LCD,IIS,TIMER,RS232等等,是你理想的调试软件.
💻 H
📖 第 1 页 / 共 2 页
字号:
/*****************************************
  NAME: camdata.h
  DESC: data for initializing camera module
  HISTORY:  2004.01.16:draft ver 0.0
 *****************************************/

#ifndef __CAMDATA_H__
#define __CAMDATA_H__

#ifdef __cplusplus
extern "C"{
#endif

#include "Camdef.h"

#define	CAM_ACT_HSIZE	(640)	// Max 640
#define	CAM_ACT_VSIZE	(480)	// Max 480
#define	CAM_STX		(0x2f)	//47
#define	CAM_STY		(6)		//6
#define	CAM_ENDX		(((CAM_ACT_HSIZE)/4) + CAM_STX)
#define	CAM_ENDY		((CAM_ACT_VSIZE/2) + CAM_STY-1)


const unsigned char Ov7620_Yuv16bit[][2] = {

	{0x12, 0x80},			// Camera Soft reset. Self cleared after reset.
	{0x17, CAM_STX},		//
	{0x18, CAM_ENDX},	// (207-47)*4 = 640
	{0x19, CAM_STY},		//
	{0x1a, CAM_ENDY},	// ((244-5)+1)*2=480

	{0x01, 0x80},		// set blue gain
	{0x02, 0x80},		// set red gain
	{0x03, 0xb0},
	{0x06, 0x70},		// set brightness
	{0x07, 0x00},
	{0x0c, 0x24},		// set blue background
	{0x0d, 0x24},		// set red background
	{0x10, 0xff},		// set exposure time, brightness control
	{0x11, 0x40},		// set frame rate 27Mhz/[(0+1)*2]=13.5MHz
	{0x12, 0x24},		// set YUV mode, enable AGC/AWB, mirror image.
	{0x15, 0x01},		// Use PCLK rising edge to latch data
	{0x16, 0x03},		//
	{0x12, 0x64},		// set YUV mode, enable AGC/AWB, mirror image.
	{0x13, 0x01},		// YUV 16-bit format, Disable AEC/AGC/AWB
	{0x14, 0x84},		// turn off GAMMA
	{0x24, 0x3a},		//
	{0x25, 0x60},		//
	{0x28, 0x20},		// Progressive mode.
	{0x2d, 0x95},		//
	{0x67, 0x92},		//
	{0x74, 0x00}		//
};


const unsigned char Ov7620_YCbCr8bit[][2] = {

	{0x12, 0x80},		// Camera Soft reset. Self cleared after reset.
	{0x00, 0x00},
	{0x01, 0x80},		// set blue gain
	{0x02, 0x80},		// set red gain
	{0x03, 0xb0},
	{0x06, 0x60},		// set brightness
	{0x0c, 0x24},		// set blue background
	{0x0d, 0x24},		// set red background
	{0x10, 0xff},		// set exposure time, brightness control
	{0x11, 0x80},		// set frame rate CLK_input = PCLK
	{0x13, 0x21},		// set 8 Bit YUV mode	
	{0x14, 0x94}, 
	{0x16, 0x03},		//
	{0x17, 0x2f},		//
	{0x18, 0xcf},	        // (207-47)*4 = 640
	{0x19, 0x06},		//
	{0x1a, 0xf5},	        // ((244-5)+1)*2=480
	{0x1b, 0x00},
	{0x20, 0x00},
	{0x21, 0x80},
	{0x22, 0x80},
	{0x23, 0x00},
	{0x26, 0xa2},
	{0x27, 0xea},
	{0x29, 0x00},
	{0x2a, 0x00},
	{0x2b, 0x00},
	{0x2c, 0x88},
	{0x2e, 0x80},
	{0x2f, 0x44},
	{0x60, 0x27},
	{0x61, 0x82},
	{0x62, 0x5f},
	{0x63, 0xd5},
	{0x64, 0x57},
	{0x65, 0x83},
	{0x66, 0x55},
	{0x68, 0xcf},
	{0x69, 0x76},
	{0x6a, 0x22},
	{0x6b, 0x00},
	{0x6c, 0x08},
	{0x6d, 0x48},	
	{0x6e, 0x80},
	{0x6f, 0x0c},
	{0x70, 0x89},
	{0x71, 0x00},
	{0x72, 0x14},
	{0x73, 0x54},	
	{0x75, 0x0e},
	{0x76, 0x00},
	{0x77, 0xff},
	{0x78, 0x80},
	{0x79, 0x80},
	{0x7a, 0x80},
	{0x7b, 0xe6},
	{0x7c, 0x00},	
	{0x24, 0x10},
	{0x25, 0x8a},
	{0x28, 0x20},		
	{0x2d, 0x95},
	{0x67, 0x92},
	{0x74, 0x00},

	{0x15, 0x41},		// inversed PCLK : falling edge to get data, 8 Bit -U-V- sequence....
	{0x12, 0x34}, 	// enable AGC/AWB, mirror image. YUYV-must set at last..
};
const unsigned char OV9650Table_common2[][2] = 
{
// 05-08-25 from JUNCHENG
	{0x12,0x80},
	{0x13,0xe5},//added by vincent
	{0x01,0x80},//added by vincent
	{0x02,0x80},//added by vincent
	{0x12,0x00},
	{0x29,0x30},
	
	{0x11,0x40},
	{0x92,0x00},
	{0x93,0x00},
	#ifdef SENSOR_60HZ
	{0x9d,0x40}, 
	{0x9e,0x40},
	{0x3b,0x02},//0a for 50hz, 02 for 60hz
	#else
	{0x9d,0x4c},
	{0x9e,0x3f},
	{0x3b,0x0a},
	#endif
	{0x13,0xf0},
	{0x10,0x00},
	{0x00,0x00},
	{0x01,0x80},
	{0x02,0x80},
	//{0x13,0xf7},marked by vincent

	{0x04,0x00},
	{0x18,0x01},
	{0x17,0x13},
	{0x32,0x92},
	{0x19,0x02},
	{0x1a,0x7a},
	{0x03,0x00},

	{0x0e,0x84},
	{0x0f,0x6A},
	{0x15,0x00},
	{0x16,0x02},
	{0x1b,0x01},
	{0x1e,0x01},

	{0x33,0x00}, 
	{0x34,0x07},
	{0x35,0x84},
	{0x36,0x00},
	{0x38,0x13},
	{0x39,0x43},
	{0x3a,0x00},
	{0x3c,0x6c},
	{0x3d,0x90},
	{0x3f,0x0f},//0xA0
	{0x40,0xc1},
	{0x41,0x20},
	{0x6b,0x0a},
	{0xa1,0xc8},

	{0x69,0x80},
	{0x43,0xf0},
	{0x44,0x10},
	{0x45,0x78},
	{0x46,0xa8},
	{0x47,0x60},
	{0x48,0x80},
	{0x59,0xba},
	{0x5a,0x9a},
	{0x5b,0x22},
	{0x5c,0xb9},
	{0x5d,0x9b},
	{0x5e,0x10},
	{0x5f,0xe0},
	{0x60,0x85},
	{0x61,0x60},
	{0x9f,0x9d},
	{0xa0,0xa0},

	{0x6c,0x20},
	{0x6d,0x50},
	{0x6e,0x80},
	{0x6f,0xc0},
	{0x70,0xc0},
	{0x71,0xa0},
	{0x72,0x90},
	{0x73,0x78},
	{0x74,0x78},
	{0x75,0x78},
	{0x76,0x40},
	{0x77,0x20},
	{0x78,0x20},
	{0x79,0x20},
	{0x7a,0x14},
	{0x7b,0x0e},
	{0x7c,0x02},
	{0x7d,0x07},
	{0x7e,0x17},
	{0x7f,0x47},
	{0x80,0x5f},
	{0x81,0x73},
	{0x82,0x85},
	{0x83,0x94},
	{0x84,0xa3},
	{0x85,0xb2},
	{0x86,0xc2},
	{0x87,0xca},
	{0x88,0xda},
	{0x89,0xea},
	{0x8a,0xf4},

	{0x55,0x40},
	{0x56,0x40},
	{0x57,0x40},
	{0x58,0x0d},

	{0x8b,0xcc},
	{0x8c,0xcc},
	{0x8d,0xcf},

	{0x13,0xf7},//added by vincent.

	//YOYO
	{0x17, 0x2f},		//
	{0x18, 0xcf},	        // (207-47)*4 = 640
	{0x19, 0x06},		//
	{0x1a, 0xf5},	        // ((244-5)+1)*2=480
	//<<<<<<<<<<<<<<
	{0xFF, 0xFF}


};
const unsigned char OV9650Table_common5[][2] = 
{
// 06-11-19 from YOYO VGA
	{0x12,0x80},
	{0x11,0x00},//added by vincent
	{0x6b,0x0a},//added by vincent
	{0x6a,0x3e},//added by vincent
	{0x3b,0x09},
	{0x13,0xe0},
	
	{0x01,0x80},
	{0x02,0x80},
	{0x00,0x00},
	{0x10,0x00}, 
	{0x13,0xe5},
	
	{0x39,0x43},//0a for 50hz, 02 for 60hz
	{0x38,0x12},
	{0x37,0x00},
	{0x35,0x91},
	{0x0e,0x20},
	{0x1e,0x04},
	
	{0xa8,0x80},
	{0x12,0x40},
	{0x04,0x00},
	{0x0c,0x04},
	{0x0d,0x80},
	{0x18,0xc6},
	{0x17,0x26},
	{0x32,0xad},
	{0x03,0x00},
	{0x1a,0x3d},
	{0x19,0x01},
	{0x14,0x1A},
	{0x15,0x02},
	{0x3f,0xa6},
	{0x41,0x02},
	{0x42,0x08},

	{0x1b,0x00}, 
	{0x16,0x06},
	{0x33,0xe2},
	{0x34,0xbf},
	{0x96,0x04},
	{0x3a,0x00},
	{0x8e,0x00},
	
	{0x3c,0x77},
	{0x8b,0x06},
	{0x94,0x88},//0xA0
	{0x95,0x88},
	{0x40,0xc1},
	{0x29,0x3f},
	{0x0f,0x42},

	{0x3d,0x92},
	{0x69,0x40},
	{0x5c,0xb9},
	{0x5d,0x96},
	{0x5e,0x10},
	{0x59,0xc0},
	{0x5a,0xaf},
	{0x5b,0x55},
	{0x43,0xf0},
	{0x44,0x10},
	{0x45,0x68},
	{0x46,0x96},
	{0x47,0x60},
	{0x48,0x80},
	{0x5f,0xe0},
	{0x60,0x8c},
	{0x61,0x20},
	{0xa5,0xd9},
	{0xa4,0x74},
	{0x8d,0x02},
	{0x13,0xe7},
	
	{0x4f,0x3a},
	{0x50,0x3d},
	{0x51,0x03},
	{0x52,0x12},
	{0x53,0x26},
	{0x54,0x38},
	{0x55,0x40},
	{0x56,0x40},
	{0x57,0x40},
	{0x58,0x0d},
	
	{0x8c,0x23},
	{0x3e,0x02},
	{0xa9,0xb8},
	{0xaa,0x92},
	{0xab,0x0a},
	
	{0x8f,0xdf},
	{0x90,0x00},
	{0x91,0x00},
	{0x9f,0x00},
	{0xa0,0x00},
	{0x3a,0x01},
	
	{0x24,0x80},
	{0x25,0x70},
	{0x26,0xd3},
	
	{0x2a,0x10},
	{0x2b,0x40},

	{0x6c,0x40},
	{0x6d,0x30},
	{0x6e,0x4b},
	{0x6f,0x60},
	{0x70,0x70},
	{0x71,0x70},
	{0x72,0x70},
	{0x73,0x70},
	{0x74,0x60},
	{0x75,0x60},
	{0x76,0x50},
	{0x77,0x48},
	{0x78,0x3a},
	{0x79,0x2e},
	{0x7a,0x28},
	{0x7b,0x22},
	{0x7c,0x04},
	{0x7d,0x07},
	{0x7e,0x10},
	{0x7f,0x28},
	{0x80,0x36},
	{0x81,0x44},
	{0x82,0x52},
	{0x83,0x60},
	{0x84,0x6c},
	{0x85,0x78},
	{0x86,0x8c},
	{0x87,0x9e},
	{0x88,0xbb},
	{0x89,0xd2},
	{0x8a,0xe6},
	

	//<<<<<<<<<<<<<<
	{0xFF, 0xFF}


};

const unsigned char OV9650Table_common[][2] = 
{
// 06-11-19 from YOYO XGA
	{0x12,0x80},
	{0x11,0x80},//added by vincent
	{0x6b,0x0a},//added by vincent
	{0x6a,0x41},//added by vincent
	{0x3b,0x09},
	{0x13,0xe0},
	
	{0x01,0x80},
	{0x02,0x80},
	{0x00,0x00},
	{0x10,0x00}, 
	{0x13,0xe5},
	
	{0x39,0x43},//0a for 50hz, 02 for 60hz
	{0x38,0x12},
	{0x37,0x00},
	{0x35,0x91},
	{0x0e,0x20},
	{0x1e,0x04},
	
	{0xa8,0x80},
	{0x12,0x00},
	{0x04,0x00},
	{0x0c,0x00},
	{0x0d,0x00},
	{0x18,0xbd},
	{0x17,0x1d},
	{0x32,0xad},
	{0x03,0x12},
	{0x1a,0x81},
	{0x19,0x01},
	{0x14,0x1A},
	{0x15,0x00},
	{0x3f,0xa6},
	{0x41,0x02},
	{0x42,0x08},

	{0x1b,0x00}, 
	{0x16,0x06},
	{0x33,0xe2},
	{0x34,0xbf},
	{0x96,0x04},
	{0x3a,0x00},
	{0x8e,0x00},
	
	{0x3c,0x77},
	{0x8b,0x06},
	{0x94,0x88},//0xA0
	{0x95,0x88},
	{0x40,0xc1},
	{0x29,0x3f},
	{0x0f,0x42},

	{0x3d,0x92},
	{0x69,0x40},
	{0x5c,0xb9},
	{0x5d,0x96},
	{0x5e,0x10},
	{0x59,0xc0},
	{0x5a,0xaf},
	{0x5b,0x55},
	{0x43,0xf0},
	{0x44,0x10},
	{0x45,0x68},
	{0x46,0x96},
	{0x47,0x60},
	{0x48,0x80},
	{0x5f,0xe0},
	{0x60,0x8c},
	{0x61,0x20},
	{0xa5,0xd9},
	{0xa4,0x74},
	{0x8d,0x02},
	{0x13,0xe7},
	
	{0x4f,0x3a},
	{0x50,0x3d},
	{0x51,0x03},
	{0x52,0x12},
	{0x53,0x26},
	{0x54,0x38},
	{0x55,0x40},
	{0x56,0x40},
	{0x57,0x40},
	{0x58,0x0d},
	
	{0x8c,0x23},
	{0x3e,0x02},
	{0xa9,0xb8},
	{0xaa,0x92},
	{0xab,0x0a},
	
	{0x8f,0xdf},
	{0x90,0x00},
	{0x91,0x00},
	{0x9f,0x00},
	{0xa0,0x00},
	{0x3a,0x01},
	
	{0x24,0x80},
	{0x25,0x70},
	{0x26,0xd3},
	
	{0x2a,0x10},
	{0x2b,0x34},

	{0x6c,0x40},
	{0x6d,0x30},
	{0x6e,0x4b},
	{0x6f,0x60},
	{0x70,0x70},
	{0x71,0x70},
	{0x72,0x70},
	{0x73,0x70},
	{0x74,0x60},
	{0x75,0x60},
	{0x76,0x50},
	{0x77,0x48},
	{0x78,0x3a},
	{0x79,0x2e},
	{0x7a,0x28},
	{0x7b,0x22},
	{0x7c,0x04},
	{0x7d,0x07},
	{0x7e,0x10},
	{0x7f,0x28},
	{0x80,0x36},
	{0x81,0x44},
	{0x82,0x52},
	{0x83,0x60},
	{0x84,0x6c},
	{0x85,0x78},
	{0x86,0x8c},
	{0x87,0x9e},
	{0x88,0xbb},
	{0x89,0xd2},
	{0x8a,0xe6},
	

	//<<<<<<<<<<<<<<
	{0xFF, 0xFF}


};

const unsigned char OV9650Table_vga[][2] = 
{
	{0x11,0x81},
	#ifdef SENSOR_60HZ
	{0x9e,0x40},
	{0x3b,0x02},//0a for 50hz, 02 for 60hz
	#endif
	{0x3f,0x0f}, //0x81
	{0x41,0x00},

	{0x4f,0x80},
	{0x50,0x86},
	{0x51,0x06},
	{0x52,0x20},
	{0x53,0x50},
	{0x54,0x70},

// stonger contrast.
	{0x6c,0x20},
	{0x6d,0x50},
	{0x6e,0x80},
	{0x6f,0xc0},
	{0x70,0xc0},
	{0x71,0xa0},
	{0x72,0x90},
	{0x73,0x78},
	{0x74,0x78},
	{0x75,0x78},
	{0x76,0x40},
	{0x77,0x20},
	{0x78,0x20},
	{0x79,0x20},
	{0x7a,0x14},
	{0x7b,0x0e},
	{0x7c,0x02},
	{0x7d,0x07},
	{0x7e,0x17},
	{0x7f,0x47},
	{0x80,0x5f},
	{0x81,0x73},
	{0x82,0x85},
	{0x83,0x94},
	{0x84,0xa3},
	{0x85,0xb2},
	{0x86,0xc2},
	{0x87,0xca},
	{0x88,0xda},
	{0x89,0xea},
	{0x8a,0xf4},

/*
	{0x6c,0x40},
	{0x6d,0x30},
	{0x6e,0x4b},
	{0x6f,0x60},
	{0x70,0x70},
	{0x71,0x70},
	{0x72,0x70},
	{0x73,0x70},
	{0x74,0x60},
	{0x75,0x60},
	{0x76,0x50},
	{0x77,0x48},

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -