init_st7785.txt

来自「cpt+7785 LCD 驱动IC的初始化代码」· 文本 代码 · 共 150 行

TXT
150
字号
void Init_ST7785()
{ 
	 _RESET=1;
     DELAY2(5);  
     _RESET=0;
     DELAY2(50);
     _RESET=1;
     DELAY2(100);
 //******************      
    Set_LCD_8B_REG(0x11);//Sleep out

    DELAY2(100);     //Waiting 100ms

    Set_LCD_8B_REG(0xB1);//Porch control
    Set_LCD_REG_8BitData(0x28);
    Set_LCD_REG_8BitData(0x21);
    Set_LCD_REG_8BitData(0x20);

	Set_LCD_8B_REG(0xB2);//Porch control
    Set_LCD_REG_8BitData(0x3A);
    Set_LCD_REG_8BitData(0x02);
    Set_LCD_REG_8BitData(0x02);
      
    Set_LCD_8B_REG(0xB3);//Power control 3
    Set_LCD_REG_8BitData(0x28);
    Set_LCD_REG_8BitData(0x21);
    Set_LCD_REG_8BitData(0x20);
    Set_LCD_REG_8BitData(0x3A);
    Set_LCD_REG_8BitData(0x02);
    Set_LCD_REG_8BitData(0x02);

    Set_LCD_8B_REG(0xB6);//Porch control
    Set_LCD_REG_8BitData(0x03);
    Set_LCD_REG_8BitData(0x06);

    Set_LCD_8B_REG(0xC5);//Power control 0
    Set_LCD_REG_8BitData(0x05);

    Set_LCD_8B_REG(0xC1);//Power control 0
    Set_LCD_REG_8BitData(0xBB);
    Set_LCD_REG_8BitData(0x00);

    Set_LCD_8B_REG(0xC2);//Power control 3
    Set_LCD_REG_8BitData(0x01);
    Set_LCD_REG_8BitData(0xDD);
    Set_LCD_REG_8BitData(0x8D);
    Set_LCD_REG_8BitData(0x00);
    Set_LCD_REG_8BitData(0x00);
    Set_LCD_REG_8BitData(0x03);
    Set_LCD_REG_8BitData(0x00);

    Set_LCD_8B_REG(0xC3);//Power control 4
    Set_LCD_REG_8BitData(0x01);
    Set_LCD_REG_8BitData(0xCC);
    Set_LCD_REG_8BitData(0x0C);
    Set_LCD_REG_8BitData(0x00);
    Set_LCD_REG_8BitData(0x00);
    Set_LCD_REG_8BitData(0x00);

    Set_LCD_8B_REG(0xC4);//Power control 5
    Set_LCD_REG_8BitData(0x01);
    Set_LCD_REG_8BitData(0xED);
    Set_LCD_REG_8BitData(0x0D);
    Set_LCD_REG_8BitData(0x33);
    Set_LCD_REG_8BitData(0x00);
    Set_LCD_REG_8BitData(0x00);

    Set_LCD_8B_REG(0xC5);//Setting VCOMH value
    Set_LCD_REG_8BitData(0x2B);
    Set_LCD_REG_8BitData(0x21);

    Set_LCD_8B_REG(0xC6);//Setting VCOMAC value
    Set_LCD_REG_8BitData(0x16);
    Set_LCD_REG_8BitData(0x00);

    Set_LCD_8B_REG(0xCC);//Source driving control function
    Set_LCD_REG_8BitData(0x01);

    Set_LCD_8B_REG(0xE0);//Setup Gamma (‘+’polarity) Correction Characteristics Setting
    Set_LCD_REG_8BitData(0x0F);
    Set_LCD_REG_8BitData(0x00);
    Set_LCD_REG_8BitData(0x14);
    Set_LCD_REG_8BitData(0x16);
    Set_LCD_REG_8BitData(0x15);
    Set_LCD_REG_8BitData(0x12);
    Set_LCD_REG_8BitData(0x0F);
    Set_LCD_REG_8BitData(0x0F);
    Set_LCD_REG_8BitData(0x0E);
    Set_LCD_REG_8BitData(0x01);
    Set_LCD_REG_8BitData(0x0F);
    Set_LCD_REG_8BitData(0x07);
    Set_LCD_REG_8BitData(0x02);
    Set_LCD_REG_8BitData(0x00);
    Set_LCD_REG_8BitData(0x00);

    Set_LCD_8B_REG(0xE1);//Setup Gamma (‘-’polarity) Correction Characteristics Setting
    Set_LCD_REG_8BitData(0x0F);
    Set_LCD_REG_8BitData(0x00);
    Set_LCD_REG_8BitData(0x14);
    Set_LCD_REG_8BitData(0x16);
    Set_LCD_REG_8BitData(0x15);
    Set_LCD_REG_8BitData(0x12);
    Set_LCD_REG_8BitData(0x0F);
    Set_LCD_REG_8BitData(0x0F);
    Set_LCD_REG_8BitData(0x0E);
    Set_LCD_REG_8BitData(0x01);
    Set_LCD_REG_8BitData(0x0F);
    Set_LCD_REG_8BitData(0x07);
    Set_LCD_REG_8BitData(0x02);
    Set_LCD_REG_8BitData(0x00);
    Set_LCD_REG_8BitData(0x00);
    
    Set_LCD_8B_REG(0x35);//Setting TE output on
    Set_LCD_REG_8BitData(0x00);

    Set_LCD_8B_REG(0x3A);//Setting interface Pixel Format
    Set_LCD_REG_8BitData(0x05);

    Set_LCD_8B_REG(0x2A);//X address setup
    Set_LCD_REG_8BitData(0x00);
   Set_LCD_REG_8BitData(0x00);
    Set_LCD_REG_8BitData(0x00);
    Set_LCD_REG_8BitData(0xEF);

    Set_LCD_8B_REG(0x2B);//Y address setup
    Set_LCD_REG_8BitData(0x00);
    Set_LCD_REG_8BitData(0x00);
    Set_LCD_REG_8BitData(0x01);
    Set_LCD_REG_8BitData(0x3F);

    DELAY2(100);     //Waiting 100ms

    Set_LCD_8B_REG(0x29);//Display on

    Set_LCD_8B_REG(0x2C);//Write the display data
}
//-------------------------------------------------
void Enter_Sleep()
{
     Set_LCD_8B_REG(0x10); //enter sleep in mode
}
//-------------------------------------------------
void Out_Sleep()
{

     Set_LCD_8B_REG(0x11);//out sleep 
     DELAY2(200);  //delay 200m

}

⌨️ 快捷键说明

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