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

📄 panel.c

📁 VC0558 backend IC LCD panel drive program
💻 C
📖 第 1 页 / 共 5 页
字号:

	{0x10,	0x02,	0},

	{0x40,	0x01,	0},
	{0x34,    0x98,       0},
	{0x55,    0x0,       0},
	{0x2a,    0xd4,25},

	{0x28,	0x01,	0},
	{0x2e,0xffff,0},
	
	{0x45,	0x00,	10},
	
	{0,0,0},
	{0,0,0},
	
	{0x53,0,0},
	{0x24,0x22,25},
	{0x30,0x0d,0},
	{0x32,0x0c,0},
	
	{0x42,0x0,0},
	{0xffff,0x7f,0},
		
	{0x43,0x0,0},
	{0xffff,0x7f,0},
	
	{0x2b,0x78,0},
	
	{0x59,0x0,0},
	{0xffff,0x0,0},
	{0xffff,0x7f,0},
	{0xffff,0x0,0},

	{0x5a,0x0,0},
	{0x51,0xffff,0}
};

V558_LCDIFPARM Panel_LcdIF =
{
	{ 128,	128	},		//size
	{0x0, 0x0},				//mp
	{0x0, 0x0},				//sp
	0x43, 0x42, 0x0, 0x0, 0X0, 0x0,	//hsa, hea, hsxa, hsya, hexa, heya
	0x708a,				//lc	//old: 108a
	0x100,				//dpad
	0x0460, 0x7CA0,		//wrcycle, rdcycle
	0,					//rsPolarity
	0x4,
	5,					//index select
	0x51,				//dispadr
	//LTS180S3_HF1_PANEL,
	UG_12D181_Panel,		//paneltype
	0,					//reserve
	{
		0,		0,		1,		4,		9,		0x10,	0x1a,	0x27,	0x37,
		0x4a,	0x5f,	0x77,	0x91,	0xac,	0xc8,	0xe4,	0xff
	},					//gamma R;
	{
		0,		0,		1,		4,		9,		0x10,	0x1a,	0x27,	0x37,
		0x4a,	0x5f,	0x77,	0x91,	0xac,	0xc8,	0xe4,	0xff
	},					//gamma G;
	{
		0,		0,		1,		4,		9,		0x10,	0x1a,	0x27,	0x37,
		0x4a,	0x5f,	0x77,	0x91,	0xac,	0xc8,	0xe4,	0xff
	},					//gamma B
	{0xff, 0x0, 0x0, 0}
};

const V558_PANELINFO	Panel_Info =
{
	"Lanser UG_12D181_Panel",		//description

	&Panel_LcdIF,

	{sizeof(Panel_powon) / sizeof(V558_PANELREGVALUE), Panel_powon},
	{0, NULL},
	{0, NULL},
	{0, NULL},
	{0, NULL},
	{0, NULL},
//	{sizeof(Panel_sleep) / sizeof(V558_PANELREGVALUE), Panel_sleep},
//	{sizeof(Panel_wakefs) / sizeof(V558_PANELREGVALUE), Panel_wakefs},
//	{sizeof(Panel_stdby) / sizeof(V558_PANELREGVALUE), Panel_stdby},
//	{sizeof(Panel_wakefstd) / sizeof(V558_PANELREGVALUE), Panel_wakefstd}
	V558_LcdPanelSetReg,
	NULL
};
#endif
#if	UG_120114A
const V558_PANELWRITEINFO Panel_WriteType=
{
	Low8,
	RegRsLow8,
	Lcd_Multi16
};
const V558_PANELREGVALUE Panel_powon[] =
{
	{0,0 ,0},
{0x2c,0,25},
{0x02,0x01,25},
{0x20,0x05,0},
{0x22,0x11,0},
{0x26,0x0f,50},
{0x28,0x01,0},
//{0x10,0x22,0},
{0x10,0x26,0},
{0x40,0x01,0},
{0x34,0x1f,0},
{0x30,0x1f,0},
{0x32,0x0e,0},
{0x24,0x00,0},
//{0x2a,0xa6,0},
{0x2a,0xc5,0},
{0xeb,0,0},
{0x51,0,25},
};

