124 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			C
		
	
	
	
			
		
		
	
	
			124 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			C
		
	
	
	
| 
 | |
| // This is the command sequence that initialises the ILI9341 driver
 | |
| //
 | |
| // This setup information uses simple 8 bit SPI writecommand() and writedata() functions
 | |
| //
 | |
| // See ST7735_Setup.h file for an alternative format
 | |
| 
 | |
| {
 | |
|   writecommand(0xEF);
 | |
|   writedata(0x03);
 | |
|   writedata(0x80);
 | |
|   writedata(0x02);
 | |
| 
 | |
|   writecommand(0xCF);
 | |
|   writedata(0x00);
 | |
|   writedata(0XC1);
 | |
|   writedata(0X30);
 | |
| 
 | |
|   writecommand(0xED);
 | |
|   writedata(0x64);
 | |
|   writedata(0x03);
 | |
|   writedata(0X12);
 | |
|   writedata(0X81);
 | |
| 
 | |
|   writecommand(0xE8);
 | |
|   writedata(0x85);
 | |
|   writedata(0x00);
 | |
|   writedata(0x78);
 | |
| 
 | |
|   writecommand(0xCB);
 | |
|   writedata(0x39);
 | |
|   writedata(0x2C);
 | |
|   writedata(0x00);
 | |
|   writedata(0x34);
 | |
|   writedata(0x02);
 | |
| 
 | |
|   writecommand(0xF7);
 | |
|   writedata(0x20);
 | |
| 
 | |
|   writecommand(0xEA);
 | |
|   writedata(0x00);
 | |
|   writedata(0x00);
 | |
| 
 | |
|   writecommand(ILI9341_PWCTR1);    //Power control
 | |
|   writedata(0x23);   //VRH[5:0]
 | |
| 
 | |
|   writecommand(ILI9341_PWCTR2);    //Power control
 | |
|   writedata(0x10);   //SAP[2:0];BT[3:0]
 | |
| 
 | |
|   writecommand(ILI9341_VMCTR1);    //VCM control
 | |
|   writedata(0x3e);
 | |
|   writedata(0x28);
 | |
| 
 | |
|   writecommand(ILI9341_VMCTR2);    //VCM control2
 | |
|   writedata(0x86);  //--
 | |
| 
 | |
|   writecommand(ILI9341_MADCTL);    // Memory Access Control
 | |
| #ifdef M5STACK
 | |
|   writedata(TFT_MAD_MY | TFT_MAD_MV | TFT_MAD_COLOR_ORDER); // Rotation 0 (portrait mode)
 | |
| #else
 | |
|   writedata(TFT_MAD_MX | TFT_MAD_COLOR_ORDER); // Rotation 0 (portrait mode)
 | |
| #endif
 | |
| 
 | |
|   writecommand(ILI9341_PIXFMT);
 | |
|   writedata(0x55);
 | |
| 
 | |
|   writecommand(ILI9341_FRMCTR1);
 | |
|   writedata(0x00);
 | |
|   writedata(0x13); // 0x18 79Hz, 0x1B default 70Hz, 0x13 100Hz
 | |
| 
 | |
|   writecommand(ILI9341_DFUNCTR);    // Display Function Control
 | |
|   writedata(0x08);
 | |
|   writedata(0x82);
 | |
|   writedata(0x27);
 | |
| 
 | |
|   writecommand(0xF2);    // 3Gamma Function Disable
 | |
|   writedata(0x00);
 | |
| 
 | |
|   writecommand(ILI9341_GAMMASET);    //Gamma curve selected
 | |
|   writedata(0x01);
 | |
| 
 | |
|   writecommand(ILI9341_GMCTRP1);    //Set Gamma
 | |
|   writedata(0x0F);
 | |
|   writedata(0x31);
 | |
|   writedata(0x2B);
 | |
|   writedata(0x0C);
 | |
|   writedata(0x0E);
 | |
|   writedata(0x08);
 | |
|   writedata(0x4E);
 | |
|   writedata(0xF1);
 | |
|   writedata(0x37);
 | |
|   writedata(0x07);
 | |
|   writedata(0x10);
 | |
|   writedata(0x03);
 | |
|   writedata(0x0E);
 | |
|   writedata(0x09);
 | |
|   writedata(0x00);
 | |
| 
 | |
|   writecommand(ILI9341_GMCTRN1);    //Set Gamma
 | |
|   writedata(0x00);
 | |
|   writedata(0x0E);
 | |
|   writedata(0x14);
 | |
|   writedata(0x03);
 | |
|   writedata(0x11);
 | |
|   writedata(0x07);
 | |
|   writedata(0x31);
 | |
|   writedata(0xC1);
 | |
|   writedata(0x48);
 | |
|   writedata(0x08);
 | |
|   writedata(0x0F);
 | |
|   writedata(0x0C);
 | |
|   writedata(0x31);
 | |
|   writedata(0x36);
 | |
|   writedata(0x0F);
 | |
| 
 | |
|   writecommand(ILI9341_SLPOUT);    //Exit Sleep
 | |
|  
 | |
|   end_tft_write();
 | |
|   delay(120);
 | |
|   begin_tft_write();
 | |
|   
 | |
|   writecommand(ILI9341_DISPON);    //Display on
 | |
| 
 | |
| } |