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

📄 camera_para.c

📁 最新MTK手机软件源码
💻 C
📖 第 1 页 / 共 2 页
字号:
			},

			/* ARRAY: AWB.LightSource[4][4] */
			{
				0x0AF0, 0x0080, 0x00B2, 0x0120
			}
		},
		/* ARRAY: MAX AWB */
		0x009D, 0x00B2, 0x0120
	},

	/* STRUCT: SENSOR */
	{
		/* ARRAY: SENSOR.reg[34] */
		{
			 /* STRUCT: SENSOR.reg[0] */
			{
				/* SENSOR.reg[0].addr */ 0x000000F2, /* SENSOR.reg[0].para */ 0x0000000B
			},

			/* STRUCT: SENSOR.reg[1] */
			{
				/* SENSOR.reg[1].addr */ 0x00000003, /* SENSOR.reg[1].para */ 0x000004DA
			},

			/* STRUCT: SENSOR.reg[2] */
			{
				/* SENSOR.reg[2].addr */ 0x00000004, /* SENSOR.reg[2].para */ 0x00000660
			},

			/* STRUCT: SENSOR.reg[3] */
			{
				/* SENSOR.reg[3].addr */ 0x00000005, /* SENSOR.reg[3].para */ 0x0000025C
			},

			/* STRUCT: SENSOR.reg[4] */
			{
				/* SENSOR.reg[4].addr */ 0x00000006, /* SENSOR.reg[4].para */ 0x00000020
			},

			/* STRUCT: SENSOR.reg[5] */
			{
				/* SENSOR.reg[5].addr */ 0x00000020, /* SENSOR.reg[5].para */ 0x00000090
			},

			/* STRUCT: SENSOR.reg[6] */
			{
				/* SENSOR.reg[6].addr */ 0x00000007, /* SENSOR.reg[6].para */ 0x000000FF
			},

			/* STRUCT: SENSOR.reg[7] */
			{
				/* SENSOR.reg[7].addr */ 0x00000021, /* SENSOR.reg[7].para */ 0x00008400
			},

			/* STRUCT: SENSOR.reg[8] */
			{
				/* SENSOR.reg[8].addr */ 0x00000035, /* SENSOR.reg[8].para */ 0x00000FE8
			},

			/* STRUCT: SENSOR.reg[9] */
			{
				/* SENSOR.reg[9].addr */ 0x00000038, /* SENSOR.reg[9].para */ 0x00000806
			},

			/* STRUCT: SENSOR.reg[10] */
			{
				/* SENSOR.reg[10].addr */ 0x0000006E, /* SENSOR.reg[10].para */ 0x0000B601
			},

			/* STRUCT: SENSOR.reg[11] */
			{
				/* SENSOR.reg[11].addr */ 0x00000076, /* SENSOR.reg[11].para */ 0x0000B48A
			},

			/* STRUCT: SENSOR.reg[12] */
			{
				/* SENSOR.reg[12].addr */ 0x00000078, /* SENSOR.reg[12].para */ 0x0000B601
			},

			/* STRUCT: SENSOR.reg[13] */
			{
				/* SENSOR.reg[13].addr */ 0x00000079, /* SENSOR.reg[13].para */ 0x0000B609
			},

			/* STRUCT: SENSOR.reg[14] */
			{
				/* SENSOR.reg[14].addr */ 0x0000007A, /* SENSOR.reg[14].para */ 0x0000B60F
			},

			/* STRUCT: SENSOR.reg[15] */
			{
				/* SENSOR.reg[15].addr */ 0x0000007D, /* SENSOR.reg[15].para */ 0x0000B656
			},

			/* STRUCT: SENSOR.reg[16] */
			{
				/* SENSOR.reg[16].addr */ 0x0000007F, /* SENSOR.reg[16].para */ 0x0000B51A
			},

			/* STRUCT: SENSOR.reg[17] */
			{
				/* SENSOR.reg[17].addr */ 0x00000098, /* SENSOR.reg[17].para */ 0x0000B721
			},

			/* STRUCT: SENSOR.reg[18] */
			{
				/* SENSOR.reg[18].addr */ 0x00000099, /* SENSOR.reg[18].para */ 0x0000B622
			},

			/* STRUCT: SENSOR.reg[19] */
			{
				/* SENSOR.reg[19].addr */ 0x00000030, /* SENSOR.reg[19].para */ 0x0000041A
			},

			/* STRUCT: SENSOR.reg[20] */
			{
				/* SENSOR.reg[20].addr */ 0xFFFFFFFF, /* SENSOR.reg[20].para */ 0x00000000
			},

			/* STRUCT: SENSOR.reg[21] */
			{
				/* SENSOR.reg[21].addr */ 0xFFFFFFFF, /* SENSOR.reg[21].para */ 0x00000000
			},

			/* STRUCT: SENSOR.reg[22] */
			{
				/* SENSOR.reg[22].addr */ 0xFFFFFFFF, /* SENSOR.reg[22].para */ 0x00000000
			},

			/* STRUCT: SENSOR.reg[23] */
			{
				/* SENSOR.reg[23].addr */ 0xFFFFFFFF, /* SENSOR.reg[23].para */ 0x00000000
			},

			/* STRUCT: SENSOR.reg[24] */
			{
				/* SENSOR.reg[24].addr */ 0xFFFFFFFF, /* SENSOR.reg[28].para */ ISP_DRIVING_6MA
		}
		},
		{{ 0xFFFFFFFF, 0x20 } ,{ 0x002D, 0x0028 } ,{ 0x002E, 0x0020 } ,{ 0x002B, 0x0020 } ,{ 0x002C, 0x0022 }}	
	}
};

const nvram_camera_gamma_struct CAMERA_GAMMA_DEFAULT_VALUE=	{
			0x00000000, 0x01010101, 0x02020202, 0x03030303, 		// CAM+1000~100C,(27)0,0~15
			0x04040404, 0x05050505, 0x06060606, 0x07070707, 		// CAM+1010~101C,(27)4,16~31
			0x08080808, 0x09090909, 0x0A0A0A0A, 0x0B0B0B0B,  		// CAM+1020~102C,(27)8,32~47
			0x0C0C0C0C, 0x0D0D0D0D, 0x0E0E0E0E, 0x0F0F0F0F, 		// CAM+1030~103C,(27)12,48~63
			0x10101010, 0x11111111, 0x12121212, 0x13131313, 		// CAM+1040~104C,(27)16,64~79
			0x14141414, 0x15115151, 0x16161616, 0x17171717, 		// CAM+1050~105C,(27)20,80~95
			0x18181818, 0x19191919, 0x1A1A1A1A, 0x1B1B1B1B, 		// CAM+1060~106C,(27)24,96~111
			0x1C1C1C1C, 0x1D1D1D1D, 0x1E1E1E1E, 0x1F1F1F1F, 		// CAM+1070~107C,(27)28,112~127
			0x20202020, 0x21212121, 0x22222222, 0x23232323, 		// CAM+1080~108C,(27)32,128~143
			0x24242424, 0x25252525, 0x26262626, 0x27272727, 		// CAM+1090~109C,(27)36,144~159
			0x28282828, 0x29292929, 0x2A2A2A2A, 0x2B2B2B2B, 		// CAM+10A0~10AC,(27)40,160~175
			0x2C2C2C2C, 0x2D2D2D2D, 0x2E2E2E2E, 0x2F2F2F2F, 		// CAM+10B0~10BC,(27)44,176~191		
			0x30303030, 0x31313131, 0x32323232, 0x33333333, 		// CAM+10C0~10CC,(27)48,192~207
			0x34343434, 0x35353535, 0x36363636, 0x37373737, 		// CAM+10D0~10DC,(27)52,208~223
			0x38383838, 0x39393939, 0x3A3A3A3A, 0x3B3B3B3B, 		// CAM+10E0~10EC,(27)56,224~239		
			0x3C3C3C3C, 0x3D3D3D3D, 0x3E3E3E3E, 0x3F3F3F3F, 		// CAM+10F0~10FC,(27)60,240~255
			0x40404040, 0x41414141, 0x42424242, 0x43434343, 		// CAM+1100~110C,(27)64,256~271
			0x44444444, 0x45454545, 0x46464646, 0x47474747, 		// CAM+1110~111C,(27)68,272~287
			0x48484848, 0x49494949, 0x4A4A4A4A, 0x4B4B4B4B, 		// CAM+1120~112C,(27)72,288~303
			0x4C4C4C4C, 0x4D4D4D4D, 0x4E4E4E4E, 0x4F4F4F4F,		// CAM+1130~113C,(27)76,304~319
			0x50505050, 0x51515151, 0x52525252, 0x53535353, 		// CAM+1140~114C,(27)80,320~335
			0x54545454, 0x55555555, 0x56565656, 0x57575757, 		// CAM+1150~115C,(27)84,336~351
			0x58585858, 0x59595959, 0x5A5A5A5A, 0x5B5B5B5B, 		// CAM+1160~116C,(27)88,352~367
			0x5C5C5C5C, 0x5D5D5D5D, 0x5E5E5E5E, 0x5F5F5F5F, 		// CAM+1170~117C,(27)92,368~383
			0x60606060, 0x61616161, 0x62626262, 0x63636363, 		// CAM+1180~118C,(27)96,384~399
			0x64646464, 0x65656565, 0x66666666, 0x67676767, 		// CAM+1190~119C,(27)100,400~415
			0x68686868, 0x69696969, 0x6A6A6A6A, 0x6B6B6B6B, 		// CAM+11A0~11AC,(27)104,416~431
			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->ae_mode=FRAME_RATE_PRIORITY;					/* QUALITY_PRIORITY, FRAME_RATE_PRIORITY */
	oper_data->pregain_mode=ISP_SENSOR_BOTH;					/* ISP_ONLY, SENSOR_ONLY, ISP_SENSOR_BOTH */
	oper_data->gain_priority=SENSOR_GAIN_PRIORITY;			/* ISP_GAIN_PRIORITY, SENSOR_GAIN_PRIORITY */
	oper_data->enable_cap_shutter_compensate=KAL_TRUE;		/* KAL_TRUE, KAL_FALSE */
	oper_data->shutter_compensate_max=4*BASEGAIN;

	oper_data->isp_pregain_max=1.5*BASEGAIN;                  
	oper_data->sensor_pregain_max=12*BASEGAIN;               
	oper_data->pregain_compensate_max=4*BASEGAIN;               

	oper_data->preview_display_wait_frame=5;       

	oper_data->ae_smooth_upper_bound=140;            
	oper_data->ae_smooth_lower_bound=40;

	oper_data->ae_awb_cal_period=4;       
	oper_data->ae_setting_gain_delay_frame=2;    
	oper_data->ae_setting_shut_delay_frame=1;            
	oper_data->ae_setting_cal_delay_frame=0;            

   oper_data->capture_delay_frame=1;			/* Switch Preview to Capture */
   oper_data->preview_delay_frame=2;			/* Switch Capture to Preview */
	
	oper_data->ae_lowlight_threshold=10;				/* low light threshold of luminance for camera */
	oper_data->ae_lowlight_off_threshold=15;			/* low light turn off threshold of luminance for camera */
	oper_data->ae_video_lowlight_threshold=10;		/* low light threshold of luminance for video */
	oper_data->ae_video_lowlight_off_threshold=15;	/* low light turn off threshold of luminance for video */
	
	oper_data->ae_high_banding_target_enable = KAL_FALSE;	/* Disable banding taeget */
	oper_data->extreme_CT_fixWB_enable = 0;/*enable/disable extreme low and high color temperature to limit to A and D75*/	
	oper_data->outdoorIdx = 120;	/*AE index for outdoor condition,120 means 12ev*/ 
	oper_data->outdoor_fixWB_enable = 0;      /*enable/disable outdoor fix WB*/ 
	oper_data->out_Rgain = 131; 	/*outdoor Rgain*/
	oper_data->out_GRgain = 128; 	/*outdoor GRgain*/
	oper_data->out_Bgain =129; 		/*outdoor Bgain*/
	oper_data->out_GBgain = 128; 	/*outdoor GBgain*/
	
	
#if (defined(HORIZONTAL_CAMERA))
	camera_horizontal_flag=1;
#else
	camera_horizontal_flag=0;
#endif	
}