V558_LCDIFPARM Panel_LcdIF =
{
 { 128+4, 160+2 },  //size
 {0x0, 0x0},    //mp
 {0x0, 0x0},    //sp
 0x43, 0x42, 0x0, 0x0, 0X0, 0x0, //hsa, hea, hsxa, hsya, hexa, heya
 0x708a,    //lc //old: 108a
 0x100,    //dpad
 0x0460, 0x7CA0,  //wrcycle, rdcycle
 0,     //rsPolarity
 0x0,    //dmap
 5,     //index select
 0x51,    //dispadr
 UG_120114A_Panel,  //paneltype
 0,     //reserve
 {
  0,  0,  1,  4,  9,  0x10, 0x1a, 0x27, 0x37,
  0x4a, 0x5f, 0x77, 0x91, 0xac, 0xc8, 0xe4, 0xff
 },     //gamma R;
 {
  0,  0,  1,  4,  9,  0x10, 0x1a, 0x27, 0x37,
  0x4a, 0x5f, 0x77, 0x91, 0xac, 0xc8, 0xe4, 0xff
 },     //gamma G;
 {
  0,  0,  1,  4,  9,  0x10, 0x1a, 0x27, 0x37,
  0x4a, 0x5f, 0x77, 0x91, 0xac, 0xc8, 0xe4, 0xff
 },     //gamma B
	{0xff, 0x0, 0x0, 0}		//background color
};

const V558_PANELINFO	Panel_Info =
{
	"Lanser UG_12D181_Panel",		//description

	&Panel_LcdIF,
	{sizeof(Panel_powon) / sizeof(V558_PANELREGVALUE), Panel_powon},
	{0, NULL},
	{0, NULL},
	{0, NULL},
	{0, NULL},
	{0, NULL},
//	{sizeof(Panel_sleep) / sizeof(V558_PANELREGVALUE), Panel_sleep},
//	{sizeof(Panel_wakefs) / sizeof(V558_PANELREGVALUE), Panel_wakefs},
//	{sizeof(Panel_stdby) / sizeof(V558_PANELREGVALUE), Panel_stdby},
//	{sizeof(Panel_wakefstd) / sizeof(V558_PANELREGVALUE), Panel_wakefstd}
	V558_LcdPanelSetReg,
	NULL
};
const V558_PANELWRITEINFO SubPanel_WriteType=
{
	Low8,
	RegRsLow8,
	Lcd_Multi16
};
const V558_PANELREGVALUE SubPanel_powon[] =
{
	{0,0 ,0},
{0x2c,0,25},
{0x02,0x01,25},
{0x20,0x05,0},
{0x22,0x11,0},
{0x26,0x0f,50},
{0x28,0x01,0},
//{0x10,0x22,0},
{0x10,0x26,0},
{0x40,0x01,0},
{0x34,0x1f,0},
{0x30,0x1f,0},
{0x32,0x0e,0},
{0x24,0x00,0},
//{0x2a,0xa6,0},
{0x2a,0xc5,0},
{0xeb,0,0},
{0x51,0,25},
};

V558_LCDIFPARM SubPanel_LcdIF =
{
 { 128+4, 160+2 },  //size
 {0x0, 0x0},    //mp
 {0x0, 0x0},    //sp
 0x43, 0x42, 0x0, 0x0, 0X0, 0x0, //hsa, hea, hsxa, hsya, hexa, heya
 0x708a,    //lc //old: 108a
 0x100,    //dpad
 0x0460, 0x7CA0,  //wrcycle, rdcycle
 0,     //rsPolarity
 0x0,    //dmap
 5,     //index select
 0x51,    //dispadr
 UG_120114A_Panel,  //paneltype
 0,     //reserve
 {
  0,  0,  1,  4,  9,  0x10, 0x1a, 0x27, 0x37,
  0x4a, 0x5f, 0x77, 0x91, 0xac, 0xc8, 0xe4, 0xff
 },     //gamma R;
 {
  0,  0,  1,  4,  9,  0x10, 0x1a, 0x27, 0x37,
  0x4a, 0x5f, 0x77, 0x91, 0xac, 0xc8, 0xe4, 0xff
 },     //gamma G;
 {
  0,  0,  1,  4,  9,  0x10, 0x1a, 0x27, 0x37,
  0x4a, 0x5f, 0x77, 0x91, 0xac, 0xc8, 0xe4, 0xff
 },     //gamma B
	{0xff, 0x0, 0x0, 0}		//background color
};

