|
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
|
Class implements interface functions to SH1106 displays. More...
#include <lcd_sh1106.h>


Public Member Functions | |
| template<typename... Args> | |
| InterfaceSH1106 (NanoDisplayBase< InterfaceSH1106< 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 | setStartLine (uint8_t line) |
| Sets start line in GDRAM to begin display content with. More... | |
| uint8_t | getStartLine () |
| Returns the current start line offset in GDRAM. More... | |
| void | normalMode () |
| Switches display back to normal (non-inverted) mode. More... | |
| void | invertMode () |
| Switches display to inverted mode. More... | |
| void | setContrast (uint8_t contrast) |
| Sets display contrast (brightness level). More... | |
| void | displayOff () |
| Turns off the display (enters sleep mode). More... | |
| void | displayOn () |
| Turns on the display, resuming normal output. More... | |
| void | flipHorizontal (uint8_t mode) |
| Performs horizontal flip. More... | |
| void | flipVertical (uint8_t mode) |
| Performs vertical flip. More... | |
Class implements interface functions to SH1106 displays.
Definition at line 43 of file lcd_sh1106.h.
|
inline |
Creates instance of interface to LCD display.
| base | Reference to base class, which represents Display |
| dc | Data/command control pin number, for i2c communication should be -1 |
| data | variable argument list, accepted by platform interface (PlatformI2c, PlatformSpi) |
Definition at line 54 of file lcd_sh1106.h.
| void InterfaceSH1106< I >::commandStart | ( | ) |
Starts communication with LCD display in command mode.
To stop communication use m_intf.end().
Definition at line 74 of file lcd_sh1106.inl.
| void InterfaceSH1106< I >::displayOff | ( | ) |
Turns off the display (enters sleep mode).
Contents of display RAM are preserved.
Definition at line 118 of file lcd_sh1106.inl.
| void InterfaceSH1106< I >::displayOn | ( | ) |
Turns on the display, resuming normal output.
Definition at line 125 of file lcd_sh1106.inl.
| void InterfaceSH1106< I >::flipHorizontal | ( | uint8_t | mode | ) |
Performs horizontal flip.
Performs horizontal flip. To rotate the display by 180°, use both flipHorizontal() and flipVertical().
| mode | 0 to disable horizontal flip, 1 to enable |
Definition at line 132 of file lcd_sh1106.inl.
| void InterfaceSH1106< I >::flipVertical | ( | uint8_t | mode | ) |
Performs vertical flip.
Performs vertical flip. To rotate the display by 180°, use both flipHorizontal() and flipVertical().
| mode | 0 to disable vertical flip, 1 to enable |
Definition at line 139 of file lcd_sh1106.inl.
| uint8_t InterfaceSH1106< I >::getStartLine | ( | ) |
Returns the current start line offset in GDRAM.
Definition at line 91 of file lcd_sh1106.inl.
| void InterfaceSH1106< I >::invertMode | ( | ) |
Switches display to inverted mode.
In this mode, lit pixels become dark and dark pixels become lit.
Definition at line 103 of file lcd_sh1106.inl.
| void InterfaceSH1106< I >::nextBlock | ( | ) |
Switches to the start of next RAM page for the block, specified by startBlock().
For SSD1306 it does nothing, while for SH1106 the function moves cursor to next page.
Definition at line 55 of file lcd_sh1106.inl.
| void InterfaceSH1106< I >::normalMode | ( | ) |
Switches display back to normal (non-inverted) mode.
Definition at line 96 of file lcd_sh1106.inl.
| void InterfaceSH1106< I >::setContrast | ( | uint8_t | contrast | ) |
Sets display contrast (brightness level).
Higher values produce brighter output.
| contrast | contrast value (0–255), refer to SH1106 datasheet |
Definition at line 110 of file lcd_sh1106.inl.
| void InterfaceSH1106< I >::setDataMode | ( | uint8_t | mode | ) |
Enables either data or command mode on SPI bus.
| mode | 1 to enable data mode, or 0 to enable command mode |
Definition at line 66 of file lcd_sh1106.inl.
| void InterfaceSH1106< I >::setStartLine | ( | uint8_t | line | ) |
Sets start line in GDRAM to begin display content with.
Used for hardware scrolling effects.
| line | start line in range 0–63 |
Definition at line 83 of file lcd_sh1106.inl.
| void InterfaceSH1106< 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 SH1106 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.
| x | - column (left region) |
| y | - row (top region) |
| w | - width of the block in pixels to control |
Definition at line 35 of file lcd_sh1106.inl.