📄 hw_st7787.c
字号:
/******************************************************************/
/* 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 + -