1

2 Commits
v1.0 ... v1.1

Author SHA1 Message Date
eleksir
f18e0a1166 Make it possible to display time without explicit leading zeroes 2019-03-01 01:27:07 +03:00
eleksir
5440f7852a Added tag v1.0 for changeset ee4999ebdd2d 2019-02-28 22:33:36 +03:00
2 changed files with 30 additions and 6 deletions

1
.hgtags Normal file
View File

@@ -0,0 +1 @@
ee4999ebdd2d1b54512facafdd03c8a530ea4bfa v1.0

View File

@@ -60,7 +60,7 @@ void setup()
bool updateWithDelays = false; // Default. Recommended
/* without it there is visual bug at 0 o'clock, and in current version of
* SevSeg' setChars() does not dots at all */
bool leadingZeros = true;
bool leadingZeros = false;
Display.begin(hardwareConfig, numDigits, digitPins, segmentPins,
resistorsOnSegments, updateWithDelays, leadingZeros);
@@ -89,7 +89,9 @@ void setup()
void loop()
{
unsigned long currentMillis = millis();
char str[4];
float d;
if (currentMillis - previousMillis >= interval)
{
previousMillis = currentMillis;
@@ -125,10 +127,31 @@ void loop()
clock.getTime();
// make blinking dot
if (dot == true) {
Display.setNumber((clock.hour * 100 + clock.minute), 2);
} else {
Display.setNumber((clock.hour * 100 + clock.minute));
if (clock.hour > 0)
{
if (dot == true)
{
Display.setNumber((clock.hour * 100 + clock.minute), 2);
}
else
{
Display.setNumber((clock.hour * 100 + clock.minute));
}
}
else
{
/* 0 o'clock is an exception, we dont want to see "00.00", we want see
* "0.00" or "0 00", so we have to use this "hack" */
if (dot == true)
{
d = float(clock.minute) / 100;
Display.setNumber(d, 2);
}
else
{
sprintf(str, "%2d%02d", clock.hour, clock.minute);
Display.setChars(str);
}
}
Display.refreshDisplay();