📄 hw_st7787.c
字号:
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
//######################################################################
#if (LCM_7787 == 8)
//sleep out
Mcupanel_Command(0x0011);
delay_nops(100000);
Mcupanel_Command(0x00bc);
delay_nops(10000);
Mcupanel_Command(0x00fe);
Mcupanel_Data(0x00ca);
Mcupanel_Data(0x0000);
//Mcupanel_Command(0x00b4);
//Mcupanel_Data(0x0006);
Mcupanel_Command(0x00b1);
Mcupanel_Data(0x002c);
Mcupanel_Data(0x0002);
Mcupanel_Data(0x0002);
Mcupanel_Command(0x00b2);
Mcupanel_Data(0x0034);
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(0x0003);
Mcupanel_Data(0x0006);
Mcupanel_Command (0xc0); //set GVDD
Mcupanel_Data(0x00); //00
Mcupanel_Command(0xc1); //Power Control 2 ( VGH,VGL)
Mcupanel_Data(0xA7);//a7
Mcupanel_Data(0x00);
Mcupanel_Command(0xc2); //Power Control 3 ( in normal)
Mcupanel_Data(0x01);//03
//Mcupanel_Data(0xd6);//e5 e6 test
Mcupanel_Data(0xfe);//e5 e6
Mcupanel_Data(0x8d);//86
Mcupanel_Data(0x00);
Mcupanel_Data(0x00);
Mcupanel_Data(0x03);
Mcupanel_Data(0x00);
delay_nops(40);
Mcupanel_Command(0xc3); //Power Control 4 ( in Idle mode)
Mcupanel_Data(0x01);
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);
Mcupanel_Command(0xc5) ; //vcomH set
Mcupanel_Data(0xc5) ;//cb test
//Mcupanel_Data(0xcf) ;//ce
Mcupanel_Data(0x25);
Mcupanel_Data(0x80);
Mcupanel_Command(0xc6) ; //VcomAC set
Mcupanel_Data(0x1c); //test
//Mcupanel_Data(0x1c);
Mcupanel_Data(0x00);
//gamma setting
/*
Mcupanel_Command(0xe0);
Mcupanel_Data(0x01);
Mcupanel_Data(0x0B);
Mcupanel_Data(0x19);
Mcupanel_Data(0x1E);
Mcupanel_Data(0x1E);
Mcupanel_Data(0x1E);
Mcupanel_Data(0x18);
Mcupanel_Data(0x19);
Mcupanel_Data(0x1A);
Mcupanel_Data(0x0D);
Mcupanel_Data(0x01);
Mcupanel_Data(0x02);
Mcupanel_Data(0x02);
Mcupanel_Command(0xe1);
Mcupanel_Data(0x01);
Mcupanel_Data(0x0B);
Mcupanel_Data(0x19);
Mcupanel_Data(0x1E);
Mcupanel_Data(0x1E);
Mcupanel_Data(0x1E);
Mcupanel_Data(0x18);
Mcupanel_Data(0x19);
Mcupanel_Data(0x1A);
Mcupanel_Data(0x0D);
Mcupanel_Data(0x01);
Mcupanel_Data(0x02);
Mcupanel_Data(0x02);
*/
//color format settint
Mcupanel_Command(0x003a);
Mcupanel_Data(0x0055);
Mcupanel_Command(0x36); //mx.my,mv,rgb
#ifdef LCM_ROTAT_180
Mcupanel_Data(0x00A0);
#else
Mcupanel_Data(0x0060);
#endif
Mcupanel_Command(0x002A);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x0001);
Mcupanel_Data(0x003f);
//window size setting
Mcupanel_Command(0x002B);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x00ef);
//display on
Mcupanel_Command(0x0029);
//write graphic ram's index
Mcupanel_Command(0x002c);
#endif
//############################AF240B—36B V1。0(NP)(暗)##########################################
#if (LCM_7787 == 9)
//sleep out
delay_nops(10000);
Mcupanel_Command(0x0011);
delay_nops(100000);
Mcupanel_Command(0x00bc);
delay_nops(10000);
Mcupanel_Command(0x00fe);
Mcupanel_Data(0x00ca);
Mcupanel_Data(0x0000);
Mcupanel_Command(0x00f4);
Mcupanel_Data(0x008c);
Mcupanel_Data(0x00b0);
Mcupanel_Data(0x000e);
Mcupanel_Command(0x00b0);
Mcupanel_Data(0x0000);
Mcupanel_Command(0x00b1);
Mcupanel_Data(0x0028);//2c
Mcupanel_Data(0x0002);
Mcupanel_Data(0x0002);
Mcupanel_Command(0x00b2);
Mcupanel_Data(0x003a);//34
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(0x0003);
Mcupanel_Data(0x0006);
Mcupanel_Command(0x00bc);
delay_nops(1000);
Mcupanel_Command (0xc0); //set GVDD
Mcupanel_Data(0x05); //02
Mcupanel_Command(0xc1); //Power Control 2 ( VGH,VGL)
Mcupanel_Data(0xba);//a7
Mcupanel_Data(0x00);
Mcupanel_Command(0xc2); //Power Control 3 ( in normal)
Mcupanel_Data(0x01);//03
Mcupanel_Data(0xf6);//fe
Mcupanel_Data(0x06);//8d
Mcupanel_Data(0x30);
Mcupanel_Data(0x05);
Mcupanel_Data(0x00);
Mcupanel_Data(0x08);
Mcupanel_Command(0xc3); //Power Control 4 ( in Idle mode)
Mcupanel_Data(0x01);
Mcupanel_Data(0x33);//
Mcupanel_Data(0x01);
Mcupanel_Data(0x00);
Mcupanel_Data(0x00);
Mcupanel_Data(0x00);
Mcupanel_Command(0xc4) ; //Power Control 4 ( in partial mode)
Mcupanel_Data(0x01);
Mcupanel_Data(0xb3);
Mcupanel_Data(0x03);
Mcupanel_Data(0x00);
Mcupanel_Data(0x00);
Mcupanel_Data(0x00);
Mcupanel_Command(0xc5) ; //vcomH set
Mcupanel_Data(0x2d);
Mcupanel_Data(0x25);
Mcupanel_Command(0xc6) ; //VcomAC set
Mcupanel_Data(0x18);
Mcupanel_Data(0x00);
//gamma setting
Mcupanel_Command(0xe0);
Mcupanel_Data(0x01);
Mcupanel_Data(0x0B);
Mcupanel_Data(0x19);
Mcupanel_Data(0x1E);
Mcupanel_Data(0x1d);
Mcupanel_Data(0x1a);
Mcupanel_Data(0x18);
Mcupanel_Data(0x19);
Mcupanel_Data(0x1A);
Mcupanel_Data(0x0D);
Mcupanel_Data(0x01);
Mcupanel_Data(0x02);
Mcupanel_Data(0x02);
Mcupanel_Command(0xe1);
Mcupanel_Data(0x01);
Mcupanel_Data(0x0B);
Mcupanel_Data(0x19);
Mcupanel_Data(0x1E);
Mcupanel_Data(0x1d);
Mcupanel_Data(0x1a);
Mcupanel_Data(0x18);
Mcupanel_Data(0x19);
Mcupanel_Data(0x1A);
Mcupanel_Data(0x0D);
Mcupanel_Data(0x01);
Mcupanel_Data(0x02);
Mcupanel_Data(0x02);
//color format settint
Mcupanel_Command(0x003a);
Mcupanel_Data(0x0055);
Mcupanel_Command(0x36); //mx.my,mv,rgb
#ifdef LCM_ROTAT_180
Mcupanel_Data(0x00A0);
#else
Mcupanel_Data(0x0060);
#endif
Mcupanel_Command(0x002A);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x0001);
Mcupanel_Data(0x003f);
//window size setting
Mcupanel_Command(0x002B);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x00ef);
//display on
Mcupanel_Command(0x0029);
//write graphic ram's index
Mcupanel_Command(0x002c);
#endif
Mcupanel_SetAddr(0x0,0x0);
// ---------- Tested throught displaying black ---------- //
#if 1
for(j=0;j<240;j++)
for(i=0;i<320;i++)
Mcupanel_Data(0x000000);
#endif
}
/*---------------------------------------------------------
Name : Mcupanel_Standby
Desc : Mcupanel的StandBy模式设置
Params: NORMAL -> 恢复正常模式
STANDBY -> 设置为StandBy模式
Return:
Author: nzy
Date :
-----------------------------------------------------------*/
void Mcupanel_Standby(BOOLEAN Enable)
{
if(Enable == STANDBY)//Standby mode
{
}
else//Return normal
{
}
}
/*---------------------------------------------------------
Name : Mcupanel_SetAddr
Desc : Mcupanel起始位置设置
Params: X -> X方向的坐标
Y -> Y方向的坐标
Return:
Author: nzy
Date :
-----------------------------------------------------------*/
void Mcupanel_Reset_Addr()
{
Lcdctrl_McuBypassMode(TRUE);
Mcupanel_Command(0x002A);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x0001);
Mcupanel_Data(0x003f);
//window size setting
Mcupanel_Command(0x002B);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x00ef);
Mcupanel_Command(0x2C);
Lcdctrl_McuBypassMode(FALSE);
}
/*---------------------------------------------------------
Name : Mcupanel_SetAddr
Desc : Mcupanel起始位置设置
Params: X -> X方向的坐标
Y -> Y方向的坐标
Return:
Author: nzy
Date :
-----------------------------------------------------------*/
void Mcupanel_SetAddr(UINT32 x, UINT32 y)
{
Lcdctrl_McuBypassMode(TRUE);
Mcupanel_Command(0x002A);
Mcupanel_Data((x>>8)&0xff);
Mcupanel_Data(x&0xff);
Mcupanel_Data(0x0001);
Mcupanel_Data(0x003f);
//window size setting
Mcupanel_Command(0x002B);
Mcupanel_Data((y>>8)&0xff);
Mcupanel_Data(y&0xff);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x00ef);
Mcupanel_Command(0x2C);
Lcdctrl_McuBypassMode(FALSE);
}
/*---------------------------------------------------------
Name : Mcupanel_SetAddr
Desc : Mcupanel矩形区域设置
Params: area -> 矩形区域的左上和右下点坐标
Return:
Author: nzy
Date :
-----------------------------------------------------------*/
void Mcupanel_SetWindow(UHRECT *area)
{
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -