1#ifndef SEGLCD_PCx85_T1T2LCD_H
2#define SEGLCD_PCx85_T1T2LCD_H
43 void setCursor(uint8_t row, uint8_t col)
override;
44 size_t write(uint8_t ch)
override;
47 void _setColon(uint8_t row, uint8_t col,
bool state)
override;
48 void _setDecimal(uint8_t row, uint8_t col,
bool state)
override;
Implementation of the PCF85176 controllers.
Definition SegDriver_PCx85.h:144
static constexpr uint8_t DEFAULT_PCF85176_I2C_ADDRESS
Definition SegDriver_PCx85.h:26
static constexpr uint8_t DEFAULT_SUBADDRESS
Definition SegDriver_PCx85.h:27
Multi-zone T1/T2 LCD with clock display (PCF85176).
Definition SegLCD_PCF85176_T1T2Lcd.h:20
static constexpr uint8_t ADDR_SIGNAL_CLOCK
Definition SegLCD_PCF85176_T1T2Lcd.h:49
LabelFlags
Definition SegLCD_PCF85176_T1T2Lcd.h:22
@ LABEL_T1_C_DOWN
Definition SegLCD_PCF85176_T1T2Lcd.h:24
@ LABEL_T1_C_UP
Definition SegLCD_PCF85176_T1T2Lcd.h:23
@ LABEL_T2_C
Definition SegLCD_PCF85176_T1T2Lcd.h:25
@ LABEL_T2_HUM
Definition SegLCD_PCF85176_T1T2Lcd.h:26
void setCursor(uint8_t row, uint8_t col) override
Set cursor on exact digit.
Definition SegLCD_PCF85176_T1T2Lcd.cpp:143
void init() override
Logical display sections that can be targeted by higher-level rendering logic.
Definition SegLCD_PCF85176_T1T2Lcd.cpp:8
static constexpr uint8_t BATTERY_LEVEL_SEG[MAX_BATTERY_LEVEL]
Definition SegLCD_PCF85176_T1T2Lcd.h:88
static constexpr uint8_t MAX_SIGNAL_LEVEL
Definition SegLCD_PCF85176_T1T2Lcd.h:90
static constexpr uint8_t SYMBOL_T1T2_MASK
Definition SegLCD_PCF85176_T1T2Lcd.h:83
static constexpr uint8_t OFFSET_LABELS
Definition SegLCD_PCF85176_T1T2Lcd.h:62
void setClockSymbol(bool status, uint8_t index=0)
Definition SegLCD_PCF85176_T1T2Lcd.cpp:53
size_t write(uint8_t ch) override
Definition SegLCD_PCF85176_T1T2Lcd.cpp:151
uint8_t _mapSegments(uint8_t val)
Definition SegLCD_PCF85176_T1T2Lcd.cpp:232
void _setColon(uint8_t row, uint8_t col, bool state) override
Virtual method for setting colon.
Definition SegLCD_PCF85176_T1T2Lcd.cpp:96
static constexpr uint8_t OFFSET_T1
Definition SegLCD_PCF85176_T1T2Lcd.h:65
static constexpr uint8_t ROW_T2
Definition SegLCD_PCF85176_T1T2Lcd.h:72
static constexpr uint8_t ADDR_DAY_SEG
Definition SegLCD_PCF85176_T1T2Lcd.h:53
static constexpr uint8_t DECIMAL_MIN_COL
Definition SegLCD_PCF85176_T1T2Lcd.h:77
static constexpr uint8_t ADDR_CLOCK_T1T2_LABELS_SEGS
Definition SegLCD_PCF85176_T1T2Lcd.h:52
static constexpr uint8_t DECIMAL_MAX_ROW
Definition SegLCD_PCF85176_T1T2Lcd.h:76
static constexpr uint8_t SYMBOL_CLOCK_MASK
Definition SegLCD_PCF85176_T1T2Lcd.h:82
void _setDecimal(uint8_t row, uint8_t col, bool state) override
Virtual method for setting decimal point.
Definition SegLCD_PCF85176_T1T2Lcd.cpp:109
void setSignalLevel(uint8_t value)
Definition SegLCD_PCF85176_T1T2Lcd.cpp:32
static constexpr uint8_t OFFSET_SIGCLK
Definition SegLCD_PCF85176_T1T2Lcd.h:60
static constexpr uint8_t ROW_CLOCK
Definition SegLCD_PCF85176_T1T2Lcd.h:70
static constexpr uint8_t RAM_SIZE
Definition SegLCD_PCF85176_T1T2Lcd.h:57
void clearT1T2Labels(uint8_t t1t2)
Definition SegLCD_PCF85176_T1T2Lcd.cpp:85
static constexpr uint8_t ADDR_LABELS
Definition SegLCD_PCF85176_T1T2Lcd.h:51
static constexpr uint8_t DECIMAL_MIN_ROW
Definition SegLCD_PCF85176_T1T2Lcd.h:75
static constexpr uint8_t MAX_BATTERY_LEVEL
Definition SegLCD_PCF85176_T1T2Lcd.h:86
static constexpr uint8_t OFFSET_CLOCK
Definition SegLCD_PCF85176_T1T2Lcd.h:63
static constexpr uint8_t DECIMAL_POINT_BIT
Definition SegLCD_PCF85176_T1T2Lcd.h:74
static constexpr uint8_t DECIMAL_MAX_COL
Definition SegLCD_PCF85176_T1T2Lcd.h:78
static constexpr uint8_t SIGNAL_MASK
Definition SegLCD_PCF85176_T1T2Lcd.h:91
static constexpr int8_t DECIMAL_COL_OFFSET
Definition SegLCD_PCF85176_T1T2Lcd.h:79
void setLabels(uint8_t labels)
Definition SegLCD_PCF85176_T1T2Lcd.cpp:64
static constexpr uint8_t OFFSET_T2
Definition SegLCD_PCF85176_T1T2Lcd.h:66
static constexpr uint8_t ADDR_T1_SEGS
Definition SegLCD_PCF85176_T1T2Lcd.h:54
static constexpr uint8_t ADDR_T2_SEGS
Definition SegLCD_PCF85176_T1T2Lcd.h:55
static constexpr uint8_t BATTERY_MASK
Definition SegLCD_PCF85176_T1T2Lcd.h:87
static constexpr uint8_t OFFSET_DAY
Definition SegLCD_PCF85176_T1T2Lcd.h:64
void clearLabels(uint8_t labels)
Definition SegLCD_PCF85176_T1T2Lcd.cpp:69
static constexpr uint8_t OFFSET_BATT
Definition SegLCD_PCF85176_T1T2Lcd.h:61
void setBatteryLevel(uint8_t value)
Definition SegLCD_PCF85176_T1T2Lcd.cpp:13
static constexpr uint8_t ROW_T1
Definition SegLCD_PCF85176_T1T2Lcd.h:71
static constexpr uint8_t SIGNAL_LEVEL_BITS[MAX_SIGNAL_LEVEL]
Definition SegLCD_PCF85176_T1T2Lcd.h:92
void setT1T2Labels(uint8_t t1t2)
Definition SegLCD_PCF85176_T1T2Lcd.cpp:74
LabelT1T2Enum
Definition SegLCD_PCF85176_T1T2Lcd.h:29
@ LABEL_T2
Definition SegLCD_PCF85176_T1T2Lcd.h:31
@ LABEL_T1
Definition SegLCD_PCF85176_T1T2Lcd.h:30
static constexpr uint8_t FLAG_COLON_CLOCK
Definition SegLCD_PCF85176_T1T2Lcd.h:68
static constexpr uint8_t ADDR_BATT
Definition SegLCD_PCF85176_T1T2Lcd.h:50