const V558_PANELINFO	SlavePanel_Info =
{
	"Lanser UG_12D181_Panel",		//description

	&SubPanel_LcdIF,
	{sizeof(SubPanel_powon) / sizeof(V558_PANELREGVALUE), SubPanel_powon},
	{0, NULL},
	{0, NULL},
	{0, NULL},
	{0, NULL},
	{0, NULL},
//	{sizeof(Panel_sleep) / sizeof(V558_PANELREGVALUE), Panel_sleep},
//	{sizeof(Panel_wakefs) / sizeof(V558_PANELREGVALUE), Panel_wakefs},
//	{sizeof(Panel_stdby) / sizeof(V558_PANELREGVALUE), Panel_stdby},
//	{sizeof(Panel_wakefstd) / sizeof(V558_PANELREGVALUE), Panel_wakefstd}
	V558_LcdSubPanelSetReg,
	NULL
};
#endif

#if	LP_8937_A_M16
const V558_PANELWRITEINFO Panel_WriteType=
{
	Low8,
	RegRsHigh16,
	Lcd_Multi16
};


const V558_PANELREGVALUE Panel_wakefstd[] =
{
	{0x9,	0x0,	100},
	{0x8,	0x3,	0}
};

const V558_PANELREGVALUE Panel_stdby[] =
{
	{0x8,	0x0,	0},
	{0x9,	0x2,	200},
	{0x9,	0x1,	0},
};
const V558_PANELREGVALUE Panel_wakefs[] =
{
	{0x9,	0x0,	100},
	{0x8,	0x3,	0},
};
const V558_PANELREGVALUE Panel_sleep[] =
{
	{0x8,	0x0,	0},
	{0x9,	0x2,	0},
};
const V558_PANELREGVALUE Panel_powon[] =
{	
				//  WrIndex 6 times
	{0,     0,   0},
	{0,     0,   0},
	{0,     0,   0},
	{0x2,	0x0411,	0},	//  software reset
	{0x3,	0x1030,	0},
	
	{0x1,	0x0300,	0},	//use-state setting
	{0x2,	0x0011,	0},
	{0xb,	0x0008,	0},	//frame cycle control register,
	
	{0x30,	0x0300,	0},	//grayscale palette control registers30~3fh
	{0x31,	0x0906,	0},
	{0x32,	0x0f0c,	0},
	{0x33,	0x1412, 0},
	{0x34,	0x1816,	0},
	{0x35,	0x1c1a,	0},
	{0x36,	0x201e,	0},
	{0x37,	0x2422,	0},
	{0x38,	0x2625,	0},
	{0x39,	0x2827,	0},
	{0x3a,	0x2a29,	0},
	{0x3b,	0x2c2b,	0},
	{0x3c,	0x2e2d,	0},
	{0x3d,	0x302f,	0},
	{0x3e,	0x3231,	0},
	{0x3f,	0x3433,	0},
	
	{0x9,	0x0,	10},	// normal mode
	
	{0x04,	0x7f8f,	0},		// contrast		
	{0x05,	0x0030,	0},		// scan mode
	{0x11,	0,	0},
	{0x13,	0x0,	20},		// sub_duty driving position register
	{0x14,	0x7f00,	20},
	{0x07,	0x0002,	0},
	{0x0b,	0x0008,	0},
	{0x17,	0x7f00,	0},
	{0x16,	0x7f00,	0},
	//{0x08,	0x0003,	0},	
	//{0x17,	0x7f00,	0},
	//{0x16,	0x7f00,	0},
	{0x21,	0,	100},
	{0x08,	0x0003,	0},
	//{0x21,	0,	0},
};
const V558_PANELREGVALUE Panel_powoff[] =
{
	{0x8,	0x0, 	0},
	{0x9,	0x2,	200},
	{0x9,	0x1,	60},

};

V558_LCDIFPARM Panel_LcdIF =
{
	{ 128,	128	},	//size
	{0, 0},			//mp
	{0, 0},			//sp
	0x21, 0, 0, 0, 0, 0,	//hsa, hea, hsxa, hsya, hexa, heya
	0x668c,			//lc
	0x100,			//dpad
	0x460, 0xce0,		//wrcycle, rdcycle
	0,					//rsPolarity
	0x0,				//dmap
	0x1,				//index select
	0x22,			//dispadr
	LP8937_A_PANEL,		//paneltype
	0,					//reserve
	{
		0,		0,		1,		4,		9,		0x10,	0x1a,	0x27,	0x37,
		0x4a,	0x5f,	0x77,	0x91,	0xac,	0xc8,	0xe4,	0xff
	},					//gamma R;
	{
		0,		0,		1,		4,		9,		0x10,	0x1a,	0x27,	0x37,
		0x4a,	0x5f,	0x77,	0x91,	0xac,	0xc8,	0xe4,	0xff
	},					//gamma G;
	{
		0,		0,		1,		4,		9,		0x10,	0x1a,	0x27,	0x37,
		0x4a,	0x5f,	0x77,	0x91,	0xac,	0xc8,	0xe4,	0xff
	},					//gamma B
	{0xff, 0x0, 0x0, 0}		//background color
};

const V558_PANELINFO	Panel_Info =
{
	"PHILIPS LP8937_A",		//description

	&Panel_LcdIF,
	{sizeof(Panel_powon) / sizeof(V558_PANELREGVALUE), Panel_powon},
	{sizeof(Panel_powoff) / sizeof(V558_PANELREGVALUE), Panel_powoff},
	{sizeof(Panel_sleep) / sizeof(V558_PANELREGVALUE), Panel_sleep},
	//{0, NULL },
	{sizeof(Panel_wakefs) / sizeof(V558_PANELREGVALUE), Panel_wakefs},
	{sizeof(Panel_stdby) / sizeof(V558_PANELREGVALUE), Panel_stdby},
	{sizeof(Panel_wakefstd) / sizeof(V558_PANELREGVALUE), Panel_wakefstd},
	V558_LcdPanelSetReg,
	NULL
};
#endif
#if	LP_8937_A_M8
const V558_PANELWRITEINFO Panel_WriteType=
{
	Low8,
	RegRsHigh16,
	Lcd_Multi8
};


const V558_PANELREGVALUE Panel_wakefstd[] =
{
	{0x9,	0x0,	100},
	{0x8,	0x3,	0}
};

const V558_PANELREGVALUE Panel_stdby[] =
{
	{0x8,	0x0,	0},
	{0x9,	0x2,	200},
	{0x9,	0x1,	0},
};
const V558_PANELREGVALUE Panel_wakefs[] =
{
	{0x9,	0x0,	100},
	{0x8,	0x3,	0},
};
const V558_PANELREGVALUE Panel_sleep[] =
{
	{0x8,	0x0,	0},
	{0x9,	0x2,	0},
};
const V558_PANELREGVALUE Panel_powon[] =
{	
				//  WrIndex 6 times
	{0,     0,   0},
	{0,     0,   0},
	{0,     0,   0},
	{0x2,	0x0411,	0},	//  software reset
	{0x3,	0x1030,	0},
	
	{0x1,	0x0300,	0},	//use-state setting
	{0x2,	0x0011,	0},
	{0xb,	0x0008,	0},	//frame cycle control register,
	
	{0x30,	0x0300,	0},	//grayscale palette control registers30~3fh
	{0x31,	0x0906,	0},
	{0x32,	0x0f0c,	0},
	{0x33,	0x1412, 0},
	{0x34,	0x1816,	0},
	{0x35,	0x1c1a,	0},
	{0x36,	0x201e,	0},
	{0x37,	0x2422,	0},
	{0x38,	0x2625,	0},
	{0x39,	0x2827,	0},
	{0x3a,	0x2a29,	0},
	{0x3b,	0x2c2b,	0},
	{0x3c,	0x2e2d,	0},
	{0x3d,	0x302f,	0},
	{0x3e,	0x3231,	0},
	{0x3f,	0x3433,	0},
	
	{0x9,	0x0,	10},	// normal mode
	
	{0x04,	0x7f8f,	0},		// contrast		
	{0x05,	0x0030,	0},		// scan mode
	{0x11,	0,	0},
	{0x13,	0x0,	20},		// sub_duty driving position register
	{0x14,	0x7f00,	20},
	{0x07,	0x0002,	0},
	{0x0b,	0x0008,	0},
	{0x17,	0x7f00,	0},
	{0x16,	0x7f00,	0},
	//{0x08,	0x0003,	0},	
	//{0x17,	0x7f00,	0},
	//{0x16,	0x7f00,	0},
	{0x21,	0,	100},
	{0x08,	0x0003,	0},
	//{0x21,	0,	0},
};
const V558_PANELREGVALUE Panel_powoff[] =
{
	{0x8,	0x0, 	0},
	{0x9,	0x2,	200},
	{0x9,	0x1,	60},

};

