Display_Lib_RPI 2.4.0
A C++ Library to connect electronic displays to Linux single board computers.
Loading...
Searching...
No Matches
TM1637plus_Model4_RDL.hpp
Go to the documentation of this file.
1
7#pragma once
8
9#include <stdint.h>
10#include <stdbool.h>
11#include <lgpio.h>
12#include <cstring> // for strlen
13#include "common_data_RDL.hpp"
15
16
21{
22public:
23
24 TM1637plus_Model4 (uint8_t clock, uint8_t data ,int gpioDev, int delay, int DisplaySize) ;
27 void displayClear(void);
28 void setBrightness(uint8_t brightness, bool on );
29
30 void setSegments(const uint8_t segments[], uint8_t length , uint8_t pos );
31 void DisplayDecimal(int num, bool leading_zero, uint8_t length , uint8_t pos );
32 void DisplayDecimalwDot(int num, uint8_t dots , bool leading_zero ,uint8_t length , uint8_t pos );
33 rdlib::Return_Codes_e DisplayString(const char* numStr, uint8_t dots , uint8_t length, uint8_t position);
34 unsigned char encodeCharacter(unsigned char digit);
35
36protected:
37
38private:
39
40 // GPIO related
42 uint8_t _Display_SCLK;
43 uint8_t _DisplaySize = 4;
45 int _GpioHandle = 0;
47 // Misc
48 int _BitDelayUS = 75;
49 uint8_t _brightness = 7;
50 const uint8_t _ASCIIOffset = 0x20;
52 // Tm1637 Command list
53 static constexpr uint8_t TM1637_COMMAND_1 = 0x40;
54 static constexpr uint8_t TM1637_COMMAND_2 = 0xC0;
55 static constexpr uint8_t TM1637_COMMAND_3 = 0x80;
57 void CommBitDelay(void);
58 void CommStart(void);
59 void CommStop(void);
60 bool writeByte(uint8_t byte);
61
62};
SevenSegmentFont Class that provides access to a seven-segment font data table.
Definition led_segment_font_data_RDL.hpp:15
Class for TM1637 Model 4.
Definition TM1637plus_Model4_RDL.hpp:21
static constexpr uint8_t TM1637_COMMAND_3
Definition TM1637plus_Model4_RDL.hpp:55
static constexpr uint8_t TM1637_COMMAND_1
Definition TM1637plus_Model4_RDL.hpp:53
void CommStop(void)
Stops the communication sequence.
Definition TM1637plus_Model4_RDL.cpp:326
void setBrightness(uint8_t brightness, bool on)
Sets the brightness of the display.
Definition TM1637plus_Model4_RDL.cpp:80
rdlib::Return_Codes_e displayClose(void)
Close method , frees GPIO and deactivate display.
Definition TM1637plus_Model4_RDL.cpp:259
void DisplayDecimal(int num, bool leading_zero, uint8_t length, uint8_t pos)
Displays a decimal number.
Definition TM1637plus_Model4_RDL.cpp:129
const uint8_t _ASCIIOffset
Definition TM1637plus_Model4_RDL.hpp:50
uint8_t _DisplaySize
Definition TM1637plus_Model4_RDL.hpp:43
int _BitDelayUS
Definition TM1637plus_Model4_RDL.hpp:48
uint8_t _Display_SDATA
Definition TM1637plus_Model4_RDL.hpp:41
void CommStart(void)
Starts the communication sequence.
Definition TM1637plus_Model4_RDL.cpp:312
void CommBitDelay(void)
Sets the delay, in microseconds, between bit transition on the serial bus connected to the display.
Definition TM1637plus_Model4_RDL.cpp:304
void displayClear(void)
Clears the display.
Definition TM1637plus_Model4_RDL.cpp:30
void DisplayDecimalwDot(int num, uint8_t dots, bool leading_zero, uint8_t length, uint8_t pos)
Displays a decimal number, with decimal point control.
Definition TM1637plus_Model4_RDL.cpp:151
static constexpr uint8_t TM1637_COMMAND_2
Definition TM1637plus_Model4_RDL.hpp:54
void setSegments(const uint8_t segments[], uint8_t length, uint8_t pos)
Display data on the module.
Definition TM1637plus_Model4_RDL.cpp:97
rdlib::Return_Codes_e displayBegin(void)
Begin method , set and claims GPIO.
Definition TM1637plus_Model4_RDL.cpp:43
int _DeviceNumGpioChip
Definition TM1637plus_Model4_RDL.hpp:44
rdlib::Return_Codes_e DisplayString(const char *numStr, uint8_t dots, uint8_t length, uint8_t position)
Displays a character array.
Definition TM1637plus_Model4_RDL.cpp:207
uint8_t _brightness
Definition TM1637plus_Model4_RDL.hpp:49
unsigned char encodeCharacter(unsigned char digit)
Translate a single Character into 7 segment code.
Definition TM1637plus_Model4_RDL.cpp:244
bool writeByte(uint8_t byte)
Writes a byte to the Display.
Definition TM1637plus_Model4_RDL.cpp:358
int _GpioHandle
Definition TM1637plus_Model4_RDL.hpp:45
uint8_t _Display_SCLK
Definition TM1637plus_Model4_RDL.hpp:42
file to hold common data and functions used by many Displays Project Name: Display_Lib_RPI
LED segment font data file for ht16k33 tm1638, tm1637 & max7219 modules.
Return_Codes_e
Definition common_data_RDL.hpp:22