void set_camera_mode_para(kal_uint8 mode)
{
	kal_uint16 sensor_width,sensor_height;	
	kal_uint16 max_expo_width,max_expo_line;	
	image_sensor_func->get_sensor_size(&sensor_width,&sensor_height);	
	image_sensor_func->get_sensor_period(&max_expo_width, &max_expo_line);
	switch(mode)
	{
		case CAMERA_PARA_PREVIEW_MODE:
			/* isp preview parameter */
			SET_PREPROCESS_PIXEL_LIMIT(0xA0);
			ENABLE_Y_LPF;
			ENABLE_C_LPF;			
			DISABLE_RGB_EDGE_GAIN;		
			apply_camera_autodefect_to_reg(CAMERA_COMP_PREVIEW_NORMAL_SET);											
																								
		break;
		case CAMERA_PARA_CAPTURE_MODE:
			
			SET_PREPROCESS_PIXEL_LIMIT(0xFF);
				/* Check small size capture */
			if ((exposure_window.image_target_width<=(IMAGE_SENSOR_PV_WIDTH>>1))&&
					 (exposure_window.image_target_height<=(IMAGE_SENSOR_PV_HEIGHT>>1))) 
			{
																										
					DISABLE_RGB_EDGE_GAIN;																			
					ENABLE_Y_LPF;				
					ENABLE_C_LPF;	
					
			}
			else
			{
									
					ENABLE_RGB_EDGE_GAIN;										
					DISABLE_Y_LPF;
					DISABLE_C_LPF;									
			}					
					
								
		break;
		case CAMERA_PARA_NIGHT_MODE:

			SET_PREPROCESS_PIXEL_LIMIT(0xA0);
			ENABLE_Y_LPF;
			ENABLE_C_LPF;			
			DISABLE_RGB_EDGE_GAIN;		
			apply_camera_autodefect_to_reg(CAMERA_COMP_PREVIEW_LOWLIGHT_SET);
									
															
		break;
		case CAMERA_PARA_AUTO_LOWLIGHT_MODE:
											
		break;
		case CAMERA_PARA_VIDEO_MODE:
			/* parameter for video */
									
			SET_PREPROCESS_PIXEL_LIMIT(0xA0);
			ENABLE_Y_LPF;
			ENABLE_C_LPF;			
			DISABLE_RGB_EDGE_GAIN;		
			apply_camera_autodefect_to_reg(CAMERA_COMP_PREVIEW_NORMAL_SET);								
																				
																
		break;
		case CAMERA_PARA_AF_NORMAL_MODE:
			SET_PREPROCESS_PIXEL_LIMIT(0xFF);				

			DISABLE_AUTO_DEFECT_ALL;									

			ENABLE_RGB_EDGE_GAIN;
			DISABLE_Y_LPF;
			DISABLE_C_LPF;				
		break;
		case CAMERA_PARA_AF_LOWLIGHT_MODE:
			SET_PREPROCESS_PIXEL_LIMIT(0xFF);				
								
			DISABLE_AUTO_DEFECT_ALL;									

			ENABLE_RGB_EDGE_GAIN;
			DISABLE_Y_LPF;
			DISABLE_C_LPF;				
		break;
	}
}


/********************************************
   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)
{
      kal_uint32 cm_table[3],m[9];
      kal_uint32 i,k,j;
      
      
      /*******************************
      	change to read nvram data 
      ********************************/
      cm_table[0]=camera_para.ISP.reg[39];//REG_ISP_COLOR_MATRIX1;
      cm_table[1]=camera_para.ISP.reg[40];
      cm_table[2]=camera_para.ISP.reg[41];

      for(i=0;i<9;i++){
      	k=i/3;
      	j=(2-(i%3))*8;
      	m[i]=(cm_table[k]>>j)&0xff;	
      }



#if 0
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
#endif

      for(i=0;i<9;i++){
     	if(i%4==0){
     	   m[i]=(m[i]-32)*sat_factor/32+32;	
     	}
     	else{
     	   if(m[i]>=128){
     	   	m[i]=(m[i]-128)*sat_factor/32+128;
     	   }
     	   else{
     	   	m[i]=m[i]*sat_factor/32;
     	   }
     		
	}
      }
      
     
	SET_COLOR_MATRIX1(m[0],m[1],m[2]);
	SET_COLOR_MATRIX2(m[3],m[4],m[5]);
	SET_COLOR_MATRIX3(m[6],m[7],m[8]);

	
}


void set_anti_low_light_para(kal_uint8 aeidx)
{
	
	
	
	if(aeidx>=20){
		//normal 
		reduce_color_matrix(0x20);
		SET_INTERPOLATION_THRE_SM(0x0F);
		apply_camera_autodefect_to_reg(CAMERA_COMP_PREVIEW_NORMAL_SET);	
		REG_ISP_EDGE_GAIN2=0x001F001F;
		
	}else if(aeidx >=15){
		reduce_color_matrix(0x18);
		SET_INTERPOLATION_THRE_SM(0x18);
		apply_camera_autodefect_to_reg(CAMERA_COMP_PREVIEW_LOWLIGHT_SET);	
		REG_ISP_EDGE_GAIN2=0x000F000F;
		
	}else if(aeidx>=10){
		reduce_color_matrix(0x10);
		SET_INTERPOLATION_THRE_SM(0x1f);
		apply_camera_autodefect_to_reg(CAMERA_COMP_PREVIEW_LOWLIGHT_SET);
		REG_ISP_EDGE_GAIN2=0x00080008;
		
	}else if(aeidx>=8){
		reduce_color_matrix(0x08);
		SET_INTERPOLATION_THRE_SM(0x1F);
		apply_camera_autodefect_to_reg(CAMERA_COMP_PREVIEW_LOWLIGHT_SET);
		REG_ISP_EDGE_GAIN2=0x00000000;
	}else{
		
		reduce_color_matrix(0x00);
		SET_INTERPOLATION_THRE_SM(0x1F);
		apply_camera_autodefect_to_reg(CAMERA_COMP_PREVIEW_LOWLIGHT_SET);\
		REG_ISP_EDGE_GAIN2=0x00000000;
	}
	
}


#endif

⌨️ 快捷键说明

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