V558_LCDIFPARM Panel_LcdIF =
{
	{ 128,	128	},	//size
	{0, 0},			//mp
	{0, 0},			//sp
	0x21, 0, 0, 0, 0, 0,	//hsa, hea, hsxa, hsya, hexa, heya
	0x668c,			//lc
	0x100,			//dpad
	0x460, 0xce0,		//wrcycle, rdcycle
	0,					//rsPolarity
	0x4,
	0x3,
	0x22,			//dispadr
	LP8937_A_PANEL,		//paneltype
	0,					//reserve
	{
		0,		0,		1,		4,		9,		0x10,	0x1a,	0x27,	0x37,
		0x4a,	0x5f,	0x77,	0x91,	0xac,	0xc8,	0xe4,	0xff
	},					//gamma R;
	{
		0,		0,		1,		4,		9,		0x10,	0x1a,	0x27,	0x37,
		0x4a,	0x5f,	0x77,	0x91,	0xac,	0xc8,	0xe4,	0xff
	},					//gamma G;
	{
		0,		0,		1,		4,		9,		0x10,	0x1a,	0x27,	0x37,
		0x4a,	0x5f,	0x77,	0x91,	0xac,	0xc8,	0xe4,	0xff
	},					//gamma B
	{0xff, 0x0, 0x0, 0}		//background color
};

const V558_PANELINFO	Panel_Info =
{
	"PHILIPS LP8937_A",		//description

	&Panel_LcdIF,
	{sizeof(Panel_powon) / sizeof(V558_PANELREGVALUE), Panel_powon},
	{sizeof(Panel_powoff) / sizeof(V558_PANELREGVALUE), Panel_powoff},
	{sizeof(Panel_sleep) / sizeof(V558_PANELREGVALUE), Panel_sleep},
	//{0, NULL },
	{sizeof(Panel_wakefs) / sizeof(V558_PANELREGVALUE), Panel_wakefs},
	{sizeof(Panel_stdby) / sizeof(V558_PANELREGVALUE), Panel_stdby},
	{sizeof(Panel_wakefstd) / sizeof(V558_PANELREGVALUE), Panel_wakefstd},
	V558_LcdPanelSetReg,
	NULL
};
#endif
#if	CV90_K2817_SSD1781
const V558_PANELWRITEINFO Panel_WriteType=
{
	Low8,
	RegRsHigh8,
	Lcd_Multi8
};

const V558_PANELREGVALUE Panel_powon[] =
{	
				//  WrIndex 6 times
	{0xd1,  0,   	0},
	{0x20,  0xf,	0},
	
	{0x81,  	0x23,   	0},
	{0xffff,	5,    	0},
	
	{0xfb,	0x05,	0},
	
	{0xf2,	0x06,	0},
	{0xffff,	0x06,	0},
	
	{0xbc,	0x0,	0},
	{0xffff,	0x0,	0},
	{0xffff,	0,	0},
	
	{0x15,	0x0,	0},
	{0xffff,	0x7f,	0},
	
	{0x75,	0,	0},
	{0xffff,	0x83,	0},

	{0xbb,	1,	0},
	
	{0xca,	0,	0},
	{0xffff,	0x20,	0},
	{0xffff,	0,	0},

	{0x94,	0,	0},
	
	{0xa7,	0,	0},
	{0x5c,	0xff,	0},
	
	{0xaf,	0,	0}	

};

