61 virtual void setAddrWindow(uint16_t, uint16_t, uint16_t, uint16_t)
override;
63 void TFTSetupGPIO(int8_t, int8_t, int8_t, int8_t, int8_t);
67 uint16_t Xstart= 0, uint16_t Ystart=0);
81 void TFTsetScrollArea(uint16_t topFixed, uint16_t scrollArea, uint16_t bottomFixed);
119 static constexpr uint8_t
MY = 0x80;
120 static constexpr uint8_t
MX = 0x40;
121 static constexpr uint8_t
MV = 0x20;
122 static constexpr uint8_t
ML = 0x10;
123 static constexpr uint8_t
RGB = 0x00;
124 static constexpr uint8_t
BGR = 0x08;
125 static constexpr uint8_t
MH = 0x04;
Class to control GC9D01 TFT basic functionality.
Definition GC9D01_TFT_LCD_RDL.hpp:20
int _spiDev
Definition GC9D01_TFT_LCD_RDL.hpp:107
static constexpr uint8_t GC9D01_IFACE
Definition GC9D01_TFT_LCD_RDL.hpp:182
static constexpr uint8_t GC9D01_MADCTL
Definition GC9D01_TFT_LCD_RDL.hpp:151
GC9D01_TFT()
Constructor for class GC9D01_TFT.
Definition GC9D01_TFT_LCD_RDL.cpp:12
rdlib::Return_Codes_e TFTDataCommandPin(void)
: Method for Data or Command pin setup
Definition GC9D01_TFT_LCD_RDL.cpp:136
static constexpr uint8_t GC9D01_SPI2DATA
Definition GC9D01_TFT_LCD_RDL.hpp:180
void TFTchangeInvertMode(bool m)
Toggle the invert mode.
Definition GC9D01_TFT_LCD_RDL.cpp:302
static constexpr uint8_t GC9D01_VREG1B_CTRL
Definition GC9D01_TFT_LCD_RDL.hpp:168
static constexpr uint8_t GC9D01_GETLINE
Definition GC9D01_TFT_LCD_RDL.hpp:156
bool _resetPinOn
Definition GC9D01_TFT_LCD_RDL.hpp:111
static constexpr uint8_t GC9D01_CONTINUE
Definition GC9D01_TFT_LCD_RDL.hpp:154
static constexpr uint8_t GC9D01_SETBRIGHT
Definition GC9D01_TFT_LCD_RDL.hpp:157
static constexpr uint8_t GC9D01_INREGEN2
Definition GC9D01_TFT_LCD_RDL.hpp:184
void TFTsetScrollArea(uint16_t topFixed, uint16_t scrollArea, uint16_t bottomFixed)
This method defines the Vertical Scrolling Area of the display where:
Definition GC9D01_TFT_LCD_RDL.cpp:274
static constexpr uint8_t GC9D01_TEARSET
Definition GC9D01_TFT_LCD_RDL.hpp:155
static constexpr uint8_t GC9D01_RASET
Definition GC9D01_TFT_LCD_RDL.hpp:145
PowerState_e
GC9D01 power states based on the power control flow chart. These states combine the modes: Normal/Par...
Definition GC9D01_TFT_LCD_RDL.hpp:35
static constexpr uint8_t GC9D01_TEON
Definition GC9D01_TFT_LCD_RDL.hpp:150
static constexpr uint8_t GC9D01_RDID3
Definition GC9D01_TFT_LCD_RDL.hpp:173
void TFTsetBrightness(uint8_t level)
Set display brightness (0–255).
Definition GC9D01_TFT_LCD_RDL.cpp:839
static constexpr uint8_t GC9D01_NORON
Definition GC9D01_TFT_LCD_RDL.hpp:136
void TFTSetupResetPin(int8_t rst)
sets up TFT GPIO reset pin
Definition GC9D01_TFT_LCD_RDL.cpp:823
void TFTsetRotation(display_rotate_e r)
: change rotation of display.
Definition GC9D01_TFT_LCD_RDL.cpp:400
int _spiFlags
Definition GC9D01_TFT_LCD_RDL.hpp:110
static constexpr uint8_t GC9D01_TEOFF
Definition GC9D01_TFT_LCD_RDL.hpp:149
uint16_t HighFreqDelayGet(void)
Freq delay used in SW SPI getter, uS delay used in SW SPI method.
Definition GC9D01_TFT_LCD_RDL.cpp:497
rdlib::Return_Codes_e TFTClock_Data_ChipSelect_Pins(void)
: Method for Clock, data and chip select pin setup routine for software SPI.
Definition GC9D01_TFT_LCD_RDL.cpp:156
int _spiChan
Definition GC9D01_TFT_LCD_RDL.hpp:108
void TFTsetPowerMode(PowerState_e m)
Set the power mode of the display.
Definition GC9D01_TFT_LCD_RDL.cpp:333
uint16_t _widthStartTFT
Definition GC9D01_TFT_LCD_RDL.hpp:100
rdlib::Return_Codes_e TFTInitSPI(uint16_t CommDelay, int gpioDev)
intialise PCBtype and SPI, Software SPI
Definition GC9D01_TFT_LCD_RDL.cpp:486
static constexpr uint8_t GC9D01_RAMWR
Definition GC9D01_TFT_LCD_RDL.hpp:146
static constexpr uint8_t GC9D01_INVERSION
Definition GC9D01_TFT_LCD_RDL.hpp:181
static constexpr uint8_t GC9D01_SETCTRL
Definition GC9D01_TFT_LCD_RDL.hpp:158
void DualGatecmdInitSequence(void)
GC9D01 init command sequence for Dual Gate variant Dual Gate variants include 160x160 and 120x160 res...
Definition GC9D01_TFT_LCD_RDL.cpp:551
static constexpr uint8_t GC9D01_DISPON
Definition GC9D01_TFT_LCD_RDL.hpp:138
static constexpr uint8_t GC9D01_SLPIN
Definition GC9D01_TFT_LCD_RDL.hpp:133
static constexpr uint8_t GC9D01_INVOFF
Definition GC9D01_TFT_LCD_RDL.hpp:142
PowerState_e _currentPowerState
Definition GC9D01_TFT_LCD_RDL.hpp:95
static constexpr uint8_t GC9D01_DUAL_SINGLE
Definition GC9D01_TFT_LCD_RDL.hpp:164
static constexpr uint8_t GC9D01_PTLAR
Definition GC9D01_TFT_LCD_RDL.hpp:147
int _spiBaud
Definition GC9D01_TFT_LCD_RDL.hpp:109
virtual void setAddrWindow(uint16_t, uint16_t, uint16_t, uint16_t) override
SPI displays set an address window rectangle for blitting pixels.
Definition GC9D01_TFT_LCD_RDL.cpp:513
rdlib::Return_Codes_e TFTGC9D01Initialize(void)
init routine for GC9D01 controller
Definition GC9D01_TFT_LCD_RDL.cpp:230
static constexpr uint8_t GC9D01_GAMMA3
Definition GC9D01_TFT_LCD_RDL.hpp:177
Resolution_e
GC9D01 panel resolution and gate configuration.
Definition GC9D01_TFT_LCD_RDL.hpp:50
static constexpr uint8_t GC9D01_DISPOFF
Definition GC9D01_TFT_LCD_RDL.hpp:137
void TFTInitScreenSize(uint16_t w=160, uint16_t h=160, Resolution_e r=Resolution_e::RGB160x160_DualGate, uint16_t Xstart=0, uint16_t Ystart=0)
initialise the variables that define the size of the screen
Definition GC9D01_TFT_LCD_RDL.cpp:443
static constexpr uint8_t GC9D01_BLANK_PORCH_CTRL
Definition GC9D01_TFT_LCD_RDL.hpp:162
static constexpr uint8_t GC9D01_VSCRDEF
Definition GC9D01_TFT_LCD_RDL.hpp:148
static constexpr uint8_t GC9D01_VREG2A_CTRL
Definition GC9D01_TFT_LCD_RDL.hpp:169
static constexpr uint8_t GC9D01_TEWC
Definition GC9D01_TFT_LCD_RDL.hpp:161
static constexpr uint8_t GC9D01_GAMMA4
Definition GC9D01_TFT_LCD_RDL.hpp:178
uint16_t _GC9D01_X_Offset
Definition GC9D01_TFT_LCD_RDL.hpp:104
rdlib::Return_Codes_e TFTResetPin(void)
Method for Hardware Reset pin control.
Definition GC9D01_TFT_LCD_RDL.cpp:110
rdlib::Return_Codes_e TFTPowerDown(void)
Call when powering down TFT.
Definition GC9D01_TFT_LCD_RDL.cpp:24
static constexpr uint8_t GC9D01_RDDID
Definition GC9D01_TFT_LCD_RDL.hpp:130
static constexpr uint8_t GC9D01_PTLON
Definition GC9D01_TFT_LCD_RDL.hpp:135
static constexpr uint8_t GC9D01_RDID2
Definition GC9D01_TFT_LCD_RDL.hpp:172
void TFTsetScrollStart(uint16_t vsp)
This method is used together with the setScrollDefinition.
Definition GC9D01_TFT_LCD_RDL.cpp:289
uint16_t _GC9D01_Y_Offset_Start
Definition GC9D01_TFT_LCD_RDL.hpp:103
static constexpr uint8_t GC9D01_IDLEON
Definition GC9D01_TFT_LCD_RDL.hpp:140
static constexpr uint8_t GC9D01_INREGEN1
Definition GC9D01_TFT_LCD_RDL.hpp:183
static constexpr uint8_t GC9D01_RGB_CTRL
Definition GC9D01_TFT_LCD_RDL.hpp:160
display_rotate_e displayRotate
Definition GC9D01_TFT_LCD_RDL.hpp:57
static constexpr uint8_t GC9D01_POWER_CTRL
Definition GC9D01_TFT_LCD_RDL.hpp:166
uint16_t _GC9D01_Y_Offset
Definition GC9D01_TFT_LCD_RDL.hpp:105
void TFTScrollModeLeave(void)
Scroll Mode can be left ,by the Normal Display Mode ON cmd.
Definition GC9D01_TFT_LCD_RDL.cpp:296
void SingleGatecmdInitSequence(void)
GC9D01 init command sequence for Single Gate variant Single Gate variants include 80x160 and 40x160 r...
Definition GC9D01_TFT_LCD_RDL.cpp:681
static constexpr uint8_t GC9D01_GAMMA1
Definition GC9D01_TFT_LCD_RDL.hpp:175
Resolution_e _currentResolution
Definition GC9D01_TFT_LCD_RDL.hpp:96
static constexpr uint8_t GC9D01_RDID1
Definition GC9D01_TFT_LCD_RDL.hpp:171
static constexpr uint8_t GC9D01_COLMOD
Definition GC9D01_TFT_LCD_RDL.hpp:153
void HighFreqDelaySet(uint16_t)
Freq delay used in SW SPI setter, uS delay used in SW SPI method.
Definition GC9D01_TFT_LCD_RDL.cpp:503
static constexpr uint8_t GC9D01_VSCRSADD
Definition GC9D01_TFT_LCD_RDL.hpp:152
static constexpr uint8_t GC9D01_FUNCTION_CTRL
Definition GC9D01_TFT_LCD_RDL.hpp:163
void TFTSetupGPIO(int8_t, int8_t, int8_t, int8_t, int8_t)
sets up TFT GPIO for software SPI
Definition GC9D01_TFT_LCD_RDL.cpp:212
static constexpr uint8_t GC9D01_IDLEOFF
Definition GC9D01_TFT_LCD_RDL.hpp:139
void TFTenableDisplay(bool m)
enable /disable display mode
Definition GC9D01_TFT_LCD_RDL.cpp:316
static constexpr uint8_t GC9D01_VREG1A_CTRL
Definition GC9D01_TFT_LCD_RDL.hpp:167
uint16_t _GC9D01_X_Offset_Start
Definition GC9D01_TFT_LCD_RDL.hpp:102
static constexpr uint8_t GC9D01_SWRESET
Definition GC9D01_TFT_LCD_RDL.hpp:129
static constexpr uint8_t GC9D01_INVON
Definition GC9D01_TFT_LCD_RDL.hpp:143
uint16_t _heightStartTFT
Definition GC9D01_TFT_LCD_RDL.hpp:101
bool _displayOn
Definition GC9D01_TFT_LCD_RDL.hpp:97
static constexpr uint8_t GC9D01_SLPOUT
Definition GC9D01_TFT_LCD_RDL.hpp:134
static constexpr uint8_t GC9D01_GAMMA2
Definition GC9D01_TFT_LCD_RDL.hpp:176
static constexpr uint8_t GC9D01_RDDST
Definition GC9D01_TFT_LCD_RDL.hpp:131
const uint16_t _sleepDelay
Definition GC9D01_TFT_LCD_RDL.hpp:98
static constexpr uint8_t GC9D01_CASET
Definition GC9D01_TFT_LCD_RDL.hpp:144
Class to handle fonts and graphics of color 16 bit display.
Definition color16_graphics_RDL.hpp:23
display_rotate_e
Definition color16_graphics_RDL.hpp:73
@ Degrees_0
Definition color16_graphics_RDL.hpp:74
Library header file for 16 bit (565) color graphics library. This file handles the graphic methods.
Return_Codes_e
Definition common_data_RDL.hpp:22
MADCTL bit flags for register GC9D01_MADCTL (0x36).
Definition GC9D01_TFT_LCD_RDL.hpp:118
static constexpr uint8_t MY
Definition GC9D01_TFT_LCD_RDL.hpp:119
static constexpr uint8_t MH
Definition GC9D01_TFT_LCD_RDL.hpp:125
static constexpr uint8_t MV
Definition GC9D01_TFT_LCD_RDL.hpp:121
static constexpr uint8_t RGB
Definition GC9D01_TFT_LCD_RDL.hpp:123
static constexpr uint8_t MX
Definition GC9D01_TFT_LCD_RDL.hpp:120
static constexpr uint8_t BGR
Definition GC9D01_TFT_LCD_RDL.hpp:124
static constexpr uint8_t ML
Definition GC9D01_TFT_LCD_RDL.hpp:122