LCD 液晶屏的驅動蕊片都需要初始化(Initialization),ILI9341 驅動蕊片都不會例外,初始化(Initization)主要是作驅動蕊片內部參數設定 / 配置(Parameter Setting),其實 LCD 液晶屏驅動蕊片的內部是非常複雜,祇是廠家已經簡化驅動蕊片的設定,看看 ILI9341 的規格書(Specification V1.05 版本)有 239頁,便知道驅動蕊片並不簡單!
Microchip PIC24 LCD 主程序初始化流程 |
Microchip PIC24FJ64GA008 2.8吋TFT LCD 液晶屏初始化(Initialization):
// Initialize ILI9341 LCD Device
ILI9341_WR_REG(0xCF);
//Power Control B
ILI9341_WR_DATA(0x00); //Always 0x
ILI9341_WR_DATA(0xDB); //PCEQ Off
ILI9341_WR_DATA(0X30); //ESD protection
ILI9341_WR_REG(0xB1);
//Frame rate control
ILI9341_WR_DATA(0x00);
ILI9341_WR_DATA(0x18);
ILI9341_WR_REG(0xED);
//Power坼On sequence control
ILI9341_WR_DATA(0x64); //Soft start
ILI9341_WR_DATA(0x03); //Power on sequence
ILI9341_WR_DATA(0X12); //Power on sequence
ILI9341_WR_DATA(0x81); //DDVDH enhance on
ILI9341_WR_REG(0xE8);
//Driver timing control A
ILI9341_WR_DATA(0x85); //non坼overlap
ILI9341_WR_DATA(0x00);
//EQ timing
ILI9341_WR_DATA(0x70);
//Pre坼charge timing
ILI9341_WR_REG(0xCB);
//Power Control A
ILI9341_WR_DATA(0x39); //Always 0x39
ILI9341_WR_DATA(0x2C);
//Always 0x2C
ILI9341_WR_DATA(0x00); //Always 0x
ILI9341_WR_DATA(0x34); //Vcore = 1.6V
ILI9341_WR_DATA(0x02); //DDVDH = 5.6V
ILI9341_WR_REG(0xF7);
//Pump ratio control
ILI9341_WR_DATA(0x20); //DDVDH=2xVCI
ILI9341_WR_REG(0xEA); //Driver timing control B
ILI9341_WR_DATA(0x00); //Gate driver timing
ILI9341_WR_DATA(0x00); //Always 0x
ILI9341_WR_REG(0xC0);
//Power control 1
ILI9341_WR_DATA(0x22); //VRH
ILI9341_WR_REG(0xC1);
//Power control 2
ILI9341_WR_DATA(0x12); //SAP[2:0];BT[3:0]
ILI9341_WR_REG(0xC5);
//VCOM control 1
ILI9341_WR_DATA(0x5C);
ILI9341_WR_DATA(0x4C);
ILI9341_WR_REG(0xC7);
//VCOM control 2
ILI9341_WR_DATA(0x8F);
ILI9341_WR_REG(0x36); //Memory access control =
BGR
ILI9341_WR_DATA(0x48);
ILI9341_WR_REG(0x3A); //Pixel format = 16 bit per
pixel
ILI9341_WR_DATA(0x55);
ILI9341_WR_REG(0xF2);
//3G Gamma
control
ILI9341_WR_DATA(0x02);
ILI9341_WR_REG(0x26);
//Gamma Curve Select 3
ILI9341_WR_DATA(0x01);
ILI9341_WR_REG(0xE0);
//Set Gamma
ILI9341_WR_DATA(0x0F);
ILI9341_WR_DATA(0x20);
ILI9341_WR_DATA(0x19);
ILI9341_WR_DATA(0x0F);
ILI9341_WR_DATA(0x10);
ILI9341_WR_DATA(0x08);
ILI9341_WR_DATA(0x4A);
ILI9341_WR_DATA(0xF6);
ILI9341_WR_DATA(0x3A);
ILI9341_WR_DATA(0x0F);
ILI9341_WR_DATA(0x14);
ILI9341_WR_DATA(0x09);
ILI9341_WR_DATA(0x18);
ILI9341_WR_DATA(0x0B);
ILI9341_WR_DATA(0x08);
ILI9341_WR_REG(0xE1);
//Set Gamma
ILI9341_WR_DATA(0x00);
ILI9341_WR_DATA(0x1E);
ILI9341_WR_DATA(0x1E);
ILI9341_WR_DATA(0x05);
ILI9341_WR_DATA(0x0F);
ILI9341_WR_DATA(0x04);
ILI9341_WR_DATA(0x31);
ILI9341_WR_DATA(0x33);
ILI9341_WR_DATA(0x43);
ILI9341_WR_DATA(0x04);
ILI9341_WR_DATA(0x0B);
ILI9341_WR_DATA(0x06);
ILI9341_WR_DATA(0x27);
ILI9341_WR_DATA(0x34);
ILI9341_WR_DATA(0x0F);
ILI9341_WR_REG(0x11); //Exit SLEEP mode
DelayMs(120);
ILI9341_WR_REG(0x29);
//Display ON
|
2016年 6月 19日 天氣報告
氣溫:30.4度 @ 19:30
相對濕度:百分之 80%
天氣:天色大致良好
沒有留言:
張貼留言