33 #include "v2/lcd/base/display.h" 53 template <
typename... Args>
137 const int8_t m_dc = -1;
139 uint8_t m_rotation = 0x00;
140 uint8_t m_rgb_bit = 0b00000000;
197 void beginController();
202 void endController();
204 #ifdef CONFIG_LCDGFX_PLATFORM_SPI 218 explicit DisplayST7735_128x128x16_SPI(int8_t rstPin,
const SPlatformSpiConfig &config = {-1, {-1}, -1, 0U, -1, -1})
220 , m_spi(*
this, config.dc,
222 config.busId, {config.cs}, config.
dc, config.frequency ?: static_cast<uint32_t>(8000000), config.scl, config.sda})
229 void begin()
override;
256 template <
typename... Args>
259 , m_spi(*this, dcPin, data...)
305 void beginController();
310 void endController();
312 #ifdef CONFIG_LCDGFX_PLATFORM_SPI 326 explicit DisplayST7735_80x160x16_SPI(int8_t rstPin,
const SPlatformSpiConfig &config = {-1, {-1}, -1, 0U, -1, -1})
328 , m_spi(*
this, config.dc,
330 config.busId, {config.cs}, config.
dc, config.frequency ?: static_cast<uint32_t>(8000000), config.scl, config.sda})
337 void begin()
override;
364 template <
typename... Args>
367 , m_spi(*this, dcPin, data...)
413 void beginController();
418 void endController();
420 #ifdef CONFIG_LCDGFX_PLATFORM_SPI 434 explicit DisplayST7735_128x160x16_SPI(int8_t rstPin,
const SPlatformSpiConfig &config = {-1, {-1}, -1, 0U, -1, -1})
436 , m_spi(*
this, config.dc,
438 config.busId, {config.cs}, config.
dc, config.frequency ?: static_cast<uint32_t>(8000000), config.scl, config.sda})
445 void begin()
override;
472 template <
typename... Args>
475 , m_spi(*this, dcPin, data...)
500 #include "lcd_st7735.inl" void begin() override
Initializes ST7735 lcd in 16-bit mode.
void endBlock()
Closes data send operation to lcd display.
void end() override
Closes connection to display.
uint8_t lcduint_t
internal int type, used by the library.
int8_t m_rstPin
indicates hardware reset pin used, -1 if it is not required
DisplayST7735_128x160x16(I &intf, int8_t rstPin)
Creates instance of ST7735 128x160x16 controller class for 16-bit mode.
void setDataMode(uint8_t mode)
Enables either data or command mode on SPI bus.
void commandStart()
Starts communication with LCD display in command mode.
int8_t lcdint_t
internal int type, used by the library.
Class implements basic functions for 16-bit mode of ST7735-based displays.
SSD1306 HAL IO communication functions.
Template class implements ST7735 80x160x16 lcd display in 16 bit mode over custom SPI implementation ...
Class implements basic functions for 16-bit mode of ST7735-based displays.
void setOffset(lcdint_t ox, lcdint_t oy)
Sets display offset in GDRAM memory.
void setRotation(uint8_t rotation)
Sets screen orientation (rotation)
void begin() override
Initializes ST7735 lcd in 16-bit mode.
void end() override
Closes connection to display.
void startBlock(lcduint_t x, lcduint_t y, lcduint_t w)
Sets block in RAM of lcd display controller to write data to.
Template class implements ST7735 128x160x16 lcd display in 16 bit mode over custom SPI implementation...
Class implements basic functions for 16-bit mode of ST7735-based displays.
DisplayST7735_80x160x16_CustomSPI(int8_t rstPin, int8_t dcPin, Args &&... data)
Inits 80x160x16 lcd display over spi (based on ST7735 controller): 16-bit mode.
InterfaceST7735(NanoDisplayBase< InterfaceST7735< I >> &base, int8_t dc, Args &&... data)
Creates instance of interface to LCD display.
DisplayST7735_128x128x16(I &intf, int8_t rstPin)
Creates instance of ST7735 128x128x16 controller class for 16-bit mode.
void setRgbMode(uint8_t mode)
Sets RGB mode used by display controller.
DisplayST7735_128x128x16_CustomSPI(int8_t rstPin, int8_t dcPin, Args &&... data)
Inits 128x128x16 lcd display over spi (based on ST7735 controller): 16-bit mode.
DisplayST7735_80x160x16(I &intf, int8_t rstPin)
Creates instance of ST7735 80x160x16 controller class for 16-bit mode.
DisplayST7735x16(I &intf, int8_t rstPin)
Creates instance of ST7735 controller class for 16-bit mode.
Class implements interface functions to ST7735 displays.
DisplayST7735_128x160x16_CustomSPI(int8_t rstPin, int8_t dcPin, Args &&... data)
Inits 128x160x16 lcd display over spi (based on ST7735 controller): 16-bit mode.
NanoCanvasOps provides operations for drawing in memory buffer.
Class implements basic display operations for the library: It stores reference to communication inter...
void begin() override
Initializes ST7735 lcd in 16-bit mode.
NanoDisplayOps16 is template class for 16-bit operations.
void nextBlock()
Switches to the start of next RAM page for the block, specified by startBlock().
Class implements basic functions for 16-bit mode of ST7735-based displays.
void end() override
Closes connection to display.
Template class implements ST7735 128x128x16 lcd display in 16 bit mode over custom SPI implementation...