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

📄 camera_yuv_para.c

📁 mtk 6225, ov9660 摄像头驱动源码.可以直接使用
💻 C
📖 第 1 页 / 共 3 页
字号:
			0x6C6C6C6C, 0x6D6D6D6D, 0x6E6E6E6E, 0x6F6F6F6F, 		// CAM+11B0~11BC,(27)108,432~447
			0x70707070, 0x71717171, 0x72727272, 0x73737373, 		// CAM+11C0~11CC,(27)112,448~463
			0x74747474, 0x75757575, 0x76767676, 0x77777777, 		// CAM+11D0~11DC,(27)116,464~479
			0x78787878, 0x79797979, 0x7A7A7A7A, 0x7B7B7B7B, 		// CAM+11E0~11EC,(27)120,480~495
			0x7C7C7C7C, 0x7D7D7D7D, 0x7E7E7E7E, 0x7F7F7F7F, 		// CAM+11F0~11FC,(27)124,496~511
			0x80808080, 0x81818181, 0x82828282, 0x83838383, 		// CAM+1200~120C,(27)128,512~527
			0x84848484, 0x85858585, 0x86868686, 0x87878787, 		// CAM+1210~121C,(27)132,528~543
			0x88888888, 0x89898989, 0x8A8A8A8A, 0x8B8B8B8B, 		// CAM+1220~122C,(27)136,544~559
			0x8C8C8C8C, 0x8D8D8D8D, 0x8E8E8E8E, 0x8F8F8F8F, 		// CAM+1230~123C,(27)140,560~575
			0x90909090, 0x91919191, 0x92929292, 0x93939393, 		// CAM+1240~124C,(27)144,576~591
			0x94949494, 0x95959595, 0x96969696, 0x97979797, 		// CAM+1250~125C,(27)148,592~607
			0x98989898, 0x99999999, 0x9A9A9A9A, 0x9B9B9B9B,  		// CAM+1260~126C,(27)152,608~623
			0x9C9C9C9C, 0x9D9D9D9D, 0x9E9E9E9E, 0x9F9F9F9F, 		// CAM+1270~127C,(27)156,624~639
			0xA0A0A0A0, 0xA1A1A1A1, 0xA2A2A2A2, 0xA3A3A3A3, 		// CAM+1280~128C,(27)160,640~655
			0xA4A4A4A4, 0xA5A5A5A5, 0xA6A6A6A6, 0xA7A7A7A7, 		// CAM+1290~129C,(27)164,656~671
			0xA8A8A8A8, 0xA9A9A9A9, 0xAAAAAAAA, 0xABABABAB, 		// CAM+12A0~12AC,(27)168,672~687
			0xACACACAC, 0xADADADAD, 0xAEAEAEAE, 0xAFAFAFAF, 		// CAM+12B0~12BC,(27)172,688~703
			0xB0B0B0B0, 0xB1B1B1B1, 0xB2B2B2B2, 0xB3B3B3B3, 		// CAM+12C0~12CC,(27)176,704~719
			0xB4B4B4B4, 0xB5B5B5B5, 0xB6B6B6B6, 0xB7B7B7B7, 		// CAM+12D0~12DC,(27)180,720~735
			0xB8B8B8B8, 0xB9B9B9B9, 0xBABABABA, 0xBBBBBBBB, 		// CAM+12E0~12EC,(27)184,736~751
			0xBCBCBCBC, 0xBDBDBDBD, 0xBEBEBEBE, 0xBFBFBFBF, 		// CAM+12F0~12FC,(27)188,752~767
			0xC0C0C0C0, 0xC1C1C1C1, 0xC2C2C2C2, 0xC3C3C3C3, 		// CAM+1300~130C,(27)192,768~783
			0xC4C4C4C4, 0xC5C5C5C5, 0xC6C6C6C6, 0xC7C7C7C7, 		// CAM+1310~131C,(27)196,784~799
			0xC8C8C8C8, 0xC9C9C9C9, 0xCACACACA, 0xCBCBCBCB, 		// CAM+1320~132C,(27)200,800~815
			0xCCCCCCCC, 0xCDCDCDCD, 0xCECECECE, 0xCFCFCFCF,		// CAM+1330~133C,(27)204,816~831
			0xD0D0D0D0, 0xD1D1D1D1, 0xD2D2D2D2, 0xD3D3D3D3, 		// CAM+1340~134C,(27)208,832~847
			0xD4D4D4D4, 0xD5D5D5D5, 0xD6D6D6D6, 0xD7D7D7D7, 		// CAM+1350~135C,(27)212,848~863
			0xD8D8D8D8, 0xD9D9D9D9, 0xDADADADA, 0xDBDBDBDB, 		// CAM+1360~136C,(27)216,864~879
			0xDCDCDCDC, 0xDDDDDDDD, 0xDEDEDEDE, 0xDFDFDFDF, 		// CAM+1370~137C,(27)220,880~895
			0xE0E0E0E0, 0xE1E1E1E1, 0xE2E2E2E2, 0xE3E3E3E3, 		// CAM+1380~138C,(27)224,896~911
			0xE4E4E4E4, 0xE5E5E5E5, 0xE6E6E6E6, 0xE7E7E7E7, 		// CAM+1390~139C,(27)228,912~927
			0xE8E8E8E8, 0xE9E9E9E9, 0xEAEAEAEA, 0xEBEBEBEB, 		// CAM+13A0~13AC,(27)232,928~943
			0xECECECEC, 0xEDEDEDED, 0xEEEEEEEE, 0xEFEFEFEF, 		// CAM+13B0~13BC,(27)236,944~959
			0xF0F0F0F0, 0xF1F1F1F1, 0xF2F2F2F2, 0xF3F3F3F3, 		// CAM+13C0~13CC,(27)240,960~975
			0xF4F4F4F4, 0xF5F5F5F5, 0xF6F6F6F6, 0xF7F7F7F7, 		// CAM+13D0~13DC,(27)244,976~991
			0xF8F8F8F8, 0xF9F9F9F9, 0xFAFAFAFA, 0xFBFBFBFB, 		// CAM+13E0~13EC,(27)248,992~1007
			0xFCFCFCFC, 0xFDFDFDFD, 0xFEFEFEFE, 0xFFFFFFFF};       // CAM+13F0~13FC,(27)252,1008~1023
