SegLCDLib
Loading...
Searching...
No Matches
SegLCD_HT1622_10Dig16Seg.h
Go to the documentation of this file.
1#ifndef SEGLCD_HT1622_10Dig16Seg_H
2#define SEGLCD_HT1622_10Dig16Seg_H
3
4#include <SegDriver_HT1622.h>
5
21 public:
22 SegLCD_HT1622_10Dig16Seg(uint8_t chipselect, uint8_t data, uint8_t write, uint8_t read = -1);
23 void init() override;
24 size_t write(uint8_t ch) override;
25
26 protected:
27 void _setDecimal(uint8_t row, uint8_t col, bool state) override;
28
29 private:
30 void _writeDigit16seg(uint8_t row, uint8_t col, char c);
31 static constexpr uint8_t RAM_SIZE = 23; // 10 digits * 2 bytes + 3 bytes for decimals = ~23 bytes
32 static constexpr uint8_t DIGITS = 10;
33
34 // Decimal configuration: RAM offset -1 (dot belongs to previous position)
35 static constexpr uint8_t DECIMAL_MIN_COL = 0;
36 static constexpr uint8_t DECIMAL_MAX_COL = 8;
37 static constexpr int8_t DECIMAL_COL_OFFSET = -1;
38
39 uint16_t _map16Segments(uint16_t val);
40 int8_t _get16SegmentsAddress(uint8_t row, uint8_t col);
41
42};
43#endif
HT1622 LCD segment display driver.
Definition SegDriver_HT1622.h:12
10-digit 16-segment alphanumeric LCD (HT1622).
Definition SegLCD_HT1622_10Dig16Seg.h:20
size_t write(uint8_t ch) override
Definition SegLCD_HT1622_10Dig16Seg.cpp:50
void _setDecimal(uint8_t row, uint8_t col, bool state) override
Virtual method for setting decimal point.
Definition SegLCD_HT1622_10Dig16Seg.cpp:16
static constexpr uint8_t DIGITS
Definition SegLCD_HT1622_10Dig16Seg.h:32
uint16_t _map16Segments(uint16_t val)
Definition SegLCD_HT1622_10Dig16Seg.cpp:98
static constexpr uint8_t RAM_SIZE
Definition SegLCD_HT1622_10Dig16Seg.h:31
void _writeDigit16seg(uint8_t row, uint8_t col, char c)
Definition SegLCD_HT1622_10Dig16Seg.cpp:71
int8_t _get16SegmentsAddress(uint8_t row, uint8_t col)
Definition SegLCD_HT1622_10Dig16Seg.cpp:89
void init() override
Initialize GPIO pins for communication.
Definition SegLCD_HT1622_10Dig16Seg.cpp:8
static constexpr uint8_t DECIMAL_MAX_COL
Definition SegLCD_HT1622_10Dig16Seg.h:36
static constexpr int8_t DECIMAL_COL_OFFSET
Definition SegLCD_HT1622_10Dig16Seg.h:37
static constexpr uint8_t DECIMAL_MIN_COL
Definition SegLCD_HT1622_10Dig16Seg.h:35