📄 hw_st7787.c
字号:
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(0xA7);//a7
Mcupanel_Data(0x00);
Mcupanel_Command(0xc2); //Power Control 3 ( in normal)
Mcupanel_Data(0x03);//03
//Mcupanel_Data(0xd6);//e5 e6 test
Mcupanel_Data(0xf7);//e5 e6
Mcupanel_Data(0x97);//86
Mcupanel_Data(0x00);
Mcupanel_Data(0x00);
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(0xd2) ;//cb test
Mcupanel_Data(0xcc) ;//ce
Mcupanel_Data(0x25);
Mcupanel_Data(0x80);
Mcupanel_Command(0xc6) ; //VcomAC set
//Mcupanel_Data(0x22); test
Mcupanel_Data(0x1c);
Mcupanel_Data(0x00);
Mcupanel_Command(0x20); ;//DISPLAY INVERSE
Mcupanel_Command(0x3a); //65k
Mcupanel_Data(0x05);
Mcupanel_Command(0x36); //mx.my,mv,rgb
#ifdef LCM_ROTAT_180
Mcupanel_Data(0x00A0);
#else
Mcupanel_Data(0x0060);
#endif
Mcupanel_Command(0xe0); //gamma
Mcupanel_Data(0x03);
Mcupanel_Data(0x03);
Mcupanel_Data(0x18);
Mcupanel_Data(0x1c);
Mcupanel_Data(0x19);
Mcupanel_Data(0x14);
Mcupanel_Data(0x10);
Mcupanel_Data(0x10);
Mcupanel_Data(0x18);
Mcupanel_Data(0x00);
Mcupanel_Data(0x0f);
Mcupanel_Data(0x03);
Mcupanel_Data(0x07);
Mcupanel_Command(0xe1); //gamma
Mcupanel_Data(0x08);
Mcupanel_Data(0x07);
Mcupanel_Data(0x1d);
Mcupanel_Data(0x1f);
Mcupanel_Data(0x1e);
Mcupanel_Data(0x19);
Mcupanel_Data(0x15);
Mcupanel_Data(0x14);
Mcupanel_Data(0x12);
Mcupanel_Data(0x05);
Mcupanel_Data(0x0f);
Mcupanel_Data(0x03);
Mcupanel_Data(0x03);
Mcupanel_Command(0x02A) ; //Column Range
Mcupanel_Data(0x000) ; //
Mcupanel_Data(0x000) ; //
Mcupanel_Data(0x001) ; //
Mcupanel_Data(0x03f) ; //
Mcupanel_Command(0x02B) ; //Page Range
Mcupanel_Data(0x000) ; //
Mcupanel_Data(0x000) ; //
Mcupanel_Data(0x000) ; //
Mcupanel_Data(0x0ef) ; //
Mcupanel_Command(0x29); ;//display on
Mcupanel_Command(0x2c) ;//write
#endif
//############################AF240B—36B V1。0(NP)(暗)##########################################
#if (LCM_7787 == 5)
//sleep out
Mcupanel_Command(0x0011);
delay_nops(100000);
Mcupanel_Command(0x00cf);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x0000);
Mcupanel_Command(0x00bc);
Mcupanel_Command(0x00fe);
Mcupanel_Data(0x00ca);
Mcupanel_Data(0x0000);
Mcupanel_Command(0x00b0);
Mcupanel_Data(0x0000);
Mcupanel_Command(0x00b1);
Mcupanel_Data(0x0034);
Mcupanel_Data(0x05);
Mcupanel_Data(0x01);
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(0x0004);
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(0x03);//03
//Mcupanel_Data(0xd6);//e5 e6 test
Mcupanel_Data(0xf7);//e5 e6
Mcupanel_Data(0x97);//86
Mcupanel_Data(0x00);
Mcupanel_Data(0x00);
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);
Mcupanel_Command(0xc5) ; //vcomH set
//Mcupanel_Data(0xd2) ;//cb test
Mcupanel_Data(0xcf) ;//ce
Mcupanel_Data(0x25);
Mcupanel_Data(0x80);
Mcupanel_Command(0xc6) ; //VcomAC set
//Mcupanel_Data(0x22); test
Mcupanel_Data(0x1c);
Mcupanel_Data(0x00);
//gamma setting
Mcupanel_Command(0x00e0);
Mcupanel_Data(0x000f);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x0014);
Mcupanel_Data(0x0016);
Mcupanel_Data(0x0015);
Mcupanel_Data(0x0012);
Mcupanel_Data(0x000f);
Mcupanel_Data(0x000f);
Mcupanel_Data(0x000e);
Mcupanel_Data(0x0001);
Mcupanel_Data(0x000f);
Mcupanel_Data(0x0007);
Mcupanel_Data(0x0002);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x0000);
Mcupanel_Command(0x00e1);
Mcupanel_Data(0x000f);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x0014);
Mcupanel_Data(0x0016);
Mcupanel_Data(0x0015);
Mcupanel_Data(0x0012);
Mcupanel_Data(0x000f);
Mcupanel_Data(0x000f);
Mcupanel_Data(0x000e);
Mcupanel_Data(0x0001);
Mcupanel_Data(0x000f);
Mcupanel_Data(0x0007);
Mcupanel_Data(0x0002);
Mcupanel_Data(0x0000);
Mcupanel_Data(0x0000);
//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 == 6)
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(0xc8) ;//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(0x29);
Mcupanel_Command(0x002c);
#endif
//############################CF24LCD87##########################################
#if (LCM_7787 == 7)
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(0x00bd);
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);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -