34 #ifndef ERRIEZ_LKM1638_BOARD_H_ 35 #define ERRIEZ_LKM1638_BOARD_H_ 39 #include <ErriezTM1638.h> 41 #define NUM_COLOR_LEDS 8 44 #define SEGMENTS_OFF 0b00000000 45 #define SEGMENTS_MINUS 0b01000000 46 #define SEGMENTS_DEGREE 0b01100011 47 #define SEGMENTS_C 0b00111001 49 #if (NUM_COLOR_LEDS > 8) 50 #error "Too many LED's. This won't fit in a 8-bit variable" 70 LKM1638Board(uint8_t clkPin, uint8_t dioPin, uint8_t stbPin);
87 void dotOn(uint8_t pos);
97 void setDigit(uint8_t pos, uint8_t digit);
103 void print(uint8_t value);
104 void print(uint8_t value, uint8_t radius);
105 void print(uint8_t value, uint8_t radius, uint8_t maxDigits);
106 void print(uint8_t value, uint8_t radius, uint8_t maxDigits, uint8_t pad);
108 void print(uint16_t value);
109 void print(uint16_t value, uint8_t radius);
110 void print(uint16_t value, uint8_t radius, uint8_t maxDigits);
111 void print(uint16_t value, uint8_t radius, uint8_t maxDigits, uint8_t pad);
113 void print(
unsigned long value);
114 void print(
unsigned long value, uint8_t radius);
115 void print(
unsigned long value, uint8_t radius, uint8_t maxDigits);
116 void print(
unsigned long value, uint8_t radius, uint8_t maxDigits, uint8_t pad);
119 void print(int8_t value);
120 void print(int8_t value, uint8_t radius);
121 void print(int8_t value, uint8_t radius, uint8_t maxDigits);
123 void print(int16_t value);
124 void print(int16_t value, uint8_t radius);
125 void print(int16_t value, uint8_t radius, uint8_t maxDigits);
127 void print(
long value);
128 void print(
long value, uint8_t radius);
129 void print(
long value, uint8_t radius, uint8_t maxDigits);
149 #endif // ERRIEZ_LKM1638_BOARD_H_ uint8_t swapLeds(uint8_t led)
Swap dual color LED's.
uint8_t swapPos(uint8_t pos)
Swap digit position.
void dotOff(uint8_t pos)
Turn dot LED off.
void writeSignedValue(int32_t value, uint8_t radius, uint8_t maxDigits)
Write signed value to display.
LKM1638Board(uint8_t clkPin, uint8_t dioPin, uint8_t stbPin)
LKM1638 constructor.
uint8_t getButtons()
Read buttons.
void setDots(uint8_t dots)
Turn multiple dots on or off.
void clear()
Turn all LED's off.
uint8_t getPrintPos()
Get print position.
void setPrintPos(uint8_t pos)
Set print position.
void colorLEDsOff(uint8_t leds)
Turn multiple color LED's off.
void dotOn(uint8_t pos)
Turn dot LED on.
void setSegmentsDigit(uint8_t pos, uint8_t leds)
Write LED segments of a digit.
#define NUM_DIGITS
Number of digits.
void print(uint8_t value)
Print uint8_t value.
void setDigit(uint8_t pos, uint8_t digit)
Write digit.
uint8_t _dots
Dot LED's.
void writeDigit(uint8_t pos)
Write digit position.
uint8_t getNumDigits(uint32_t value, uint8_t radius)
Get number of digits of a signed 32-bit value.
uint8_t swapBits(uint8_t data)
Swap bits.
LKM1638Board class, derived from TM1638 library.
void displayOverflow(uint8_t numDigits)
Display overflow with - characters.
void refresh()
Refresh display.
uint8_t _leds[NUM_DIGITS]
LED digits.
void setColorLED(uint8_t led, LedColor color)
Set dual color LED.
uint8_t _pos
Print position.
void colorLEDsOn(uint8_t leds, LedColor color)
Turn multiple color LED's on.
void writeUnsignedValue(uint32_t value, uint8_t radius, uint8_t maxDigits, uint8_t pad)
Write unsigned value to display.