|
| | SegDriver_PCF85176 (SegTransportI2C &transport, uint8_t address=DEFAULT_PCX85_I2C_ADDRESS, uint8_t subaddress=DEFAULT_SUBADDRESS) |
| | Constructor for PCF85176 segment driver.
|
| |
| | SegDriver_PCx85 (SegTransportI2C &transport, uint8_t address, uint8_t subaddress) |
| | Constructor for PCx85 segment driver.
|
| |
| virtual void | init () override |
| | Logical display sections that can be targeted by higher-level rendering logic.
|
| |
| void | bankSelect (uint8_t input, uint8_t output) |
| | Select bank for input and output.
|
| |
| void | blink (BlinkFrequency blink=BLINK_FREQUENCY_OFF, BlinkMode mode=BLINK_MODE_NORMAL) |
| | Set blink frequency and mode.
|
| |
| void | on () override |
| | Turn the display on.
|
| |
| void | off () override |
| | Turn the display off.
|
| |
| void | command (uint8_t command) override |
| | Send RAW command to controller.
|
| |
| void | flush (uint8_t startAddr, uint8_t length) override |
| | Flush specific range of buffered changes to the display.
|
| |
| virtual void | flush () |
| | Flush all buffered changes to the display.
|
| |
| virtual void | flush (uint8_t startAddr, uint8_t length) |
| | Flush specific range of buffered changes to the display.
|
| |
| | SegLCDLib ()=default |
| | Default constructor.
|
| |
| virtual | ~SegLCDLib () |
| | Virtual destructor to ensure proper cleanup in derived classes.
|
| |
| | SegLCDLib (const SegLCDLib &)=delete |
| | Disable copying to keep the RAM buffer uniquely owned.
|
| |
| SegLCDLib & | operator= (const SegLCDLib &)=delete |
| |
| virtual void | clear () |
| | Clear all visible segments on the display.
|
| |
| void | home () |
| | Set cursor to 0, 0 without clear display.
|
| |
| virtual void | setCursor (uint8_t row, uint8_t col) |
| | Set cursor on exact digit.
|
| |
| virtual size_t | write (uint8_t) |
| |
| size_t | write (const char *str) |
| | Write a null-terminated string to the display.
|
| |
| size_t | write (const char *buffer, size_t size) |
| | Write a buffer of characters to the display.
|
| |
| void | initBacklight (SegBacklight *backlight, BacklightMode backlightMode=BACKLIGHT_DIGITAL) |
| | Initialize backlight control.
|
| |
| virtual void | setBacklight (bool state) |
| | Set backlight state (on/off).
|
| |
| virtual void | setBacklight (int brightness) |
| | Set backlight brightness (0-255).
|
| |
| void | setAutoFlush (bool enable) |
| | Enable or disable autoflush mode.
|
| |
| bool | getAutoFlush () const |
| | Get current autoflush state.
|
| |
| const uint8_t * | getRamBuffer () const |
| | Get pointer to internal RAM buffer (read-only).
|
| |
| size_t | getRamBufferSize () const |
| | Get size of internal RAM buffer in bytes.
|
| |
|
| void | _sendCommand (uint8_t command, bool last=true) override |
| |
| void | _writeRam (uint8_t *data, size_t length, uint8_t address=0) override |
| | Low-level method to write a data buffer to display RAM.
|
| |
| void | _writeRam (uint8_t data, uint8_t address=0) |
| | Low-level method to write a single byte to display RAM.
|
| |
| virtual void | _writeRam (uint8_t *data, size_t length, uint8_t address)=0 |
| | Low-level method to write a data buffer to display RAM.
|
| |
| void | _setMode (ModeStatus status, ModeDrive drive=MODE_DRIVE_14, ModeBias bias=MODE_BIAS_13) |
| | Set the mode of the display.
|
| |
| void | _writeRam (uint8_t data, uint8_t address=0) |
| | Low-level method to write a single byte to display RAM.
|
| |
| virtual void | _writeRam (uint8_t *data, size_t length, uint8_t address)=0 |
| | Low-level method to write a data buffer to display RAM.
|
| |
| void | _setFlag (uint8_t mask) |
| | Set a specific flag bit.
|
| |
| void | _clearFlag (uint8_t mask) |
| | Clear a specific flag bit.
|
| |
| bool | _isFlagSet (uint8_t mask) const |
| | Check if a specific flag bit is set.
|
| |
| void | _clearAllFlags () |
| | Clear all flags.
|
| |
| bool | _dotWrite (uint8_t ch, int8_t minCol, int8_t maxCol, int8_t ramOffset) |
| | Write decimal point.
|
| |
| void | _dotClearCur (int8_t minCol, int8_t maxCol) |
| | Clear current decimal (overwrite).
|
| |
| void | _colonClearIfNotFlagged (uint8_t ch, uint8_t colonCol, uint8_t colonFlag) |
| | Clear colon if its flag is not set.
|
| |
| virtual void | _setDecimal (uint8_t, uint8_t, bool) |
| | Virtual method for setting decimal point.
|
| |
| virtual void | _setColon (uint8_t, uint8_t, bool) |
| | Virtual method for setting colon.
|
| |
| void | _allocateBuffer (size_t size) |
| | Allocate RAM buffer for display data.
|
| |
| void | _writeRamMasked (uint8_t data, uint8_t address, uint8_t mask=0xFF) |
| | Write to display RAM with nibble-aware masking support.
|
| |
| void | _writeRam (uint8_t data, uint8_t address=0) |
| | Low-level method to write a single byte to display RAM.
|
| |
| uint8_t | _get_char_value (char ch) |
| | Helper method to convert a character to its segment representation.
|
| |
| uint16_t | _get_16char_value (char ch) |
| | Helper method to convert a character to its 16-segment representation.
|
| |
Implementation of the PCF85176 controllers.