33 #include "v2/lcd/base/display.h" 54 template <
typename... Args>
146 void copyBlock(uint8_t left, uint8_t top, uint8_t right, uint8_t bottom, uint8_t newLeft, uint8_t newTop);
156 const uint8_t m_bits;
157 const int8_t m_dc = -1;
159 uint8_t m_rotation = 0x00;
214 void beginController();
219 void endController();
221 #ifdef CONFIG_LCDGFX_PLATFORM_SPI 235 explicit DisplaySSD1331_96x64x8_SPI(int8_t rstPin,
const SPlatformSpiConfig &config = {-1, {-1}, -1, 0U, -1, -1})
237 , m_spi(8, *
this, config.dc,
239 config.busId, {config.cs}, config.
dc, config.frequency ?: static_cast<uint32_t>(6000000), config.scl, config.sda})
246 void begin()
override;
273 template <
typename... Args>
276 , m_spi(8, *this, dcPin, data...)
354 void beginController();
359 void endController();
361 #ifdef CONFIG_LCDGFX_PLATFORM_SPI 375 explicit DisplaySSD1331_96x64x16_SPI(int8_t rstPin,
const SPlatformSpiConfig &config = {-1, {-1}, -1, 0U, -1, -1})
377 , m_spi(16, *
this, config.dc,
379 config.busId, {config.cs}, config.
dc, config.frequency ?: static_cast<uint32_t>(6000000), config.scl, config.sda})
386 void begin()
override;
413 template <
typename... Args>
416 , m_spi(16, *this, dcPin, data...)
441 #include "lcd_ssd1331.inl"
uint8_t lcduint_t
internal int type, used by the library.
DisplaySSD1331x16(I &intf, int8_t rstPin)
Creates instance of SSD1331 controller class for 16-bit mode.
int8_t m_rstPin
indicates hardware reset pin used, -1 if it is not required
void setContrast(uint8_t contrast)
Set display contrast for all RGB channels uniformly.
void copyBlock(uint8_t left, uint8_t top, uint8_t right, uint8_t bottom, uint8_t newLeft, uint8_t newTop)
Copies block in GDRAM to new position using hardware accelerator features.
void begin() override
Initializes SSD1331 lcd in 16-bit mode.
int8_t lcdint_t
internal int type, used by the library.
Template class implements SSD1331 96x64x8 lcd display in 8 bit mode over custom SPI implementation (u...
SSD1306 HAL IO communication functions.
InterfaceSSD1331(uint8_t bits, NanoDisplayBase< InterfaceSSD1331< I >> &base, int8_t dc, Args &&... data)
Creates instance of interface to LCD display.
void end() override
Closes connection to display.
DisplaySSD1331_96x64x16(I &intf, int8_t rstPin)
Creates instance of SSD1331 96x64x16 controller class for 16-bit mode.
void end() override
Closes connection to display.
void setRotation(uint8_t rotation)
Sets screen orientation (rotation)
void startBlock(lcduint_t x, lcduint_t y, lcduint_t w)
Sets block in RAM of lcd display controller to write data to.
Class implements basic functions for 16-bit mode of SSD1331-based displays.
void drawLine(lcdint_t x1, lcdint_t y1, lcdint_t x2, lcdint_t y2, uint16_t color)
Draws line using hardware accelerator capabilities.
DisplaySSD1331x8(I &intf, int8_t rstPin)
Creates instance of SSD1331 controller class for 8-bit mode.
Class implements basic functions for 8-bit mode of SSD1331-based displays.
void commandStart()
Starts communication with LCD display in command mode.
void begin() override
Initializes SSD1331 lcd in 8-bit mode.
Template class implements SSD1331 96x64x16 lcd display in 16 bit mode over custom SPI implementation ...
DisplaySSD1331_96x64x8(I &intf, int8_t rstPin)
Creates instance of SSD1331 96x64x8 controller class for 8-bit mode.
DisplaySSD1331_96x64x16_CustomSPI(int8_t rstPin, int8_t dcPin, Args &&... data)
Inits 96x64x16 lcd display over spi (based on SSD1331 controller): 16-bit mode.
Class implements basic functions for 8-bit mode of SSD1331-based displays.
int8_t m_rstPin
indicates hardware reset pin used, -1 if it is not required
NanoCanvasOps provides operations for drawing in memory buffer.
void setDataMode(uint8_t mode)
Enables either data or command mode on SPI bus.
Class implements basic display operations for the library: It stores reference to communication inter...
void nextBlock()
Switches to the start of next RAM page for the block, specified by startBlock().
void endBlock()
Closes data send operation to lcd display.
NanoDisplayOps16 is template class for 16-bit operations.
DisplaySSD1331_96x64x8_CustomSPI(int8_t rstPin, int8_t dcPin, Args &&... data)
Inits 96x64x8 lcd display over spi (based on SSD1331 controller): 8-bit mode.
Class implements interface functions to SSD1331 displays.
Class implements basic functions for 16-bit mode of SSD1331-based displays.
NanoDisplayOps8 is template class for 8-bit operations.