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

📄 hal_config.c

📁 s1d13716的源码 windiws ce 或8位单片机
💻 C
📖 第 1 页 / 共 3 页
字号:
	HAL_LCD_PARAM   + 0x10,     
	HAL_LCD_PARAM   + 0x1C,     
	HAL_LCD_PARAM   + 0x28,     
	HAL_LCD_PARAM   + 0x32,     
	HAL_LCD_PARAM   + 0x3A,     
	HAL_LCD_PARAM   + 0x41,     
	HAL_LCD_PARAM   + 0x47,     
	HAL_LCD_PARAM   + 0x4C,     
	HAL_LCD_PARAM   + 0x51,     
	HAL_LCD_PARAM   + 0x55, 
	HAL_LCD_PARAM   + 0x5A,     
	HAL_LCD_PARAM   + 0x5F,     
	HAL_LCD_PARAM   + 0x67,     
	HAL_LCD_PARAM   + 0x72,     
	HAL_LCD_PARAM   + 0x7E, 

	//Display control set start
	HAL_LCD_COMMAND + 0xB6,     
	HAL_LCD_PARAM   + 0x7E,     
	HAL_LCD_PARAM   + 0x0A, 
	HAL_LCD_PARAM   + 0x84,     
	HAL_LCD_PARAM   + 0x86,  
	HAL_LCD_PARAM   + 0x82,     

	//Temperature gradients of LCD driver voltage set start
	HAL_LCD_COMMAND + 0xB7,
	HAL_LCD_PARAM   + 0x02,
	HAL_LCD_PARAM   + 0x00,
	HAL_LCD_PARAM   + 0x00,
	HAL_LCD_PARAM   + 0x00,
	HAL_LCD_PARAM   + 0x00,
	HAL_LCD_PARAM   + 0x00,	
	HAL_LCD_PARAM   + 0x1C,
	HAL_LCD_PARAM   + 0x00,
	HAL_LCD_PARAM   + 0x00,	
	HAL_LCD_PARAM   + 0x00,
	HAL_LCD_PARAM   + 0x00,
	HAL_LCD_PARAM   + 0x00,
	HAL_LCD_PARAM   + 0x00,
	HAL_LCD_PARAM   + 0x00,

	//Drive position set start ***************??
	HAL_LCD_COMMAND + 0xBA,     
	HAL_LCD_PARAM   + 0x3F,  
	HAL_LCD_PARAM   + 0x3F, 
	
	//Drive position set start
	HAL_LCD_COMMAND + 0xBB,     
	HAL_LCD_PARAM   + 0x04,  

	//Power control set start
	HAL_LCD_COMMAND + 0xBE,     
	HAL_LCD_PARAM   + 0x69,     
	HAL_LCD_PARAM   + 0x01,

	//sleep out
	HAL_LCD_COMMAND + 0x11,   
	HAL_LCD_DELAY   + 100,  
	
	//normal display mode on
	HAL_LCD_COMMAND + 0x13,   
	
	//Display on
	HAL_LCD_COMMAND + 0x29,
	HAL_LCD_DELAY   + 100,  
	
	//Memory write
	HAL_LCD_COMMAND + 0x2C,
	HAL_LCD_DELAY   + 100, 
	
	//10251 Set end
	HAL_LCD_ENDOFTABLE
    },
    {                       // LCD3 init sequence
        HAL_LCD_ENDOFTABLE
    },

    {                       // S1D13716 init registers
	{ REG0018_POWERSAVE,			0x01 },
	{ REG0014_CLKSRC,				0x00 },
	{ REG0010_PLL0,					0xDD },//this setting is 40M,50M is 0xDD 13M is 0x60
	{ REG0011_PLL1,					0x1C },//this setting is 40M,50M is 0x1C 13M is 0xF0
	{ REG0012_PLL2,					0x20 },
	{ REG0015_SERLCDCLK,			0x41 },//I2C Clock=sysclock/16
	{ REG0014_CLKSRC,				0xB1 },//LCDPCLK=sysclock/24
	{ REG0016_LCDPCLKDIV,			0x00 },
	{ REG0018_POWERSAVE,			0x04 },
 	{ REGFLAG_DELAY,				0xFF },        
	{ REG0070_PWMCTRL0,				0x05 },      
	{ REG007F_PWMWHITECYCLE,		0x3F },      
	{ REG0072_PWMCTRL1,				0x01 }, 
	{ REGFLAG_DELAY,				0x50 },
	{ REG0108_CMCONTROL,			0x01 },//software reset camera mode
	{ REG0108_CMCONTROL,			0x00 },
	{ REG0202_RESIZE,				0x81 },//Reset resizer
	{ REG0202_RESIZE,				0x01 },//Reset resizer
	{ REG0040_LCD1SETTING,			0x03 },//Data bus width 8 bits format 565
	{ REG0044_LCD2SETTING,			0x03 },//Data bus width 8 bits format 565
	{ REG0048_LCD3SETTING,			0x00 },//Not set
	{ REG004E_SCALEUP,				0x00 },//Encode Scale Overlay Disable
	{ REG004C_DISPSETTING,			0x62 },//Overlay with Main  and Overlay is 8 bits and select lcd2
	{ REG0036_LCDTRIG,				0x00 },
	{ REG003C_LCDXFER,				0x00 },//lcd auto transfer disable
	{ REG0248_OIMAGE,				0x10 },//The host output image to overlay 00 to main
	{ REG0216_RYC,					0x05 },//Ryc format is 565
	{ REG0220_YUVRGBXLATE0,			0x05 },//Default value
	{ REG0222_YUVRGBXLATE1,			0x00 },
	{ REG0202_RESIZE,				0x03 },//Reset and enable resizer
	{ REG0204_RESIZESX0,			0x00 },
	{ REG0205_RESIZESX1,			0x00 },
	{ REG0206_RESIZESY0,				0x00 },
	{ REG0207_RESIZESY1,				0x00 },
	{ REG0208_RESIZEEX0,				0x7F },//127
	{ REG0209_RESIZEEX1,				0x00 },
	{ REG020A_RESIZEEY0,				0x7F },//128
	{ REG020B_RESIZEEY1,				0x00 },
	{ REG020C_RESIZEHSCALE,			0x01 },//H-scale
	{ REG020E_RESIZEVSCALE,			0x01 },//V-scale
	{ REG0210_RESIZEOP,				0x00 },//Scale mode is no scale
	{ REG024A_SWIVELVIEW,			0x00 },//Not swivel
	{ REG0224_YUVWRSTART0,			0x00 },//Main window adress
	{ REG0225_YUVWRSTART1,			0x20 },//0x2000 8K
	{ REG0226_YUVWRSTART2,			0x00 },//
	{ REG0240_OSADDR0,				0x00 },//Overlay adress
	{ REG0241_OSADDR1,				0xC0 },//0xc000 so the main window size is 0xc000-0x2000
	{ REG0242_OSADDR2,				0x00 },
	{ REG0244_OHRES,				0x7F },//Overlay width
	{ REG0246_OVRES,				0x7F },//Overlay height
	{ REG0212_MEMHORZRES,			0x7F },//Actual Horizontal Resolution in Pixels -1. jpeg encode use
	{ REG0214_MEMVERTRES,			0x7F },//159
	{ REG0228_XOFFSET0,				0x00 },//Main window's position in overlay
	{ REG0229_XOFFSET1,				0x00 },
	{ REG022A_YOFFSET0,				0x00 },
	{ REG022B_YOFFSET1,				0x00 },
	{ REG0100_CMCLK,				0x01 },//camera clock setting.1 is 1/4 sysclock
	{ REG0102_CMSIGNAL,				0x02 },
       { REG0104_CMMODE0,				0x08 },
       { REG0106_CMMODE1,				0x00 },
	{ REGFLAG_ENDOFTABLE,			0x00 }
    },
    {
	// VGA MODE FOR OV7645FB
	{ 0x12, 0x80 },
	{ 0x03, 0xa4 },			//0x04----black & white//0xa4----normal
	{ 0x04, 0x30 },
	{ 0x05, 0x88 },
	{ 0x06, 0x60 },
	{ 0x11, 0x00 },			//{ 0x11, 0x00 }, //;value 01 for 15 fps
	{ 0x12, 0x15 },
	{ 0x13, 0xa3 },
	{ 0x14, 0x14 },
	{ 0x15, 0x14 },
	{ 0x1f, 0x41 },
	{ 0x20, 0xd0 },
	{ 0x23, 0xde },
	{ 0x24, 0xa0 },
	{ 0x25, 0x80 },
	{ 0x26, 0xb2 },
	{ 0x27, 0xe2 },			//0xe2----black & white//0xe0----normal
	{ 0x28, 0x20 },
	{ 0x2a, 0x01 },
	{ 0x2b, 0x00 },
	{ 0x2d, 0x05 },
	{ 0x2f, 0x9d },
	{ 0x30, 0x00 },
	{ 0x31, 0xc4 },
	{ 0x60, 0x86 },
	{ 0x61, 0xe0 },
	{ 0x62, 0x88 },
	{ 0x63, 0x11 },
	{ 0x64, 0x89 },
	{ 0x65, 0x00 },
	{ 0x67, 0x94 },
	{ 0x68, 0x7a },
	{ 0x69, 0x08 },
	{ 0x6c, 0x11 },			//0xFF----black & white//0x11----normal
	{ 0x6d, 0x33 },			//0xFF----black & white//0x33----normal
	{ 0x6e, 0x22 },			//0xFF----black & white//0x22----normal
	{ 0x6f, 0x00 },			
	{ 0x74, 0x20 },			//{ 0x74, 0x60 },  low light use 0x60
	{ 0x75, 0x0e },			//{ 0x75, 0x06 },
	{ 0x77, 0xc4 },			//{ 0x77, 0xb5 },
	//{ 0x79, 0x80 },			//set----black & white//remove----normal
	//{ 0x7a, 0x80 },			//set----black & white//remove----normal
	{ REGFLAG_ENDOFTABLE,0xFFFF}	//for end
   }
};
#endif

