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

📄 hw_st7787.c

📁 RK27驱动
💻 C
📖 第 1 页 / 共 3 页
字号:
/******************************************************************/
/*   Copyright (C) 2007 ROCK-CHIPS FUZHOU . All Rights Reserved.  */
/*******************************************************************
File	:  hw_Ili9320.c
Desc	:  Mcupanel型号的Mcu驱动
		  
Author	:  nzy
Date	: 
Notes	: 

$Log	: 
*********************************************************************/

#include "hw_include.h"


#if(LCDPANEL == MCUIF_ST7787)

//#define		LCM_7787	7
					//1-->AF240B—36B V1。0(NP);华龙屏7787
					//2-->XL-24W2(LW); 
					//3-->爱伦华7787
					//4-->AF240B—36B V1。0(NP)(LW摄像头机型专用MP2418/2427)
					//5-->AF240B—36B V1.0(7785)
					//6-->
/*---------------------------------------------------------
Name  :  Mcupanel_PowerOnInit
Desc  :  Mcupanel上电初始化
Params:  
Return:
Author:  nzy
Date  :  
-----------------------------------------------------------*/
void Mcupanel_PowerOnInit(void)
{	
    UINT32 i,j;
//############################AF240B—36B V1。0(NP)##########################################
#if	(LCM_7787 == 1)

		delay_nops(10000); //Delay 150mS
		Mcupanel_Command(0x11); //sleep_out
		delay_nops(100000);
		Mcupanel_Command(0xb1); //normal_frame
		Mcupanel_Data(0x2c);	//2D
		Mcupanel_Data(0x02);
		Mcupanel_Data(0x02);
		delay_nops(60);
		Mcupanel_Command(0xb2); //idle_frame
		Mcupanel_Data(0x3a);
		Mcupanel_Data(0x10);
		Mcupanel_Data(0x10);
		Mcupanel_Command(0xb3); //partial_frame
		Mcupanel_Data(0x3e);
		Mcupanel_Data(0x02);
		Mcupanel_Data(0x02);
		Mcupanel_Data(0x3e);
		Mcupanel_Data(0x02);
		Mcupanel_Data(0x02);
		Mcupanel_Command(0xb6); //DISPLAY FUNCTION SET
		Mcupanel_Data(0x02);
		Mcupanel_Data(0x00);
		Mcupanel_Command(0xbc);
		delay_nops(60);
	    Mcupanel_Command (0xc0); //set GVDD
		Mcupanel_Data(0x00);	//00
		Mcupanel_Command(0xc1); //Power Control 2 ( VGH,VGL)
		Mcupanel_Data(0xa8);//a7
		Mcupanel_Data(0x00);
		Mcupanel_Command(0xc2); //Power Control 3 ( in normal)
		Mcupanel_Data(0x04);//03
		Mcupanel_Data(0xd6);//e5
		Mcupanel_Data(0x85);//86
		Mcupanel_Data(0x30);
		Mcupanel_Data(0x05);
		delay_nops(40);
		Mcupanel_Command(0xc3); //Power Control 4 ( in Idle mode)
		Mcupanel_Data(0x04);
		Mcupanel_Data(0xc5);
		Mcupanel_Data(0x05);
		Mcupanel_Data(0x00);
		Mcupanel_Data(0x00);
		delay_nops(40);
		Mcupanel_Command(0xc4)        ; //Power Control 4 ( in partial mode)
		Mcupanel_Data(0x01);
		Mcupanel_Data(0xb3);
		Mcupanel_Data(0x03);
		Mcupanel_Data(0x00);
		Mcupanel_Data(0x00);
		delay_nops(40);
		Mcupanel_Command(0xf4)        ; //Setting ARBIT_2
		Mcupanel_Data(0xff);
		Mcupanel_Data(0x3f);
		Mcupanel_Command(0xf5)        ; //
		Mcupanel_Data(0x10);
		Mcupanel_Command(0xfb)        ; //
		Mcupanel_Data(0x7f);


		Mcupanel_Command(0xc5)        ; //vcomH set
		Mcupanel_Data(0xc3)         ;//cb
		Mcupanel_Data(0x25);
		Mcupanel_Data(0x80);
		Mcupanel_Command(0xc6)        ; //VcomAC set
		Mcupanel_Data(0x18);
		Mcupanel_Data(0x00);

		Mcupanel_Command(0x20); 		;//DISPLAY INVERSE
		Mcupanel_Command(0x3a); //65k
		Mcupanel_Data(0x05);
		Mcupanel_Command(0x0036) ;//mx.my,mv,rgb
#ifdef	LCM_ROTAT_180
		Mcupanel_Data(0x00A0);
#else
		Mcupanel_Data(0x0060);
#endif

		Mcupanel_Command(0x2a);
		Mcupanel_Data(0x00);
		Mcupanel_Data(0x00);
		Mcupanel_Data(0x01);
		Mcupanel_Data(0x3f);

		Mcupanel_Command(0x2b);
		Mcupanel_Data(0x00);
		Mcupanel_Data(0x00);
		Mcupanel_Data(0x00);
		Mcupanel_Data(0xef);

		delay_nops(100);

		Mcupanel_Command(0x2a);
		Mcupanel_Data(0x00);
		Mcupanel_Data(0x00);
		Mcupanel_Data(0x01);
		Mcupanel_Data(0x3f);

		Mcupanel_Command(0x2b);
		Mcupanel_Data(0x00);
		Mcupanel_Data(0x00);
		Mcupanel_Data(0x00);
		Mcupanel_Data(0xef);

		Mcupanel_Command(0x29);
		Mcupanel_Command(0x002c);

#endif
//############################XL-24W2(LW)##########################################
#if	(LCM_7787 == 2)
		delay_nops(100); //Delay 150mS
		Mcupanel_Command(0x0011);
		delay_nops(100000);

		Mcupanel_Command(0x00b1);
		Mcupanel_Data(0x0024);
		Mcupanel_Data(0x0002);
		Mcupanel_Data(0x0002);

		Mcupanel_Command(0x00b2);
		Mcupanel_Data(0x003a);
		Mcupanel_Data(0x0010);
		Mcupanel_Data(0x0010);

		Mcupanel_Command(0x00b3);
		Mcupanel_Data(0x003e);
		Mcupanel_Data(0x0002);
		Mcupanel_Data(0x0002);
		Mcupanel_Data(0x003e);
		Mcupanel_Data(0x0002);
		Mcupanel_Data(0x0002);

		Mcupanel_Command(0x00b6);
		Mcupanel_Data(0x0002);
		Mcupanel_Data(0x0000);

		Mcupanel_Command(0x00bc);

		delay_nops(50);

		Mcupanel_Command(0x00c0);
		Mcupanel_Data(0x0000);

		Mcupanel_Command(0x00c1);
		Mcupanel_Data(0x00ba);
		Mcupanel_Data(0x0000);

		Mcupanel_Command(0x00c2);
		Mcupanel_Data(0x0004);
		Mcupanel_Data(0x00f7);
		Mcupanel_Data(0x0087);//Mcupanel_Data(0x0086);
		Mcupanel_Data(0x0031);
		Mcupanel_Data(0x0003);

		Mcupanel_Command(0x00c3);
		Mcupanel_Data(0x0004);
		Mcupanel_Data(0x00c5);
		Mcupanel_Data(0x0005);
		Mcupanel_Data(0x0000);
		Mcupanel_Data(0x0000);

		Mcupanel_Command(0x00c4);
		Mcupanel_Data(0x0001);
		Mcupanel_Data(0x00b3);
		Mcupanel_Data(0x0003);
		Mcupanel_Data(0x0000);
		Mcupanel_Data(0x0000);

		delay_nops(24);
		Mcupanel_Command(0x00f4);
		Mcupanel_Data(0x00ff);
		Mcupanel_Data(0x003f);

		Mcupanel_Command(0x00f5);
		Mcupanel_Data(0x0010);

		Mcupanel_Command(0x00fb);
		Mcupanel_Data(0x007f);

		delay_nops(24);



		Mcupanel_Command(0x00c5);
		Mcupanel_Data(0x00cb);
		Mcupanel_Data(0x001a);
		Mcupanel_Data(0x0080);

		Mcupanel_Command(0x00c6);
		Mcupanel_Data(0x001a);
		Mcupanel_Data(0x0000);
		delay_nops(30);

		Mcupanel_Command(0x003a);
		Mcupanel_Data(0x0005);

		Mcupanel_Command(0x0036);
#ifdef	LCM_ROTAT_180
		Mcupanel_Data(0x00A0);
#else
		Mcupanel_Data(0x0060);
#endif

		delay_nops(30);

		Mcupanel_Command(0x00e0);
		Mcupanel_Data(0x0003);
		Mcupanel_Data(0x0003);
		Mcupanel_Data(0x0018);
		Mcupanel_Data(0x001c);
		Mcupanel_Data(0x0019);
		Mcupanel_Data(0x0014);
		Mcupanel_Data(0x0010);
		Mcupanel_Data(0x0010);
		Mcupanel_Data(0x0018);
		Mcupanel_Data(0x0000);
		Mcupanel_Data(0x000f);
		Mcupanel_Data(0x0003);
		Mcupanel_Data(0x0007);

		Mcupanel_Command(0x00e1);
		Mcupanel_Data(0x0008);
		Mcupanel_Data(0x0007);
		Mcupanel_Data(0x001d);
		Mcupanel_Data(0x001f);
		Mcupanel_Data(0x001e);
		Mcupanel_Data(0x0019);
		Mcupanel_Data(0x0015);
		Mcupanel_Data(0x0014);
		Mcupanel_Data(0x0012);
		Mcupanel_Data(0x0005);
		Mcupanel_Data(0x000f);
		Mcupanel_Data(0x0003);
		Mcupanel_Data(0x0003);

		Mcupanel_Command(0x2a);
		Mcupanel_Data(0x00);
		Mcupanel_Data(0x00);
		Mcupanel_Data(0x01);
		Mcupanel_Data(0x3f);

		Mcupanel_Command(0x2b);
		Mcupanel_Data(0x00);
		Mcupanel_Data(0x00);
		Mcupanel_Data(0x00);
		Mcupanel_Data(0xef);
		Mcupanel_Command(0x0029);

		Mcupanel_Command(0x002c);
#endif

//############################爱伦华7787##########################################
#if	(LCM_7787 == 3)

	delay_nops(100); //Delay 150mS
	Mcupanel_Command(0x0011);
	delay_nops(100000);

	Mcupanel_Command(0x00b1);
	Mcupanel_Data(0x0024);
	Mcupanel_Data(0x0002);
	Mcupanel_Data(0x0002);

	Mcupanel_Command(0x00b2);
	Mcupanel_Data(0x003a);
	Mcupanel_Data(0x0010);
	Mcupanel_Data(0x0010);

	Mcupanel_Command(0x00b3);
	Mcupanel_Data(0x003e);
	Mcupanel_Data(0x0002);
	Mcupanel_Data(0x0002);
	Mcupanel_Data(0x003e);
	Mcupanel_Data(0x0002);
	Mcupanel_Data(0x0002);

	Mcupanel_Command(0x00b6);
	Mcupanel_Data(0x0002);
	Mcupanel_Data(0x0000);

	Mcupanel_Command(0x00bc);

	delay_nops(50);

	Mcupanel_Command(0x00c0);
	Mcupanel_Data(0x0000);

	Mcupanel_Command(0x00c1);
	Mcupanel_Data(0x00ba);
	Mcupanel_Data(0x0000);

	Mcupanel_Command(0x00c2);
	Mcupanel_Data(0x0004);
	Mcupanel_Data(0x00f7);
	Mcupanel_Data(0x0087);//Mcupanel_Data(0x0086);
	Mcupanel_Data(0x0031);
	Mcupanel_Data(0x0003);

	Mcupanel_Command(0x00c3);
	Mcupanel_Data(0x0004);
	Mcupanel_Data(0x00c5);
	Mcupanel_Data(0x0005);
	Mcupanel_Data(0x0000);
	Mcupanel_Data(0x0000);

	Mcupanel_Command(0x00c4);
	Mcupanel_Data(0x0001);
	Mcupanel_Data(0x00b3);
	Mcupanel_Data(0x0003);
	Mcupanel_Data(0x0000);
	Mcupanel_Data(0x0000);

	delay_nops(24);
	Mcupanel_Command(0x00f4);
	Mcupanel_Data(0x00ff);
	Mcupanel_Data(0x003f);

	Mcupanel_Command(0x00f5);
	Mcupanel_Data(0x0010);

	Mcupanel_Command(0x00fb);
	Mcupanel_Data(0x007f);

	delay_nops(24);



	Mcupanel_Command(0x00c5);
	Mcupanel_Data(0x00c5);
	Mcupanel_Data(0x001a);
	Mcupanel_Data(0x0080);

	Mcupanel_Command(0x00c6);
	Mcupanel_Data(0x001a);
	Mcupanel_Data(0x0000);
	delay_nops(30);

	Mcupanel_Command(0x003a);
	Mcupanel_Data(0x0005);

	Mcupanel_Command(0x0036);
#ifdef	LCM_ROTAT_180
	Mcupanel_Data(0x00A0);
#else
	Mcupanel_Data(0x0060);
#endif

	delay_nops(30);

	Mcupanel_Command(0x00e0);
	Mcupanel_Data(0x0003);
	Mcupanel_Data(0x0003);
	Mcupanel_Data(0x0018);
	Mcupanel_Data(0x001c);
	Mcupanel_Data(0x0019);
	Mcupanel_Data(0x0014);
	Mcupanel_Data(0x0010);
	Mcupanel_Data(0x0010);
	Mcupanel_Data(0x0018);
	Mcupanel_Data(0x0000);
	Mcupanel_Data(0x000f);
	Mcupanel_Data(0x0003);
	Mcupanel_Data(0x0007);

	Mcupanel_Command(0x00e1);
	Mcupanel_Data(0x0008);
	Mcupanel_Data(0x0007);
	Mcupanel_Data(0x001d);
	Mcupanel_Data(0x001f);
	Mcupanel_Data(0x001e);
	Mcupanel_Data(0x0019);
	Mcupanel_Data(0x0015);
	Mcupanel_Data(0x0014);
	Mcupanel_Data(0x0012);
	Mcupanel_Data(0x0005);
	Mcupanel_Data(0x000f);
	Mcupanel_Data(0x0003);
	Mcupanel_Data(0x0003);

	Mcupanel_Command(0x2a);
	Mcupanel_Data(0x00);
	Mcupanel_Data(0x00);
	Mcupanel_Data(0x01);
	Mcupanel_Data(0x3f);

	Mcupanel_Command(0x2b);
	Mcupanel_Data(0x00);
	Mcupanel_Data(0x00);
	Mcupanel_Data(0x00);
	Mcupanel_Data(0xef);
	Mcupanel_Command(0x0029);

	Mcupanel_Command(0x002c);
#endif
//############################AF240B—36B V1。0(NP)(暗)##########################################
#if	(LCM_7787 == 4)

		delay_nops(150); //Delay 150mS                                       
		Mcupanel_Command  (0x11); //sleep_out
		delay_nops(100000);                                                   		                                                  
		Mcupanel_Command  (0xb1); //normal_frame
		Mcupanel_Data(0x23);	//2D
		Mcupanel_Data(0x02);
		Mcupanel_Data(0x02);			
		delay_nops(60);         				
		Mcupanel_Command(0xb2); //idle_frame
		Mcupanel_Data(0x3a);
		Mcupanel_Data(0x10);

⌨️ 快捷键说明

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