// _Camera_Parameter_Structure_END_

void init_camera_operation_para(camera_operation_para_struct *oper_data)
{
   oper_data->capture_delay_frame=3;			/* Switch Preview to Capture */
   oper_data->preview_delay_frame=8;			/* Wait Preview Stable */
}

#ifdef AF_SUPPORT
void init_af_operation_para(af_operation_para_struct *oper_data)
{
}
#endif

void set_camera_mode_para(kal_uint8 mode)
{
}

/********************************************
   reduce_color_matrix 
   reduce color matrix for reduece noise 
   input :  sat_factor 
            saturation factor 
            uint: 0x20  
                  0x20 mean keep saturation the same with ISP table
                  0x00 mean reduce saturation to bypass 
   
*********************************************/


void reduce_color_matrix(kal_uint32 sat_factor)
{
}

void set_anti_low_light_para(kal_uint8 aeidx)
{
}

#endif

#elif (defined(MT6228))

#if !defined(ISP_SUPPORT)
	// DO NOT delete this section!!! 
	// When ISP_SUPPORT is not defined, NVRAM still need the dummy structure 
	// and default value to initialize NVRAM_EF_CAMERA_PARA_LID.             
	#include "camera_para.h"
	const nvram_camera_para_struct CAMERA_PARA_DEFAULT_VALUE={0};
#else
#include "drv_comm.h"
#include "stdio.h"
#include "isp_if.h"
#include "image_sensor.h"
#include "sccb.h"
#include "ae_awb.h"
#include "af.h"
#include "camera_para.h"
#include "med_api.h"

extern kal_uint32	eShutter;

nvram_camera_para_struct	camera_para;
nvram_camera_defect_struct	camera_defect;

