Asynchronous, flexible, customizable library for managing seven-segment indicators under Arduino control
- Library size: 1 088 bytes
- Minimum Memory Usage: 36 bytes
- asynchronous display refresh
- user specified refresh rate (+/- 3Hz)
- user specified number of displays
- support different common pins ( cathode / anode )
- display strings, negative or positive integers or floats
- support for most latin characters ( excluding K, M, V, W, X, Z )
- Download the Displayer_vX.X.zip file added to the latest release.
- Unzip the downloaded archive into the folder "~Documents/Arduino/libraries/"
- Include library header
#include <Displayer.h>
- Сreate two constant arrays listing segments pins and indicator common pins inside setup() and call Inintialization method
void setup()
{
// From A to DP
const short segmentPins[] = { 2, 3, 4, 5, 6, 7, 8, 9 };
// From left to right
const short сommonPins[] = { 13, 11, 10 };
// No need to create a prototype of the Displayer class
Displayer.Initialize
(
Common_cathode, // Common pin type on your display (Common_cathode or Common_anode)
segmentPins, // The array of segment pins you created
sizeof сommonPins/ sizeof(short),// Number of indicators
сommonPins, // The array of indicator pins you created
75 // Required display refresh rate
);
}
- Call the Show() method to display something
// Simple int counter
int number = 1;
void loop()
{
Displayer.Show(number);
++number;
// you can lock the main cycle, the display will still be refreshing
delay(1000);
}
// Simple float counter
float number = 0.f;
void loop()
{
Displayer.Show(number);
number += 0.1f;
// you can lock the main cycle, the display will still be refreshing
delay(1000);
}
// Show() method capabilities
void loop()
// String will be displayed until the next Show() method call
Show("ABCXF");
// characters that cannot be displayed on the seven-segment indicator will be ignored
// if string or number does not fit on the display, the right side will preferably be displayed.
// On the display with 3 indicators the line will be displayed like this: "C F"
delay(1000);
Show(12345);
// On the display with 3 indicators the line will be displayed like this: "345"
delay(1000);
Show(-0.125f);
// The maximum possible number of decimal places will be displayed
// First zero will be ignored
// On the display with 3 indicators the line will be displayed like this: "-.125"
delay(1000);
}