Display_Lib_RPI 2.3.0
A C++ Library to connect electronic displays to Linux single board computers.
Loading...
Searching...
No Matches
TM1638plus_common_RDL.hpp
Go to the documentation of this file.
1
8#pragma once
9
10#include <cstdio>
11#include <cstdint>
12#include <cstdbool>
13#include <cstring> //strcat
14
15#include <lgpio.h>
16#include "common_data_RDL.hpp"
18
19
24
25public:
26
34
36 enum TMOffsetsMasks : uint8_t
37 {
41 TM_BRIGHT_MASK = 0x07
42 };
43
44
45 // Constructor
46 TM1638plus_common(uint8_t strobe, uint8_t clock, uint8_t data, int gpioDev);
47
48 void reset(void);
50 void brightness(uint8_t brightness);
51 uint16_t TMCommDelayGet(void);
52 void TMCommDelayset(uint16_t);
54
55protected:
56 void sendCommand(uint8_t value);
57 void sendData(uint8_t data);
58 uint8_t HighFreqshiftin(void);
59 void HighFreqshiftOut(uint8_t val);
60
62 enum TMCommands : uint8_t
63 {
64 TM_ACTIVATE = 0x8F,
66 TM_WRITE_LOC = 0x44,
67 TM_WRITE_INC = 0x40,
68 TM_SEG_ADR = 0xC0,
69 TM_LEDS_ADR = 0xC1,
70 TM_BRIGHT_ADR = 0x88
71 };
72
73 uint8_t _Display_CS;
75 uint8_t _Display_SCLK;
76 const uint8_t _TMDisplaySize = 8;
78 int _GpioHandle = 0;
80private:
81 uint16_t _TMCommDelay = 1;
82 const uint8_t _TMDefaultBrightness = 0x02;
85};
86
87
The base Class , used to store common data & functions for all models types.
Definition TM1638plus_common_RDL.hpp:23
void sendData(uint8_t data)
Send Data to display.
Definition TM1638plus_common_RDL.cpp:113
TMOffsetsMasks
Definition TM1638plus_common_RDL.hpp:37
@ TM_BRIGHT_MASK
Definition TM1638plus_common_RDL.hpp:41
@ TM_ASCII_OFFSET
Definition TM1638plus_common_RDL.hpp:38
@ TM_HEX_OFFSET
Definition TM1638plus_common_RDL.hpp:39
@ TM_DOT_MASK_DEC
Definition TM1638plus_common_RDL.hpp:40
void HighFreqshiftOut(uint8_t val)
Shifts out a byte of data on to the Tm1638 SPI-like bus.
Definition TM1638plus_common_RDL.cpp:145
int _GpioHandle
Definition TM1638plus_common_RDL.hpp:78
rdlib::Return_Codes_e displayClose(void)
Close method , frees GPIO and deactivate display.
Definition TM1638plus_common_RDL.cpp:179
void TMCommDelayset(uint16_t)
set the TM comm delay.
Definition TM1638plus_common_RDL.cpp:169
uint8_t _Display_SCLK
Definition TM1638plus_common_RDL.hpp:75
AlignTextType_e
Definition TM1638plus_common_RDL.hpp:29
@ TMAlignTextZeros
Definition TM1638plus_common_RDL.hpp:32
@ TMAlignTextLeft
Definition TM1638plus_common_RDL.hpp:31
@ TMAlignTextRight
Definition TM1638plus_common_RDL.hpp:30
int _DeviceNumGpioChip
Definition TM1638plus_common_RDL.hpp:77
const uint8_t _TMDisplaySize
Definition TM1638plus_common_RDL.hpp:76
uint16_t TMCommDelayGet(void)
get the TM comm delay.
Definition TM1638plus_common_RDL.cpp:163
TMCommands
Definition TM1638plus_common_RDL.hpp:63
@ TM_LEDS_ADR
Definition TM1638plus_common_RDL.hpp:69
@ TM_WRITE_INC
Definition TM1638plus_common_RDL.hpp:67
@ TM_SEG_ADR
Definition TM1638plus_common_RDL.hpp:68
@ TM_BUTTONS_MODE
Definition TM1638plus_common_RDL.hpp:65
@ TM_ACTIVATE
Definition TM1638plus_common_RDL.hpp:64
@ TM_BRIGHT_ADR
Definition TM1638plus_common_RDL.hpp:70
@ TM_WRITE_LOC
Definition TM1638plus_common_RDL.hpp:66
uint16_t _TMCommDelay
Definition TM1638plus_common_RDL.hpp:81
const uint8_t _TMDefaultBrightness
Definition TM1638plus_common_RDL.hpp:82
void reset(void)
Reset / clear the display.
Definition TM1638plus_common_RDL.cpp:28
void brightness(uint8_t brightness)
Sets the brightness level of segments in display on a scale of brightness.
Definition TM1638plus_common_RDL.cpp:43
uint8_t HighFreqshiftin(void)
Shifts in a byte of data from the Tm1638 SPI-like bus.
Definition TM1638plus_common_RDL.cpp:124
uint8_t _Display_CS
Definition TM1638plus_common_RDL.hpp:73
void sendCommand(uint8_t value)
Send command to display.
Definition TM1638plus_common_RDL.cpp:102
rdlib::Return_Codes_e displayBegin(void)
Begin method , sets pin modes and activate display.
Definition TM1638plus_common_RDL.cpp:58
uint8_t _Display_SDATA
Definition TM1638plus_common_RDL.hpp:74
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