LCDGFX LCD display driver  1.2.0
Lightweight graphics library for SSD1306, SSD1325, SSD1327, SSD1331, SSD1351, SH1106, SH1107, IL9163, ST7735, ST7789, ILI9341, PCD8544 displays over I2C/SPI
InterfaceSSD1351< I > Class Template Reference

Class implements interface functions to SSD1351 displays. More...

#include <lcd_ssd1351.h>

Inheritance diagram for InterfaceSSD1351< I >:
Collaboration diagram for InterfaceSSD1351< I >:

Public Member Functions

template<typename... Args>
 InterfaceSSD1351 (NanoDisplayBase< InterfaceSSD1351< I >> &base, int8_t dc, Args &&... data)
 Creates instance of interface to LCD display. More...
 
void startBlock (lcduint_t x, lcduint_t y, lcduint_t w)
 Sets block in RAM of lcd display controller to write data to. More...
 
void nextBlock ()
 Switches to the start of next RAM page for the block, specified by startBlock(). More...
 
void endBlock ()
 Closes data send operation to lcd display.
 
void setDataMode (uint8_t mode)
 Enables either data or command mode on SPI bus. More...
 
void commandStart ()
 Starts communication with LCD display in command mode. More...
 
void setRotation (uint8_t rotation)
 Sets screen orientation (rotation) More...
 
void setOffset (lcdint_t ox, lcdint_t oy)
 Sets display offset in GDRAM memory. More...
 
void setRgbMode (uint8_t mode)
 Sets RGB mode used by display controller. More...
 
void setContrast (uint8_t contrast)
 Set display contrast for all RGB channels uniformly. More...
 

Detailed Description

template<typename I>
class InterfaceSSD1351< I >

Class implements interface functions to SSD1351 displays.

Definition at line 43 of file lcd_ssd1351.h.

Constructor & Destructor Documentation

◆ InterfaceSSD1351()

template<typename I>
template<typename... Args>
InterfaceSSD1351< I >::InterfaceSSD1351 ( NanoDisplayBase< InterfaceSSD1351< I >> &  base,
int8_t  dc,
Args &&...  data 
)
inline

Creates instance of interface to LCD display.

Parameters
baseReference to base class, which represents Display
dcData/command control pin number, for i2c communication should be -1
datavariable argument list, accepted by platform interface (PlatformI2c, PlatformSpi)

Definition at line 54 of file lcd_ssd1351.h.

Member Function Documentation

◆ commandStart()

template<class I >
void InterfaceSSD1351< I >::commandStart ( )

Starts communication with LCD display in command mode.

To stop communication use m_intf.end().

Definition at line 80 of file lcd_ssd1351.inl.

◆ nextBlock()

template<class I >
void InterfaceSSD1351< I >::nextBlock ( )

Switches to the start of next RAM page for the block, specified by startBlock().

For SSD1351 it does nothing, while for sh1106 the function moves cursor to next page.

Definition at line 62 of file lcd_ssd1351.inl.

◆ setContrast()

template<class I >
void InterfaceSSD1351< I >::setContrast ( uint8_t  contrast)

Set display contrast for all RGB channels uniformly.

Sets the same contrast value for Red, Green and Blue channels.

Parameters
contrast- contrast value to set, refer to SSD1351 datasheet

Definition at line 146 of file lcd_ssd1351.inl.

◆ setDataMode()

template<class I >
void InterfaceSSD1351< I >::setDataMode ( uint8_t  mode)

Enables either data or command mode on SPI bus.

Parameters
mode1 to enable data mode, or 0 to enable command mode

Definition at line 72 of file lcd_ssd1351.inl.

◆ setOffset()

template<class I >
void InterfaceSSD1351< I >::setOffset ( lcdint_t  ox,
lcdint_t  oy 
)

Sets display offset in GDRAM memory.

Some lcd displays do not use COM0, ROW0 lines. It depends on display manufacturer. So, in this case you need to use setOffset() method to tell the library about this hardware specific. This method sets GDRAM display offset in pixels

Parameters
oxx-axis offset in pixels
oyy-axis offset in pixels

Definition at line 126 of file lcd_ssd1351.inl.

◆ setRgbMode()

template<class I >
void InterfaceSSD1351< I >::setRgbMode ( uint8_t  mode)

Sets RGB mode used by display controller.

Sets RGB mode used by display controller.

Parameters
mode0 for BGR color order, 1 for RGB color order

Definition at line 140 of file lcd_ssd1351.inl.

◆ setRotation()

template<class I >
void InterfaceSSD1351< I >::setRotation ( uint8_t  rotation)

Sets screen orientation (rotation)

Sets screen orientation (rotation):

  • 0 — normal (portrait)
  • 1 — 90° CW (landscape)
  • 2 — 180° CW (portrait inverted)
  • 3 — 270° CW (landscape inverted)
Parameters
rotationscreen rotation (0–3)

Definition at line 89 of file lcd_ssd1351.inl.

◆ startBlock()

template<class I >
void InterfaceSSD1351< I >::startBlock ( lcduint_t  x,
lcduint_t  y,
lcduint_t  w 
)

Sets block in RAM of lcd display controller to write data to.

Sets block in RAM of lcd display controller to write data to. For SSD1351 it uses horizontal addressing mode, while for sh1106 the function uses page addressing mode. Width can be specified as 0, thus the library will set the right boundary to region of RAM block to the right column of the display.

Parameters
x- column (left region)
y- row (top region)
w- width of the block in pixels to control
Warning
- this function initiates session (i2c or spi) and does not close it. To close session, please, call endBlock().

Definition at line 35 of file lcd_ssd1351.inl.


The documentation for this class was generated from the following files: