Loading...

You have no items in your shopping cart.

 
 
 
×

Registration

Profile Informations

Login Datas

or login

First name is required!
Last name is required!
First name is not valid!
Last name is not valid!
This is not an email address!
Email address is required!
This email is already registered!
Password is required!
Enter a valid password!
Please enter 6 or more characters!
Please enter 16 or less characters!
Passwords are not same!
Terms and Conditions are required!
Email or Password is wrong!
Captcha is required!
Captcha is wrong!

Initialization For ILI9325C ILI9325D ILI9327 And HX8347-A

Now the ILI9325C display controller chip has been discontinued and now the available  and alternative model is ILI9325D.

Our ITDB02-2.4 LCD use the ILI9325 chip for display controlling, so LCD module from now on will be use the new ILI9325D chip and the model will update to ITDB02-2.4D ,to  distinction with the previous model which use the ILI9325C.

They are exactly the same chip, but just a slightly different in the Initial setup. If you use the same Initial setup for them , the LCD will work but maybe slight flicker than with the right code. So we will publish out the two initiation step for both model , and update the ITDB02 library to compatible with new model. But for some third-party library for this LCD module, you may need to do this small change yourself. You can fine the initialization step below:

Initialization Step of ILI9325C

  digitalWrite(LCD_REST,HIGH);
  delay(5); 
  digitalWrite(LCD_REST,LOW);
  delay(5);
  digitalWrite(LCD_REST,HIGH);
  delay(5);
  digitalWrite(LCD_CS,HIGH);
  digitalWrite(LCD_WR,HIGH);
  delay(5);
  digitalWrite(LCD_CS,LOW);   

//************* Start Initial Sequence **********//

  LCD_Write_COM(0x00,0xE5); 
  LCD_Write_DATA(0x78,0xF0); // set SRAM internal timing
  LCD_Write_COM(0x00,0x01); 
  LCD_Write_DATA(0x01,0x00); // set SS and SM bit
  LCD_Write_COM(0x00,0x02); 
  LCD_Write_DATA(0x07,0x00); // set 1 line inversion
  LCD_Write_COM(0x00,0x03); 
  LCD_Write_DATA(0x10,0x30); // set GRAM write direction and BGR=1.
  LCD_Write_COM(0x00,0x04); 
  LCD_Write_DATA(0x00,0x00); // Resize register
  LCD_Write_COM(0x00,0x08); 
  LCD_Write_DATA(0x02,0x07); // set the back porch and front porch
  LCD_Write_COM(0x00,0x09); 
  LCD_Write_DATA(0x00,0x00); // set non-display area refresh cycle ISC[3:0]
  LCD_Write_COM(0x00,0x0A); 
  LCD_Write_DATA(0x00,0x00); // FMARK function
  LCD_Write_COM(0x00,0x0C); 
  LCD_Write_DATA(0x00,0x00); // RGB interface setting
  LCD_Write_COM(0x00,0x0D); 
  LCD_Write_DATA(0x00,0x00); // Frame marker Position
  LCD_Write_COM(0x00,0x0F); 
  LCD_Write_DATA(0x00,0x00); // RGB interface polarity
  
  //*************Power On sequence ****************//
  
  LCD_Write_COM(0x00,0x10); 
  LCD_Write_DATA(0x00,0x00); // SAP, BT[3:0], AP, DSTB, SLP, STB
  LCD_Write_COM(0x00,0x11); 
  LCD_Write_DATA(0x00,0x07); // DC1[2:0], DC0[2:0], VC[2:0]
  LCD_Write_COM(0x00,0x12); 
  LCD_Write_DATA(0x00,0x00); // VREG1OUT voltage
  LCD_Write_COM(0x00,0x13); 
  LCD_Write_DATA(0x00,0x00); // VDV[4:0] for VCOM amplitude
  LCD_Write_COM(0x00,0x07); 
  LCD_Write_DATA(0x00,0x01);
  delay(50); // Dis-charge capacitor power voltage
  LCD_Write_COM(0x00,0x10); 
  LCD_Write_DATA(0x10,0x90); // 1490//SAP, BT[3:0], AP, DSTB, SLP, STB
  LCD_Write_COM(0x00,0x11); 
  LCD_Write_DATA(0x02,0x27); // DC1[2:0], DC0[2:0], VC[2:0]
  delay(50); // Delay 50ms
  LCD_Write_COM(0x00,0x12); 
  LCD_Write_DATA(0x00,0x1F); //001C// Internal reference voltage= Vci;
  delay(50); // Delay 50ms
  LCD_Write_COM(0x00,0x13); 
  LCD_Write_DATA(0x15,0x00); //0x1000//1400   Set VDV[4:0] for VCOM amplitude  1A00
  LCD_Write_COM(0x00,0x29); 
  LCD_Write_DATA(0x00,0x27); //0x0012 //001a  Set VCM[5:0] for VCOMH  //0x0025  0034
  LCD_Write_COM(0x00,0x2B); 
  LCD_Write_DATA(0x00,0x0D); // Set Frame Rate   000C
  delay(50); // Delay 50ms
  LCD_Write_COM(0x00,0x20); 
  LCD_Write_DATA(0x00,0x00); // GRAM horizontal Address
  LCD_Write_COM(0x00,0x21); 
  LCD_Write_DATA(0x00,0x00); // GRAM Vertical Address
  
  // ----------- Adjust the Gamma Curve ----------//
  
  LCD_Write_COM(0x00,0x30); 
  LCD_Write_DATA(0x00,0x00);
  LCD_Write_COM(0x00,0x31); 
  LCD_Write_DATA(0x07,0x07);
  LCD_Write_COM(0x00,0x32); 
  LCD_Write_DATA(0x03,0x07);
  LCD_Write_COM(0x00,0x35); 
  LCD_Write_DATA(0x02,0x00);
  LCD_Write_COM(0x00,0x36); 
  LCD_Write_DATA(0x00,0x08);//0207
  LCD_Write_COM(0x00,0x37); 
  LCD_Write_DATA(0x00,0x04);//0306
  LCD_Write_COM(0x00,0x38); 
  LCD_Write_DATA(0x00,0x00);//0102
  LCD_Write_COM(0x00,0x39); 
  LCD_Write_DATA(0x07,0x07);//0707
  LCD_Write_COM(0x00,0x3C); 
  LCD_Write_DATA(0x00,0x02);//0702
  LCD_Write_COM(0x00,0x3D); 
  LCD_Write_DATA(0x1D,0x04);//1604

    //------------------ Set GRAM area ---------------//
    
  LCD_Write_COM(0x00,0x50); 
  LCD_Write_DATA(0x00,0x00); // Horizontal GRAM Start Address
  LCD_Write_COM(0x00,0x51); 
  LCD_Write_DATA(0x00,0xEF); // Horizontal GRAM End Address
  LCD_Write_COM(0x00,0x52); 
  LCD_Write_DATA(0x00,0x00); // Vertical GRAM Start Address
  LCD_Write_COM(0x00,0x53); 
  LCD_Write_DATA(0x01,0x3F); // Vertical GRAM Start Address
  LCD_Write_COM(0x00,0x60); 
  LCD_Write_DATA(0xA7,0x00); // Gate Scan Line
  LCD_Write_COM(0x00,0x61); 
  LCD_Write_DATA(0x00,0x01); // NDL,VLE, REV
  LCD_Write_COM(0x00,0x6A); 
  LCD_Write_DATA(0x00,0x00); // set scrolling line
  
  //-------------- Partial Display Control ---------//
  
  LCD_Write_COM(0x00,0x80); 
  LCD_Write_DATA(0x00,0x00);
  LCD_Write_COM(0x00,0x81); 
  LCD_Write_DATA(0x00,0x00);
  LCD_Write_COM(0x00,0x82); 
  LCD_Write_DATA(0x00,0x00);
  LCD_Write_COM(0x00,0x83); 
  LCD_Write_DATA(0x00,0x00);
  LCD_Write_COM(0x00,0x84); 
  LCD_Write_DATA(0x00,0x00);
  LCD_Write_COM(0x00,0x85); 
  LCD_Write_DATA(0x00,0x00);
  
  //-------------- Panel Control -------------------//
  
  LCD_Write_COM(0x00,0x90); 
  LCD_Write_DATA(0x00,0x10);
  LCD_Write_COM(0x00,0x92); 
  LCD_Write_DATA(0x06,0x00);
  LCD_Write_COM(0x00,0x07); 
  LCD_Write_DATA(0x01,0x33); // 262K color and display ON
 
	digitalWrite(LCD_CS,HIGH); 

Initialization Step of ILI9325D

  digitalWrite(LCD_REST,HIGH);
  delay(5); 
  digitalWrite(LCD_REST,LOW);
  delay(5);
  digitalWrite(LCD_REST,HIGH);
  delay(5);
  digitalWrite(LCD_CS,HIGH);
  digitalWrite(LCD_WR,HIGH);
  delay(5);
  digitalWrite(LCD_CS,LOW); 

//************* Start Initial Sequence **********//

main_W_com_data(0x0001, 0x0100); // set SS and SM bit
main_W_com_data(0x0002, 0x0200); // set 1 line inversion
main_W_com_data(0x0003, 0x1030); // set GRAM write direction and BGR=1.
main_W_com_data(0x0004, 0x0000); // Resize register
main_W_com_data(0x0008, 0x0207); // set the back porch and front porch
main_W_com_data(0x0009, 0x0000); // set non-display area refresh cycle ISC[3:0]
main_W_com_data(0x000A, 0x0000); // FMARK function
main_W_com_data(0x000C, 0x0000); // RGB interface setting
main_W_com_data(0x000D, 0x0000); // Frame marker Position
main_W_com_data(0x000F, 0x0000); // RGB interface polarity

//*************Power On sequence ****************//

main_W_com_data(0x0010, 0x0000); // SAP, BT[3:0], AP, DSTB, SLP, STB
main_W_com_data(0x0011, 0x0007); // DC1[2:0], DC0[2:0], VC[2:0]
main_W_com_data(0x0012, 0x0000); // VREG1OUT voltage
main_W_com_data(0x0013, 0x0000); // VDV[4:0] for VCOM amplitude
main_W_com_data(0x0007, 0x0001);
delay(200); // Dis-charge capacitor power voltage
main_W_com_data(0x0010, 0x1690); // SAP, BT[3:0], AP, DSTB, SLP, STB
main_W_com_data(0x0011, 0x0227); // Set DC1[2:0], DC0[2:0], VC[2:0]
delay(50); // Delay 50ms
main_W_com_data(0x0012, 0x000D); // 0012
delay(50); // Delay 50ms
main_W_com_data(0x0013, 0x1200); // VDV[4:0] for VCOM amplitude
main_W_com_data(0x0029, 0x000A); // 04  VCM[5:0] for VCOMH
main_W_com_data(0x002B, 0x000D); // Set Frame Rate
delay(50); // Delay 50ms
main_W_com_data(0x0020, 0x0000); // GRAM horizontal Address
main_W_com_data(0x0021, 0x0000); // GRAM Vertical Address

// ----------- Adjust the Gamma Curve ----------//

main_W_com_data(0x0030, 0x0000);
main_W_com_data(0x0031, 0x0404);
main_W_com_data(0x0032, 0x0003);
main_W_com_data(0x0035, 0x0405);
main_W_com_data(0x0036, 0x0808);
main_W_com_data(0x0037, 0x0407);
main_W_com_data(0x0038, 0x0303);
main_W_com_data(0x0039, 0x0707);
main_W_com_data(0x003C, 0x0504);
main_W_com_data(0x003D, 0x0808);
//------------------ Set GRAM area ---------------//
main_W_com_data(0x0050, 0x0000); // Horizontal GRAM Start Address
main_W_com_data(0x0051, 0x00EF); // Horizontal GRAM End Address
main_W_com_data(0x0052, 0x0000); // Vertical GRAM Start Address
main_W_com_data(0x0053, 0x013F); // Vertical GRAM Start Address
main_W_com_data(0x0060, 0xA700); // Gate Scan Line
main_W_com_data(0x0061, 0x0001); // NDL,VLE, REV
main_W_com_data(0x006A, 0x0000); // set scrolling line

//-------------- Partial Display Control ---------//

main_W_com_data(0x0080, 0x0000);
main_W_com_data(0x0081, 0x0000);
main_W_com_data(0x0082, 0x0000);
main_W_com_data(0x0083, 0x0000);
main_W_com_data(0x0084, 0x0000);
main_W_com_data(0x0085, 0x0000);

//-------------- Panel Control -------------------//

main_W_com_data(0x0090, 0x0010);
main_W_com_data(0x0092, 0x0000);
main_W_com_data(0x0007, 0x0133); // 262K color and display ON

  digitalWrite(LCD_CS,HIGH);  

The display controller chip on the ITDB02-3.2 and ITDB02-3.2WC is the same as before, you don’t need to change anything for the library and demo code. But to give you more detailed, we will publish out their initial setting too.

The ITDB02-3.2WC LCD use the ILI9327, the initialization step:

  digitalWrite(LCD_REST,HIGH);
  delay(5); 
  digitalWrite(LCD_REST,LOW);
  delay(15);
  digitalWrite(LCD_REST,HIGH);
  delay(15);
  digitalWrite(LCD_CS,HIGH);
  digitalWrite(LCD_WR,HIGH);
  digitalWrite(LCD_CS,LOW);  //CS	
  
	Lcd_Write_Com(0x00,0xE9);
	Lcd_Write_Data(0x00,0x20);
	Lcd_Write_Com(0x00,0x11); //Exit Sleep
	delay(100);
	Lcd_Write_Com(0x00,0xD1);
	Lcd_Write_Data(0x00,0x00);
	Lcd_Write_Data(0x00,0x71);
	Lcd_Write_Data(0x00,0x19);
	Lcd_Write_Com(0x00,0xD0);
	Lcd_Write_Data(0x00,0x07);
	Lcd_Write_Data(0x00,0x01);
	Lcd_Write_Data(0x00,0x08);
	Lcd_Write_Com(0x00,0x36);
	Lcd_Write_Data(0x00,0x48);
	Lcd_Write_Com(0x00,0x3A);
	Lcd_Write_Data(0x00,0x05);
	Lcd_Write_Com(0x00,0xC1);
	Lcd_Write_Data(0x00,0x10);
	Lcd_Write_Data(0x00,0x10);
	Lcd_Write_Data(0x00,0x02);
	Lcd_Write_Data(0x00,0x02);
	Lcd_Write_Com(0x00,0xC0); //Set Default Gamma
	Lcd_Write_Data(0x00,0x00);
	Lcd_Write_Data(0x00,0x35);
	Lcd_Write_Data(0x00,0x00);
	Lcd_Write_Data(0x00,0x00);
	Lcd_Write_Data(0x00,0x01);
	Lcd_Write_Data(0x00,0x02);
	Lcd_Write_Com(0x00,0xC5); //Set frame rate
	Lcd_Write_Data(0x00,0x04);
	Lcd_Write_Com(0x00,0xD2); //power setting
	Lcd_Write_Data(0x00,0x01);
	Lcd_Write_Data(0x00,0x44);
	Lcd_Write_Com(0x00,0xC8); //Set Gamma
	Lcd_Write_Data(0x00,0x04);
	Lcd_Write_Data(0x00,0x67);
	Lcd_Write_Data(0x00,0x35);
	Lcd_Write_Data(0x00,0x04);
	Lcd_Write_Data(0x00,0x08);
	Lcd_Write_Data(0x00,0x06);
	Lcd_Write_Data(0x00,0x24);
	Lcd_Write_Data(0x00,0x01);
	Lcd_Write_Data(0x00,0x37);
	Lcd_Write_Data(0x00,0x40);
	Lcd_Write_Data(0x00,0x03);
	Lcd_Write_Data(0x00,0x10);
	Lcd_Write_Data(0x00,0x08);
	Lcd_Write_Data(0x00,0x80);
	Lcd_Write_Data(0x00,0x00);
	Lcd_Write_Com(0x00,0x2A); 
	Lcd_Write_Data(0x00,0x00);
	Lcd_Write_Data(0x00,0x00);
	Lcd_Write_Data(0x00,0x00);
	Lcd_Write_Data(0x00,0xeF);
	Lcd_Write_Com(0x00,0x2B); 
	Lcd_Write_Data(0x00,0x00);
	Lcd_Write_Data(0x00,0x00);
	Lcd_Write_Data(0x00,0x01);
	Lcd_Write_Data(0x00,0x8F);
	Lcd_Write_Com(0x00,0x29); //display on      
	Lcd_Write_Com(0x00,0x2C); //display on
	
	digitalWrite(LCD_CS,HIGH);  	

