144 lines
		
	
	
		
			5.0 KiB
		
	
	
	
		
			C
		
	
	
	
			
		
		
	
	
			144 lines
		
	
	
		
			5.0 KiB
		
	
	
	
		
			C
		
	
	
	
| // Change the width and height if required (defined in portrait mode)
 | |
| // or use the constructor to over-ride defaults
 | |
| #ifndef TFT_WIDTH
 | |
|   #define TFT_WIDTH  240
 | |
| #endif
 | |
| #ifndef TFT_HEIGHT
 | |
|   #define TFT_HEIGHT 320
 | |
| #endif
 | |
| 
 | |
| #if (TFT_HEIGHT == 240) && (TFT_WIDTH == 240)
 | |
|   #define CGRAM_OFFSET
 | |
| #endif
 | |
| 
 | |
| // Delay between some initialisation commands
 | |
| #define TFT_INIT_DELAY 0x80 // Not used unless commandlist invoked
 | |
| 
 | |
| 
 | |
| // Generic commands used by TFT_eSPI.cpp
 | |
| #define TFT_NOP     0x00
 | |
| #define TFT_SWRST   0x01
 | |
| 
 | |
| #define TFT_SLPIN   0x10
 | |
| #define TFT_SLPOUT  0x11
 | |
| #define TFT_NORON   0x13
 | |
| 
 | |
| #define TFT_INVOFF  0x20
 | |
| #define TFT_INVON   0x21
 | |
| #define TFT_DISPOFF 0x28
 | |
| #define TFT_DISPON  0x29
 | |
| #define TFT_CASET   0x2A
 | |
| #define TFT_PASET   0x2B
 | |
| #define TFT_RAMWR   0x2C
 | |
| #define TFT_RAMRD   0x2E
 | |
| #define TFT_MADCTL  0x36
 | |
| #define TFT_COLMOD  0x3A
 | |
| 
 | |
| // Flags for TFT_MADCTL
 | |
| #define TFT_MAD_MY  0x80
 | |
| #define TFT_MAD_MX  0x40
 | |
| #define TFT_MAD_MV  0x20
 | |
| #define TFT_MAD_ML  0x10
 | |
| #define TFT_MAD_RGB 0x00
 | |
| #define TFT_MAD_BGR 0x08
 | |
| #define TFT_MAD_MH  0x04
 | |
| #define TFT_MAD_SS  0x02
 | |
| #define TFT_MAD_GS  0x01
 | |
| 
 | |
| #ifdef TFT_RGB_ORDER
 | |
|   #if (TFT_RGB_ORDER == 1)
 | |
|     #define TFT_MAD_COLOR_ORDER TFT_MAD_RGB
 | |
|   #else
 | |
|     #define TFT_MAD_COLOR_ORDER TFT_MAD_BGR
 | |
|   #endif
 | |
| #else
 | |
|   #ifdef CGRAM_OFFSET
 | |
|     #define TFT_MAD_COLOR_ORDER TFT_MAD_BGR
 | |
|   #else
 | |
|     #define TFT_MAD_COLOR_ORDER TFT_MAD_RGB
 | |
|   #endif
 | |
| #endif
 | |
| 
 | |
| #define TFT_IDXRD   0x00 // ILI9341 only, indexed control register read
 | |
| 
 | |
| #define ST_CMD_DELAY   0x80    // special signifier for command lists
 | |
| #define ST7789_240x240_XSTART 0
 | |
| #define ST7789_240x240_YSTART 0
 | |
| 
 | |
| // ST7789 specific commands used in init
 | |
| #define ST7789_NOP			0x00
 | |
| #define ST7789_SWRESET		0x01
 | |
| #define ST7789_RDDID		0x04
 | |
| #define ST7789_RDDST		0x09
 | |
| 
 | |
| #define ST7789_RDDPM		0x0A      // Read display power mode
 | |
| #define ST7789_RDD_MADCTL	0x0B      // Read display MADCTL
 | |
| #define ST7789_RDD_COLMOD	0x0C      // Read display pixel format
 | |
| #define ST7789_RDDIM		0x0D      // Read display image mode
 | |
| #define ST7789_RDDSM		0x0E      // Read display signal mode
 | |
| #define ST7789_RDDSR		0x0F      // Read display self-diagnostic result (ST7789V)
 | |
| 
 | |
| #define ST7789_SLPIN		0x10
 | |
| #define ST7789_SLPOUT		0x11
 | |
| #define ST7789_PTLON		0x12
 | |
| #define ST7789_NORON		0x13
 | |
| 
 | |
| #define ST7789_INVOFF		0x20
 | |
| #define ST7789_INVON		0x21
 | |
| #define ST7789_GAMSET		0x26      // Gamma set
 | |
| #define ST7789_DISPOFF		0x28
 | |
| #define ST7789_DISPON		0x29
 | |
| #define ST7789_CASET		0x2A
 | |
| #define ST7789_RASET		0x2B
 | |
| #define ST7789_RAMWR		0x2C
 | |
| #define ST7789_RGBSET		0x2D      // Color setting for 4096, 64K and 262K colors
 | |
| #define ST7789_RAMRD		0x2E
 | |
| 
 | |
| #define ST7789_PTLAR		0x30
 | |
| #define ST7789_VSCRDEF		0x33      // Vertical scrolling definition (ST7789V)
 | |
| #define ST7789_TEOFF		0x34      // Tearing effect line off
 | |
| #define ST7789_TEON			0x35      // Tearing effect line on
 | |
| #define ST7789_MADCTL		0x36      // Memory data access control
 | |
| #define ST7789_IDMOFF		0x38      // Idle mode off
 | |
| #define ST7789_IDMON		0x39      // Idle mode on
 | |
| #define ST7789_RAMWRC		0x3C      // Memory write continue (ST7789V)
 | |
| #define ST7789_RAMRDC		0x3E      // Memory read continue (ST7789V)
 | |
| #define ST7789_COLMOD		0x3A
 | |
| 
 | |
| #define ST7789_RAMCTRL		0xB0      // RAM control
 | |
| #define ST7789_RGBCTRL		0xB1      // RGB control
 | |
| #define ST7789_PORCTRL		0xB2      // Porch control
 | |
| #define ST7789_FRCTRL1		0xB3      // Frame rate control
 | |
| #define ST7789_PARCTRL		0xB5      // Partial mode control
 | |
| #define ST7789_GCTRL		0xB7      // Gate control
 | |
| #define ST7789_GTADJ		0xB8      // Gate on timing adjustment
 | |
| #define ST7789_DGMEN		0xBA      // Digital gamma enable
 | |
| #define ST7789_VCOMS		0xBB      // VCOMS setting
 | |
| #define ST7789_LCMCTRL		0xC0      // LCM control
 | |
| #define ST7789_IDSET		0xC1      // ID setting
 | |
| #define ST7789_VDVVRHEN		0xC2      // VDV and VRH command enable
 | |
| #define ST7789_VRHS			0xC3      // VRH set
 | |
| #define ST7789_VDVSET		0xC4      // VDV setting
 | |
| #define ST7789_VCMOFSET		0xC5      // VCOMS offset set
 | |
| #define ST7789_FRCTR2		0xC6      // FR Control 2
 | |
| #define ST7789_CABCCTRL		0xC7      // CABC control
 | |
| #define ST7789_REGSEL1		0xC8      // Register value section 1
 | |
| #define ST7789_REGSEL2		0xCA      // Register value section 2
 | |
| #define ST7789_PWMFRSEL		0xCC      // PWM frequency selection
 | |
| #define ST7789_PWCTRL1		0xD0      // Power control 1
 | |
| #define ST7789_VAPVANEN		0xD2      // Enable VAP/VAN signal output
 | |
| #define ST7789_CMD2EN		0xDF      // Command 2 enable
 | |
| #define ST7789_PVGAMCTRL	0xE0      // Positive voltage gamma control
 | |
| #define ST7789_NVGAMCTRL	0xE1      // Negative voltage gamma control
 | |
| #define ST7789_DGMLUTR		0xE2      // Digital gamma look-up table for red
 | |
| #define ST7789_DGMLUTB		0xE3      // Digital gamma look-up table for blue
 | |
| #define ST7789_GATECTRL		0xE4      // Gate control
 | |
| #define ST7789_SPI2EN		0xE7      // SPI2 enable
 | |
| #define ST7789_PWCTRL2		0xE8      // Power control 2
 | |
| #define ST7789_EQCTRL		0xE9      // Equalize time control
 | |
| #define ST7789_PROMCTRL		0xEC      // Program control
 | |
| #define ST7789_PROMEN		0xFA      // Program mode enable
 | |
| #define ST7789_NVMSET		0xFC      // NVM setting
 | |
| #define ST7789_PROMACT		0xFE      // Program action
 | |
| 
 |