#ifdef S1D10253
HAL_STRUCT HAL_STRUCT_NAME =
{
    HALCHIPID" HAL EXE",    // HAL ID string
    "\x00",				// Configuration description
    "\x01" "6 SLPIN 95\x00\x02" "2 DISOFF AE\x00\x03" "DISCTL\x00\x0F" "13 DATCTL BC\x00\x12" "8 PSET 75\x00\x15" "9 CSET 15\x00\x1A" "7 SLPOUT\x00\x1BPAUSE\x00\x1C" "1 DISON AF\x00\x1DPAUSE\x00\x1E" "14 RAMWR 5C\x00",  // Parallel LCD1 strings pool
    "\x01" "6 SLPIN 95\x00\x02" "2 DISOFF AE\x00\x03" "DISCTL\x00\x0F" "13 DATCTL BC\x00\x12" "8 PSET 75\x00\x15" "9 CSET 15\x00\x1A" "7 SLPOUT\x00\x1BPAUSE\x00\x1C" "1 DISON AF\x00\x1DPAUSE\x00\x1E" "14 RAMWR 5C\x00",  // Parallel LCD2 strings pool
    "\x01" "disctl\x00\x05" "com scan\x00\abug fix\x00\bpageset\x00\vcolset\x00\x0E" "dactl\x00\x12" "disinv\x00\x13slpout\x00\x14power\x00\x17volume\x00\x1A" "dison\x00\x1Bramwr\x00",  // Serial LCD3 strings pool
    sizeof(HAL_STRUCT),	// Sizeof this structure
    0x0000,			// CRC of the rest of structure

    HALCHIPID,		// Chip ID
    0x1234,			// Endian detect (LE=0x1234)
    0,					// Reserved for alignment

    32768L,			// CLKI frequency (in Hz)
    32768L,			// Internal OSC frequency (in Hz)

    0x01000000,             // Physical base memory address
    0x00000000,             // Physical register address offset
    0x00000000,             // Physical memory address offset

    640, 480,			// Camera1 expected image size

    81920L,			// Required VRAM (in bytes)
    0,					// Hal Information flags//fNO_INIT_I2C

    {                       // LCD1 init sequence
        HAL_LCD_ENDOFTABLE
    },
    {                       // LCD2 init sequence//NEW

	//Soft reset
	HAL_LCD_DELAY+ 0x100,
	HAL_LCD_COMMAND + 0x2C,  
	HAL_LCD_DELAY   + 0x100,
	
	HAL_LCD_COMMAND + 0x02,		//internal oscillation on
	HAL_LCD_COMMAND + 0x01,		//DIV2=0,clock=OSC(DB2)	
	
	HAL_LCD_COMMAND + 0x26,		//DCDC,AMP on
	HAL_LCD_COMMAND + 0x01,		//DCDC1 on
	HAL_LCD_COMMAND + 0x26,
	HAL_LCD_COMMAND + 0x09,		//AMP on
	HAL_LCD_COMMAND + 0x26,
	HAL_LCD_COMMAND + 0x0B,		//DCDC2	on
	HAL_LCD_COMMAND + 0x26,
	HAL_LCD_COMMAND + 0x0F,		//DCDC3 on
	
	
	HAL_LCD_COMMAND + 0x10,		//duty=1/160,SDIR=0,SWP=0
	HAL_LCD_COMMAND + 0x22,		//SWP=0	
	
	HAL_LCD_COMMAND + 0x20,		//DC-DC
	HAL_LCD_COMMAND + 0x05,
	
	HAL_LCD_COMMAND + 0x22,		//Bias=1/5
	HAL_LCD_COMMAND + 0x33,
	
	HAL_LCD_COMMAND + 0x24,		//initial status,DCDC clock division set:fPCK=fOSC/16
	HAL_LCD_COMMAND + 0x22,

	HAL_LCD_COMMAND + 0x28,		//temperature compensation TCS=00:0.00%degC
	HAL_LCD_COMMAND + 0x11,
//notice-------------------------------------------------	
	HAL_LCD_COMMAND + 0x2A,		//contrast control:
	HAL_LCD_COMMAND + 0x3F,		//normal and partial mode0:1/7bias,<0x6D???1/6 bias,<0xA9?
	HAL_LCD_COMMAND + 0x2B,
	HAL_LCD_COMMAND + 0x3F,		//partial mode1:1/7bias,<0x6D,1/6bias,<0xA9??
		
	HAL_LCD_COMMAND + 0x30,		//GSM:00,65536 color,DSG:0,dummy SG is 1 SG,SGF:0,SG Frame inversion off,
	HAL_LCD_COMMAND + 0x0F,		//SGM:0,SG inversion off,SGP:11
	
	HAL_LCD_COMMAND + 0x32,		//INC:000,every subgroup row vector increment,VEC:0,normal sequence
	HAL_LCD_COMMAND + 0x0E,

	
	HAL_LCD_COMMAND + 0x34,		//N-block inversion:
	HAL_LCD_COMMAND + 0x90,		//FIM:0,FIP:0,N-block inversion:0
	
	HAL_LCD_COMMAND + 0x40,		//MDI:0,memory data inversion off,
	HAL_LCD_COMMAND + 0x00,		//X/Y:0,Y address counter mode
	
	HAL_LCD_COMMAND + 0x42,		//X address set:COM0-COM127
	HAL_LCD_COMMAND + 0x00,
	HAL_LCD_COMMAND + 0x9F,
	
	HAL_LCD_COMMAND + 0x43,		//Y address set:SEG0-COM127
	HAL_LCD_COMMAND + 0x08,
	HAL_LCD_COMMAND + 0x87,
	
	HAL_LCD_COMMAND + 0x45,		//RSK:00,no RAM skip
	HAL_LCD_COMMAND + 0x00,
	
	HAL_LCD_COMMAND + 0x53,		//SDP:00,normal display
	HAL_LCD_COMMAND + 0x00,		//if this flag:01,display reverse,not change DDRAM
	
	HAL_LCD_COMMAND + 0x55,		//PT:0,partial display off,PDM:0,partial mode0 selction
	HAL_LCD_COMMAND + 0x00,
	
	HAL_LCD_COMMAND + 0x56,		//partial start line:line 0
	HAL_LCD_COMMAND + 0x00,
	
	HAL_LCD_COMMAND + 0x57,		//partial end line:line 159
	HAL_LCD_COMMAND + 0x9F,
	
	HAL_LCD_COMMAND + 0x59,		//area scroll set
	HAL_LCD_COMMAND + 0x00,		//SCM:00,entire display,01,upper,10,lower,11,center
	HAL_LCD_COMMAND + 0x00,		//scroll area start line:line 0
	HAL_LCD_COMMAND + 0x9F,		//scroll area end line:line 159
	HAL_LCD_COMMAND + 0x00,		//lower fixed number:0

	
	HAL_LCD_COMMAND + 0x5A,		//scroll start line:line 0
	HAL_LCD_COMMAND + 0x00,

	HAL_LCD_COMMAND + 0x51,		//display on

	//10253 Set end
	HAL_LCD_ENDOFTABLE
    },
    {                       // LCD3 init sequence
        HAL_LCD_ENDOFTABLE
    },

    {                       // S1D13716 init registers
	{ REG0018_POWERSAVE,			0x01 },
	{ REG0014_CLKSRC,				0x00 },
	{ REG0010_PLL0,					0xDD },//this setting is 40M,50M is 0xDD
	{ REG0011_PLL1,					0x1C },//this setting is 40M,50M is 0x1C
	{ REG0012_PLL2,					0x20 },
	{ REG0015_SERLCDCLK,			0x41 },//I2C Clock=sysclock/16
	{ REG0014_CLKSRC,				0xB1 },//LCDPCLK=sysclock/24
	{ REG0016_LCDPCLKDIV,			0x00 },
	{ REG0018_POWERSAVE,			0x04 },
 	{ REGFLAG_DELAY,				0xFF },        
	{ REG0070_PWMCTRL0,				0x05 },      
	{ REG007F_PWMWHITECYCLE,		0x3F },      
	{ REG0072_PWMCTRL1,				0x01 }, 
	{ REGFLAG_DELAY,				0x50 },
	{ REG0108_CMCONTROL,			0x01 },//software reset camera mode
	{ REG0108_CMCONTROL,			0x00 },
	{ REG0202_RESIZE,				0x81 },//Reset resizer
	{ REG0202_RESIZE,				0x01 },//Reset resizer
	{ REG0040_LCD1SETTING,			0x03 },//Data bus width 16 bits format 565
	{ REG0044_LCD2SETTING,			0x03 },//Data bus width 16 bits format 565
	{ REG0048_LCD3SETTING,			0x00 },//Not set
	{ REG004E_SCALEUP,				0x00 },//Encode Scale Overlay Disable
	{ REG004C_DISPSETTING,			0x62 },//Overlay with Main  and Overlay is 8 bits and select lcd2
	{ REG0036_LCDTRIG,				0x00 },
	{ REG003C_LCDXFER,				0x00 },//lcd auto transfer disable
	{ REG0248_OIMAGE,				0x10 },//The host output image to overlay 00 to main
	{ REG0216_RYC,					0x05 },//Ryc format is 565
	{ REG0220_YUVRGBXLATE0,			0x05 },//Default value
	{ REG0222_YUVRGBXLATE1,			0x00 },
	{ REG0202_RESIZE,				0x03 },//Reset and enable resizer
	{ REG0204_RESIZESX0,			0x00 },
	{ REG0205_RESIZESX1,			0x00 },
	{ REG0206_RESIZESY0,				0x00 },
	{ REG0207_RESIZESY1,				0x00 },
	{ REG0208_RESIZEEX0,				0x7F },//127
	{ REG0209_RESIZEEX1,				0x00 },
	{ REG020A_RESIZEEY0,				0x9F },//160
	{ REG020B_RESIZEEY1,				0x00 },
	{ REG020C_RESIZEHSCALE,			0x01 },//H-scale
	{ REG020E_RESIZEVSCALE,			0x01 },//V-scale
	{ REG0210_RESIZEOP,				0x00 },//Scale mode is no scale
	{ REG024A_SWIVELVIEW,			0x00 },//Not swivel
	{ REG0224_YUVWRSTART0,			0x00 },//Main window adress
	{ REG0225_YUVWRSTART1,			0x20 },//0x2000 8K
	{ REG0226_YUVWRSTART2,			0x00 },//
	{ REG0240_OSADDR0,				0x00 },//Overlay adress
	{ REG0241_OSADDR1,				0xC0 },//0xc000 so the main window size is 0xc000-0x2000
	{ REG0242_OSADDR2,				0x00 },
	{ REG0244_OHRES,				0x7F },//Overlay width
	{ REG0246_OVRES,				0x9F },//Overlay height
	{ REG0212_MEMHORZRES,			0x7F },//Actual Horizontal Resolution in Pixels -1. jpeg encode use
	{ REG0214_MEMVERTRES,			0x9F },//159
	{ REG0228_XOFFSET0,				0x00 },//Main window's position in overlay
	{ REG0229_XOFFSET1,				0x00 },
	{ REG022A_YOFFSET0,				0x00 },
	{ REG022B_YOFFSET1,				0x00 },
	{ REG0100_CMCLK,				0x01 },//camera clock setting.1 is 1/4 sysclock
	{ REG0102_CMSIGNAL,				0x02 },
       { REG0104_CMMODE0,				0x08 },
       { REG0106_CMMODE1,				0x00 },
	{ REGFLAG_ENDOFTABLE,			0x00 }
    },
    {
	// VGA MODE FOR OV7645FB
	{ 0x12, 0x80 },
	{ 0x03, 0xa4 },			//0x04----black & white//0xa4----normal
	{ 0x04, 0x30 },
	{ 0x05, 0x88 },
	{ 0x06, 0x60 },
	{ 0x11, 0x00 },			//{ 0x11, 0x00 }, //;value 01 for 15 fps
	{ 0x12, 0x15 },
	{ 0x13, 0xa3 },
	{ 0x14, 0x14 },
	{ 0x15, 0x14 },
	{ 0x1f, 0x41 },
	{ 0x20, 0xd0 },
	{ 0x23, 0xde },
	{ 0x24, 0xa0 },
	{ 0x25, 0x80 },
	{ 0x26, 0xb2 },
	{ 0x27, 0xe2 },			//0xe2----black & white//0xe0----normal
	{ 0x28, 0x20 },
	{ 0x2a, 0x01 },
	{ 0x2b, 0x00 },
	{ 0x2d, 0x05 },
	{ 0x2f, 0x9d },
	{ 0x30, 0x00 },
	{ 0x31, 0xc4 },
	{ 0x60, 0x86 },
	{ 0x61, 0xe0 },
	{ 0x62, 0x88 },
	{ 0x63, 0x11 },
	{ 0x64, 0x89 },
	{ 0x65, 0x00 },
	{ 0x67, 0x94 },
	{ 0x68, 0x7a },
	{ 0x69, 0x08 },
	{ 0x6c, 0x11 },			//0xFF----black & white//0x11----normal
	{ 0x6d, 0x33 },			//0xFF----black & white//0x33----normal
	{ 0x6e, 0x22 },			//0xFF----black & white//0x22----normal
	{ 0x6f, 0x00 },			
	{ 0x74, 0x20 },			//{ 0x74, 0x60 },  low light use 0x60
	{ 0x75, 0x0e },			//{ 0x75, 0x06 },
	{ 0x77, 0xc4 },			//{ 0x77, 0xb5 },
	//{ 0x79, 0x80 },			//set----black & white//remove----normal
	//{ 0x7a, 0x80 },			//set----black & white//remove----normal
	{ REGFLAG_ENDOFTABLE,0xFFFF}	//for end
   }
};
#endif

⌨️ 快捷键说明

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