V558_LCDIFPARM Panel_LcdIF =
{
	{ 128,	128	},	//size
	{0, 0},			//mp
	{0, 0},			//sp
	0x15, 0x75, 0, 0, 0, 0,	//hsa, hea, hsxa, hsya, hexa, heya
	0xd08a,			//lc
	0x100,			//dpad
	0x460, 0x460,		//wrcycle, rdcycle
	0,					//rsPolarity
	0x4,
	0x1,			//index select
	0x5c,			//dispadr
	CV90_K2817_SSD1781_PANEL,		//paneltype
	0,			//reserve
	{
		0,		0,		1,		4,		9,		0x10,	0x1a,	0x27,	0x37,
		0x4a,	0x5f,	0x77,	0x91,	0xac,	0xc8,	0xe4,	0xff
	},					//gamma R;
	{
		0,		0,		1,		4,		9,		0x10,	0x1a,	0x27,	0x37,
		0x4a,	0x5f,	0x77,	0x91,	0xac,	0xc8,	0xe4,	0xff
	},					//gamma G;
	{
		0,		0,		1,		4,		9,		0x10,	0x1a,	0x27,	0x37,
		0x4a,	0x5f,	0x77,	0x91,	0xac,	0xc8,	0xe4,	0xff
	},					//gamma B
	{0xff, 0x0, 0x0, 0}		//background color
};

const V558_PANELINFO	Panel_Info =
{
	"CV90_K2817_SSD1781",		//description

	&Panel_LcdIF,
	{sizeof(Panel_powon) / sizeof(V558_PANELREGVALUE), Panel_powon},
	{0, NULL},
	{0, NULL},
	{0, NULL},
	{0, NULL},
	{0, NULL},

	V558_LcdPanelSetReg,
	NULL
};

#endif
#if(WB_F1216V2_6FLWB)

const V558_PANELWRITEINFO Panel_WriteType=
{
	High8,
	RegRsHigh16,
	Lcd_Multi16
};
const V558_PANELREGVALUE Panel_wakefstd[] =
{
	{0x0,	0x01,	10},//osc start
	{0x3,	0x0488,	10},//stb=0;	
	
	{0x7,	0x01,	40},//display on
	{0x7,	0x21,	0},
	{0x7,	0x23,	40},
	{0x7,	0x33,	0},

};

const V558_PANELREGVALUE Panel_stdby[] =
{
	{0xb,	0x4000,	0},
	{0x7,	0x0032,	40},	//display off
	{0x7,	0x0022,	40},
	{0x7,	0x0,	0},

	{0x3,	0x0480,	0}	//ap2~0=000
};

static V558_PANELREGVALUE Panel_wakefs[] =
{
	{0x3,	0x0488,	20}

};

const V558_PANELREGVALUE Panel_sleep[] =
{
	{0xb,	0x4000,	0},
	{0x7,	0x0032,	0},	//display off
	{0x7,	0x0022,	40},
	{0x7,	0x0,	40},
	{0x3,	0x048a,	0}	//slp=1
};

const V558_PANELREGVALUE Panel_powoff[] =
{
	{0xb,	0x4000,	0},
	{0x7,	0x0032,	20},
	{0x7,	0x0022,	20},
	{0x7,	0x0,	0},

	{0x3,	0x0480,	0}
};

const V558_PANELREGVALUE Panel_powon[] =
{

	{0x7,	0x004,	0},
	{0xd,	0x203,	0},
	{0xe,	0x1115,	0},
	{0x1,	0x113,	0},
	{0x2,	0x0700,	0},
	{0x5,	0x1230,	0},

⌨️ 快捷键说明

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