AceSegment
0.11.0
A library for rendering seven segment LED displays using the TM1637, TM1638, MAX7219, HT16K33, or 74HC595 controller chips
|
An implementation of LedModule class that supports an LED module using 2 74HC595 Shift Register chips. More...
#include <Hc595Module.h>
Public Member Functions | |
Hc595Module (const T_SPII &spiInterface, uint8_t segmentOnPattern, uint8_t digitOnPattern, uint8_t framesPerSecond, uint8_t byteOrder, const uint8_t *remapArray=nullptr) | |
void | begin () |
void | end () |
![]() | |
ScanningModule (const LedMatrixDualHc595< T_SPII > &ledMatrix, uint8_t framesPerSecond) | |
Constructor. More... | |
void | begin () |
Configure the driver with the parameters given by in the constructor. More... | |
void | end () |
A no-op end() function for consistency with other classes. | |
void | setBrightnessAt (uint8_t pos, uint8_t brightness) |
Set the brightness for a given pos, leaving pattern unchanged. More... | |
uint16_t | getFramesPerSecond () const |
Return the requested frames per second. | |
uint16_t | getFieldsPerSecond () const |
Return the fields per second. | |
uint16_t | getFieldsPerFrame () const |
Total fields per frame across all digits. | |
uint16_t | getMicrosPerField () const |
Return micros per field. More... | |
bool | renderFieldWhenReady () |
Display one field of a frame when the time is right. More... | |
void | renderFieldNow () |
Render the current field immediately. More... | |
![]() | |
LedModule (uint8_t *patterns, uint8_t numDigits) | |
Constructor. More... | |
uint8_t | getNumDigits () const |
Return the number of digits supported by this display instance. | |
void | setPatternAt (uint8_t pos, uint8_t pattern) |
Set the led digit pattern at position pos. | |
uint8_t | getPatternAt (uint8_t pos) const |
Get the led digit pattern at position pos. | |
void | setBrightness (uint8_t brightness) |
Set global brightness of all digits. More... | |
uint8_t | getBrightness () const |
Get the current brightness. | |
Additional Inherited Members | |
![]() | |
void | begin () |
Subclasses should call this from its own begin(). | |
void | end () |
Subclasses should call this from its own end(). More... | |
void | setDigitDirty (uint8_t pos) |
Set the dirty bit of digit pos . | |
void | clearDigitDirty (uint8_t pos) |
Clear the dirty bit of digit pos . | |
bool | isDigitDirty (uint8_t pos) const |
Check the dirty bit of digit pos . | |
void | clearDigitsDirty () |
Clear dirty bits of all digits. | |
bool | isAnyDigitDirty () const |
Return true if any digits are dirty. | |
bool | isBrightnessDirty () const |
Check if the brightness level is dirty. | |
void | setBrightnessDirty () |
Mark the brightness as dirty. | |
void | clearBrightnessDirty () |
Clear the dirty bit for brightness. | |
An implementation of LedModule class that supports an LED module using 2 74HC595 Shift Register chips.
This is a convenience class that pairs together a ScanningModule and a LedMatrixDualHc595 in a single class.
T_SPII | class that implements the SPI interface, usually one of the classes in the AceSPI library: SimpleSpiInterface, SimpleSpiFastInterface, HardSpiInterface, HardSpiFastInterface. |
T_DIGITS | number of LED digits |
T_SUBFIELDS | number of subfields for each digit to get brightness control using PWM. The default is 1, but can be set to greater than 1 to get brightness control. |
T_CI | class that provides access to Arduino clock functions (millis() and micros()). The default is ClockInterface. |
Definition at line 75 of file Hc595Module.h.
|
inline |
spiInterface | object that knows how to send SPI packets |
segmentOnPattern | the bit pattern that indicates whether the segment pins are wired to be active high (kActiveHighPattern) or active low (kActiveLowPattern) |
digitOnPattern | the bit pattern that indicates whether the digit pins are wired to be active high (kActiveHighPattern) or active low (kActiveLowPattern) |
framesPerSecond | desired number of frames per second (usually greater than or equal to 60 to avoid flickering) |
byteOrder | whether to send the digit patterns first (kByteOrderDigitHighSegmentLow) or segment patterns first (kByteOrderSegmentHighDigitLow) |
remapArray | (optional, nullable) a mapping from the logical digit positions to their physical positions. For example, the 8-digit LED modules from diymore.cc have the left 4 and right 4 LED digits swapped. |
Definition at line 108 of file Hc595Module.h.