// _Camera Parameter Structure START_
const nvram_camera_defect_struct CAMERA_DEFECT_DEFAULT_VALUE={0xFFFFFFFF};
const nvram_camera_para_struct CAMERA_PARA_DEFAULT_VALUE=
{	
	/* STRUCT: ISP */
	{
		/* ARRAY: ISP.reg[132] */
		{
			0xA3020074, 0x0FFF0FFF, 0x006302E6, 0x00310212, 		//CAM+000h,0
			0x00000001, 0xA8A8A8A8, 0x00000040, 0x0000000F,		//CAM+010h,4
			0x00000000, 0x00000000, 0x00000000, 0x00000000, 		//CAM+020h,8
			0x85A00100, 0x00F00098, 0x00800098, 0x10203040,		//CAM+030h,12
			0x80000000, 0x00410040, 0x0010000C, 0x1020000C, 		//CAM+040h,16
			0x2030000C, 0x00100C18, 0x10200C18, 0x20300C18, 		//CAM+050h,20
			0x00101824, 0x10201824, 0x20301824, 0x082C0721, 		//CAM+060h,24
			0x00000000, 0x0A041910, 0x00000514, 0x061FC810, 		//CAM+070h,28
			0x01060612, 0x00000002, 0x24800F0F, 0x101F8224, 
			0x0039373F, 0x84151204, 0x301B0504, 0x00328D85, 
			0x00872E87, 0x00828E30, 0x00202020, 0x00000048, 
			0x00808080, 0x00000000, 0x00408030, 0x20200000, 		//CAM+0B0h,44
			0x00FF91B8, 0x00018080, 0x3C5B6B7B, 0x96ADC4D7, 
			0xE1EBF500, 0x00000000, 0x00000000, 0x00000000,		//CAM+0D0h,52 
			0x00000000, 0x00000000, 0x00000000, 0x00000000, 		//CAM+0E0h,56
			0x00000000, 0x00000000, 0x00000000, 0x00000000, 		//CAM+0F0h,60
			0x00000000, 0x00000000, 0x00000000, 0x00000000, 		//CAM+100h,64
			0x00000000, 0x00000000, 0x00000000, 0x00000000,		// CAM+110h~11Ch ,68

			0x245C5C24, 0x245C5C24, 0x00000000, 0x00000000,		// CAM+120h~12Ch ,72
			0x00325065, 0x7694AEC5, 0xDAE4EDF7, 0x32506576, 		// CAM+130h~13Ch ,76
			0x94AEC5DA, 0xE4EDF700, 0x32506576, 0x94AEC5DA, 		// CAM+140h~15Ch ,80
			0xE4EDF700, 0x00000000, 0x00000000, 0x00000000, 		// CAM+150h~15Ch ,84

			0x00000000, 0x00000000, 0x11111111, 0x11111111, 		// CAM+1A0h~24Ch ,88
			0x11111111, 0x11111111, 0x11111111, 0x11111111, 		// CAM+1B0h~1BC ,92
			0x11111111, 0x11111110, 0x00000000, 0x00000200, 		// CAM+1C0~1CC ,96
			0x00000000, 0x00000000, 0x00000000, 0x00000000, 		// CAM+1D0~1DC ,100
			0x60708090, 0xA0B0C0D0, 0xE0F00000, 0x00000000, 		// CAM+1E0~1EC ,104
			0x00000000, 0x00000000, 0x00000000, 0x00000000, 		// CAM+1F0~1FC ,108
			0x00000000, 0x00000000, 0x00000000, 0x00000000, 		// CAM+200~20C ,112
			0x00000000, 0x12573339, 0x8C8C8C00, 0x02204163, 		// CAM+210~21C ,116
			0x869DDDFF, 0xFFFFFFFF, 0x20416386, 0x9DDDFFFF, 		// CAM+220~22C ,120
			0xFFFFFF00, 0x20416386, 0x9DDDFFFF, 0xFFFFFF00, 		// CAM+230~23C ,124
			0x00000000, 0x00000000, 0x00000000, 0x00000000			// CAM+240~24C ,128
		}
	}, 
	/* STRUCT: PREDGAMMA */
	{
		/* PREDGAMMA.gamma_select */ 0x00, 		/* ARRAY: PREDGAMMA.gamma[9][11] */
		{
			/* ARRAY: PREDGAMMA.gamma[0][11] */
			{
				0x28, 0x4E, 0x67, 0x78, 0x91, 0xA8, 0xC0, 0xD7, 
				0xE1, 0xEB, 0xF5
			},

			/* ARRAY: PREDGAMMA.gamma[1][11] */
	{
				0x20, 0x3C, 0x55, 0x69, 0x8D, 0xA8, 0xC0, 0xD7, 
				0xE1, 0xEB, 0xF5
			},

			/* ARRAY: PREDGAMMA.gamma[2][11] */
			{
				0x14, 0x28, 0x46, 0x64, 0x91, 0xB4, 0xCE, 0xE0, 
				0xE8, 0xF0, 0xF8
			},

			/* ARRAY: PREDGAMMA.gamma[3][11] */
			{
				0x49, 0x64, 0x78, 0x88, 0xA4, 0xBA, 0xCE, 0xE0, 
				0xE8, 0xF0, 0xF8
			},

			/* ARRAY: PREDGAMMA.gamma[4][11] */
			{
				0x29, 0x59, 0x75, 0x88, 0xA4, 0xBA, 0xCE, 0xE0, 
				0xE8, 0xF0, 0xF8
			},

			/* ARRAY: PREDGAMMA.gamma[5][11] */
			{
				0x14, 0x30, 0x50, 0x69, 0x87, 0xA5, 0xBE, 0xD7, 
				0xE1, 0xEB, 0xF5
			},

			/* ARRAY: PREDGAMMA.gamma[6][11] */
			{
				0x17, 0x30, 0x53, 0x74, 0x99, 0xAB, 0xBE, 0xD7, 
				0xE1, 0xEB, 0xF5
			},

			/* ARRAY: PREDGAMMA.gamma[7][11] */
			{
				0x30, 0x49, 0x5D, 0x6F, 0x8D, 0xA8, 0xC0, 0xD7, 
				0xE1, 0xEB, 0xF5
			},

			/* ARRAY: PREDGAMMA.gamma[8][11] */
			{
				0x10, 0x20, 0x30, 0x40, 0x60, 0x80, 0xA0, 0xC0, 
				0xD0, 0xE0, 0xF0
			}
		}
	},

	/* STRUCT: Comp */
	{
		/* STRUCT: shading_cap */
		{
			0x14AF2671, 0x8C8C8C00, 0x02204163, 0x869AA3E3, 
			0xFFFFFFFF, 0x20416386, 0x9AA3E3FF, 0xFFFFFF00, 
			0x20416386, 0x9AA3E3FF, 0xFFFFFF00
		},
		/* STRUCT: autodefect_pre_low */		
		{
				0x00000000, 0x00002020
		},
		/* STRUCT: autodefect_cap_nor */		
		{
				0x00000000, 0x00002020
		},
		/* STRUCT: autodefect_cap_low */		
		{
				0x00000000, 0x00002020
		},
		/* STRUCT: shading_spare_1 */
		{
				0x00000000, 0x00000000, 0x00204060, 0x8090A0B0,
				0xC0D0E0F0, 0x20406080, 0x90A0B0C0, 0xD0E0F000,
				0x20406080, 0x90A0B0C0, 0xD0E0F000
		},
		/* STRUCT: shading_spare_2 */
		{
				0x00000000, 0x00000000, 0x00204060, 0x8090A0B0,
				0xC0D0E0F0, 0x20406080, 0x90A0B0C0, 0xD0E0F000,
				0x20406080, 0x90A0B0C0, 0xD0E0F000
		}		
	},

	/* STRUCT: AE */
	{
		/* AE.iniShutter */ 0x0118, /* AE.TargetLum */ 0x5A, /* AE.StepperEV */ 0x02, /* AE.iniExpoIdx */ 0x28
	},

	/* STRUCT: AWB */
	{
		{
			{
				0x1D4C, 0x009D, 0x008C, 0x0080, 0x008C
			},
			{
				0x1964, 0x009D, 0x008C, 0x0080, 0x008C
			},
			{
				0x0FA0, 0x0080, 0x0085, 0x00A8, 0x0085
			},
			{
				0x0ED8, 0x0080, 0x0094, 0x00B5, 0x0094
			},
			{
				0x0ED8, 0x0080, 0x00A9, 0x00E4, 0x00A9
			},
			{
				0x1130, 0x0087, 0x0080, 0x00D0, 0x0080
			}
		},
		0x00B5, 0x009C, 0x00A5},	
	/* STRUCT: SENSOR */
	{
		/* ARRAY: SENSOR.reg[34] */
		{
			 { 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 }
			,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 }
			,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 }
			,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 }
			,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 }
			,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 }
			,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 }
			,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 }
			,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 }
			,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 }         // 32~35
			,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 }
			,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 }
			,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 }
			,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 }
			,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 }
			,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 }
			,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 }
			,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 }                                               // 68~69
			//------------------------Engineer mode---------------------------------
			,{ 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 }, { 0xFFFFFFFF, 0x00 } ,{ 0xFFFFFFFF, 0x00 }
			,{ 0xFFFFFFFF, ISP_DRIVING_8MA }
			//------------------------Engineer mode---------------------------------
		},
		//------------------------CCT mode---------------------------------
		{
		   { 0x00, 0x00 } ,{ 0x69, 0x40 } ,{ 0x69, 0x40 }
		}
		//------------------------CCT mode---------------------------------	
	}
};
// _Camera_Parameter_Structure_END_


void init_camera_operation_para(camera_operation_para_struct *oper_data)
{
   oper_data->capture_delay_frame=3;			/* Switch Preview to Capture */
   oper_data->preview_delay_frame=8;			/* Wait Preview Stable */
#if (defined(HORIZONTAL_CAMERA))
	camera_horizontal_flag=1;
#else
	camera_horizontal_flag=0;
#endif	
}

#ifdef AF_SUPPORT
void init_af_operation_para(af_operation_para_struct *oper_data)
{
}
#endif

void set_camera_mode_para(kal_uint8 mode)
{
}

void set_anti_low_light_para(kal_uint8 aeidx)
{
}

#endif

#endif

⌨️ 快捷键说明

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