1#ifndef SEGLCD_VT0192_5DigSigBattProgress_H
2#define SEGLCD_VT0192_5DigSigBattProgress_H
5#if !defined(SEGLCD_DISABLE_ALL_LCDS) || defined(SEGLCD_ENABLE_VK0192_5DIGSIGBATTPROGRESS)
24 typedef enum : uint16_t {
30 typedef enum : uint16_t {
49 void setCursor(uint8_t row, uint8_t col)
override;
51 size_t write(uint8_t ch)
override;
56 void _setDecimal(uint8_t row, uint8_t col,
bool state)
override;
98 0x08, 0x04, 0x02, 0x01,
99 0x01, 0x02, 0x04, 0x08,
101 0x08, 0x04, 0x02, 0x01 };
VK0192 LCD segment display driver.
Definition SegDriver_VK0192.h:12
virtual size_t write(uint8_t)
Definition SegLCDLib.h:113
5-digit 7-segment LCD with signal/battery/progress (VK0192).
Definition SegLCD_VK0192_5DigSigBattProgress.h:22
uint16_t _map16Segments(uint16_t val)
Definition SegLCD_VK0192_5DigSigBattProgress.cpp:406
static constexpr uint8_t DECIMAL_16SEG_BIT
Definition SegLCD_VK0192_5DigSigBattProgress.h:67
static constexpr uint8_t DECIMAL_16SEG_ADDR_COL2
Definition SegLCD_VK0192_5DigSigBattProgress.h:72
static constexpr uint8_t ADDR_LABELS_2
Definition SegLCD_VK0192_5DigSigBattProgress.h:104
static constexpr uint8_t ADDR_SIGNAL_HIGH
Definition SegLCD_VK0192_5DigSigBattProgress.h:81
static constexpr uint8_t MAX_BATTERY_LEVEL
Definition SegLCD_VK0192_5DigSigBattProgress.h:85
static constexpr uint8_t SIGNAL_MASK_LOW
Definition SegLCD_VK0192_5DigSigBattProgress.h:80
uint8_t _mapSegments(uint8_t val)
Definition SegLCD_VK0192_5DigSigBattProgress.cpp:396
static constexpr uint8_t ADDR_LABELS_1
Definition SegLCD_VK0192_5DigSigBattProgress.h:103
static constexpr uint8_t ADDR_PROGRESS_P4
Definition SegLCD_VK0192_5DigSigBattProgress.h:94
static constexpr uint8_t BATTERY_MASK
Definition SegLCD_VK0192_5DigSigBattProgress.h:87
void _writeDigit7seg(uint8_t row, uint8_t col, char c)
Definition SegLCD_VK0192_5DigSigBattProgress.cpp:247
void _updateLabels(uint16_t labels, bool set)
Definition SegLCD_VK0192_5DigSigBattProgress.cpp:478
void setSignalLevel(uint8_t value)
Definition SegLCD_VK0192_5DigSigBattProgress.cpp:36
static constexpr uint8_t DECIMAL_16SEG_ADDR_COL0
Definition SegLCD_VK0192_5DigSigBattProgress.h:70
static constexpr uint8_t DECIMAL_16SEG_MAX_COL
Definition SegLCD_VK0192_5DigSigBattProgress.h:69
void clearLabels(uint16_t labels)
Definition SegLCD_VK0192_5DigSigBattProgress.cpp:141
int8_t _get16SegmentsAddress(uint8_t row, uint8_t col)
Definition SegLCD_VK0192_5DigSigBattProgress.cpp:368
static constexpr uint8_t ADDR_SIGNAL_LOW
Definition SegLCD_VK0192_5DigSigBattProgress.h:79
static constexpr int8_t DECIMAL_ADDR_COL_OFFSET
Definition SegLCD_VK0192_5DigSigBattProgress.h:62
void _setDecimal(uint8_t row, uint8_t col, bool state) override
Virtual method for setting decimal point.
Definition SegLCD_VK0192_5DigSigBattProgress.cpp:149
void setLabels(uint16_t labels)
Definition SegLCD_VK0192_5DigSigBattProgress.cpp:137
void init() override
Initialize GPIO pins for communication.
Definition SegLCD_VK0192_5DigSigBattProgress.cpp:10
static constexpr uint8_t ADDR_BATT
Definition SegLCD_VK0192_5DigSigBattProgress.h:86
void setCursor(uint8_t row, uint8_t col) override
Set cursor on exact digit.
Definition SegLCD_VK0192_5DigSigBattProgress.cpp:145
static constexpr uint8_t MAX_SIGNAL_LEVEL
Definition SegLCD_VK0192_5DigSigBattProgress.h:78
static constexpr int8_t DECIMAL_COL_OFFSET
Definition SegLCD_VK0192_5DigSigBattProgress.h:61
static constexpr uint8_t PROGRESS_LEVEL_SEG[16]
Definition SegLCD_VK0192_5DigSigBattProgress.h:96
void clearUnits(uint16_t units)
Definition SegLCD_VK0192_5DigSigBattProgress.cpp:123
static constexpr uint8_t ADDR_PROGRESS_P3
Definition SegLCD_VK0192_5DigSigBattProgress.h:93
void setDegreeSymbol(bool state, uint8_t index=0)
Definition SegLCD_VK0192_5DigSigBattProgress.cpp:127
static constexpr uint8_t DECIMAL_16SEG_ADDR_COL1
Definition SegLCD_VK0192_5DigSigBattProgress.h:71
static constexpr uint8_t RAM_SIZE
Definition SegLCD_VK0192_5DigSigBattProgress.h:57
void _writeDigit16seg(uint8_t row, uint8_t col, char c)
Definition SegLCD_VK0192_5DigSigBattProgress.cpp:296
static constexpr uint8_t DECIMAL_TOP_MIN_COL
Definition SegLCD_VK0192_5DigSigBattProgress.h:63
static constexpr uint8_t PROGRESS_MASK
Definition SegLCD_VK0192_5DigSigBattProgress.h:95
static constexpr uint8_t ADDR_LABELS_3
Definition SegLCD_VK0192_5DigSigBattProgress.h:105
static constexpr uint8_t DECIMAL_BOTTOM_MAX_COL
Definition SegLCD_VK0192_5DigSigBattProgress.h:66
static constexpr uint8_t SIGNAL_MASK_HIGH
Definition SegLCD_VK0192_5DigSigBattProgress.h:82
static constexpr uint8_t ADDR_PROGRESS_P1
Definition SegLCD_VK0192_5DigSigBattProgress.h:91
void setBatteryLevel(uint8_t value)
Definition SegLCD_VK0192_5DigSigBattProgress.cpp:18
static constexpr uint8_t NUM_7SEG_DIGITS
Definition SegLCD_VK0192_5DigSigBattProgress.h:76
void setUnits(uint16_t units)
Definition SegLCD_VK0192_5DigSigBattProgress.cpp:119
static constexpr uint8_t DECIMAL_POINT_BIT
Definition SegLCD_VK0192_5DigSigBattProgress.h:60
int8_t _get7SegmentsAddress(uint8_t row, uint8_t col)
Definition SegLCD_VK0192_5DigSigBattProgress.cpp:322
static constexpr uint8_t ADDR_PROGRESS_P2
Definition SegLCD_VK0192_5DigSigBattProgress.h:92
UnitFlags
Definition SegLCD_VK0192_5DigSigBattProgress.h:30
@ UNIT_DEGREE_C
Definition SegLCD_VK0192_5DigSigBattProgress.h:31
@ UNIT_V
Definition SegLCD_VK0192_5DigSigBattProgress.h:36
@ UNIT_A
Definition SegLCD_VK0192_5DigSigBattProgress.h:35
@ UNIT_M
Definition SegLCD_VK0192_5DigSigBattProgress.h:34
@ UNIT_MPA
Definition SegLCD_VK0192_5DigSigBattProgress.h:33
@ UNIT_KPA
Definition SegLCD_VK0192_5DigSigBattProgress.h:32
static constexpr uint8_t BATTERY_LEVEL_SEG[4]
Definition SegLCD_VK0192_5DigSigBattProgress.h:88
static constexpr uint8_t MAX_PROGRESS
Definition SegLCD_VK0192_5DigSigBattProgress.h:90
LabelFlags
Definition SegLCD_VK0192_5DigSigBattProgress.h:24
@ LABEL_PROC
Definition SegLCD_VK0192_5DigSigBattProgress.h:27
@ LABEL_T
Definition SegLCD_VK0192_5DigSigBattProgress.h:26
@ LABEL_P
Definition SegLCD_VK0192_5DigSigBattProgress.h:25
static constexpr uint8_t DECIMAL_16SEG_MIN_COL
Definition SegLCD_VK0192_5DigSigBattProgress.h:68
size_t write(uint8_t ch) override
Definition SegLCD_VK0192_5DigSigBattProgress.cpp:202
static constexpr uint8_t DECIMAL_16SEG_ADDR_COL3
Definition SegLCD_VK0192_5DigSigBattProgress.h:73
static constexpr uint8_t DECIMAL_BOTTOM_MIN_COL
Definition SegLCD_VK0192_5DigSigBattProgress.h:65
static constexpr uint8_t DECIMAL_TOP_MAX_COL
Definition SegLCD_VK0192_5DigSigBattProgress.h:64
static constexpr uint8_t MAX_COL
Definition SegLCD_VK0192_5DigSigBattProgress.h:74
void setProgress(uint8_t value)
Definition SegLCD_VK0192_5DigSigBattProgress.cpp:54
static constexpr uint8_t SIGNAL_LEVEL_SEG[3]
Definition SegLCD_VK0192_5DigSigBattProgress.h:83
void _updateUnits(uint16_t units, bool set)
Definition SegLCD_VK0192_5DigSigBattProgress.cpp:425
Abstract 3-wire serial transport.
Definition SegTransport.h:23