The ITDB02-3.2 LCD use the HX8347-A, the initialization step:

  digitalWrite(LCD_REST,HIGH);
  delay(5); 
  digitalWrite(LCD_REST,LOW);
  delay(5);
  digitalWrite(LCD_REST,HIGH);
  delay(5);

  //  VENDOR   
  main_W_com_data(0x0046,0x00A4);
  main_W_com_data(0x0047,0x0053);
  main_W_com_data(0x0048,0x0000);
  main_W_com_data(0x0049,0x0044);
  main_W_com_data(0x004a,0x0004);
  main_W_com_data(0x004b,0x0067);
  main_W_com_data(0x004c,0x0033);
  main_W_com_data(0x004d,0x0077);
  main_W_com_data(0x004e,0x0012);
  main_W_com_data(0x004f,0x004C);
  main_W_com_data(0x0050,0x0046);
  main_W_com_data(0x0051,0x0044);

  //240x320 window setting
  main_W_com_data(0x0002,0x0000); // Column address start2
  main_W_com_data(0x0003,0x0000); // Column address start1
  main_W_com_data(0x0004,0x0000); // Column address end2
  main_W_com_data(0x0005,0x00ef); // Column address end1
  main_W_com_data(0x0006,0x0000); // Row address start2
  main_W_com_data(0x0007,0x0000); // Row address start1
  main_W_com_data(0x0008,0x0001); // Row address end2
  main_W_com_data(0x0009,0x003f); // Row address end1

  // Display Setting
  main_W_com_data(0x0001,0x0006); // IDMON=0, INVON=1, NORON=1, PTLON=0
  main_W_com_data(0x0016,0x00C8); // MY=0, MX=0, MV=0, ML=1, BGR=0, TEON=0   0048
  main_W_com_data(0x0023,0x0095); // N_DC=1001 0101
  main_W_com_data(0x0024,0x0095); // PI_DC=1001 0101
  main_W_com_data(0x0025,0x00FF); // I_DC=1111 1111

  main_W_com_data(0x0027,0x0002); // N_BP=0000 0010
  main_W_com_data(0x0028,0x0002); // N_FP=0000 0010
  main_W_com_data(0x0029,0x0002); // PI_BP=0000 0010
  main_W_com_data(0x002a,0x0002); // PI_FP=0000 0010
  main_W_com_data(0x002C,0x0002); // I_BP=0000 0010
  main_W_com_data(0x002d,0x0002); // I_FP=0000 0010

  main_W_com_data(0x003a,0x0001); // N_RTN=0000, N_NW=001    0001
  main_W_com_data(0x003b,0x0000); // P_RTN=0000, P_NW=001
  main_W_com_data(0x003c,0x00f0); // I_RTN=1111, I_NW=000
  main_W_com_data(0x003d,0x0000); // DIV=00
  delay(5);
  main_W_com_data(0x0035,0x0038); // EQS=38h
  main_W_com_data(0x0036,0x0078); // EQP=78h
  main_W_com_data(0x003E,0x0038); // SON=38h
  main_W_com_data(0x0040,0x000F); // GDON=0Fh
  main_W_com_data(0x0041,0x00F0); // GDOFF

  // Power Supply Setting
  main_W_com_data(0x0019,0x0049); // CADJ=0100, CUADJ=100, OSD_EN=1 ,60Hz
  main_W_com_data(0x0093,0x000F); // RADJ=1111, 100%
  delay(5);
  main_W_com_data(0x0020,0x0040); // BT=0100
  main_W_com_data(0x001D,0x0007); // VC1=111   0007
  main_W_com_data(0x001E,0x0000); // VC3=000
  main_W_com_data(0x001F,0x0004); // VRH=0011

  //VCOM SETTING
  main_W_com_data(0x0044,0x004D); // VCM=101 0000  4D
  main_W_com_data(0x0045,0x000E); // VDV=1 0001   0011
  delay(5);
  main_W_com_data(0x001C,0x0004); // AP=100
  delay(5);

  main_W_com_data(0x001B,0x0018); // GASENB=0, PON=0, DK=1, XDK=0, VLCD_TRI=0, STB=0
  delay(5);
  main_W_com_data(0x001B,0x0010); // GASENB=0, PON=1, DK=0, XDK=0, VLCD_TRI=0, STB=0
  delay(5);
  main_W_com_data(0x0043,0x0080); //set VCOMG=1
  delay(5);

  // Display ON Setting
  main_W_com_data(0x0090,0x007F); // SAP=0111 1111
  main_W_com_data(0x0026,0x0004); //GON=0, DTE=0, D=01
  delay(5);
  main_W_com_data(0x0026,0x0024); //GON=1, DTE=0, D=01
  main_W_com_data(0x0026,0x002C); //GON=1, DTE=0, D=11
  delay(5);
  main_W_com_data(0x0026,0x003C); //GON=1, DTE=1, D=11

  // INTERNAL REGISTER SETTING
  main_W_com_data(0x0057,0x0002); // TEST_Mode=1: into TEST mode
  main_W_com_data(0x0095,0x0001); // SET DISPLAY CLOCK AND PUMPING CLOCK TO SYNCHRONIZE
  main_W_com_data(0x0057,0x0000); // TEST_Mode=0: exit TEST mode
  //main_W_com_data(0x0021,0x0000);
  LCD_Write_COM(0x00,0x22);