Software auf neue LED-Aufteilung der Wortfolie angepasst (104 LEDs, Streifen pro Wort im Zickzack)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
f072bbf575
commit
ca0e6afa8f
2 files changed
+66
-48
No files matched your search
+33
-24
@@ -8,7 +8,11 @@
|
||||
|
||||
// ================= LED =================
|
||||
#define LED_PIN D4
|
||||
#define NUMPIXELS 110
|
||||
// Neue Aufteilung (cad/openscad/gemeinsam.scad): je Wort ein LED-Streifen mit einer
|
||||
// LED pro Buchstabe, Zickzack durch die Zeilen. Zeile 0 laeuft links->rechts, Zeile 1
|
||||
// rechts->links usw. Die Fuellbuchstaben gibt es nicht, nur die Woerter (inkl. NTP,
|
||||
// API, RTC, ESP). Minutenpunkte sind abgeschaltet.
|
||||
#define NUMPIXELS 104
|
||||
Adafruit_NeoPixel pixels(NUMPIXELS, LED_PIN, NEO_GRB + NEO_KHZ800);
|
||||
|
||||
// ================= SERVER & NTP =================
|
||||
@@ -181,29 +185,34 @@ void fadeToTargetSmooth(int steps = 30, int delayMs = 15){
|
||||
}
|
||||
|
||||
// ================= WORTUHR LOGIK =================
|
||||
void word_ES(){ setRange(0,1); }
|
||||
void word_IST(){ setRange(3,5); }
|
||||
void word_FUENF_M(){ setRange(7,10); }
|
||||
void word_ZEHN_M(){ setRange(18,21); }
|
||||
void word_ZWANZIG(){ setRange(11,17); }
|
||||
void word_VIERTEL(){ setRange(22,28); }
|
||||
void word_VOR(){ setRange(30,32); }
|
||||
void word_NACH(){ setRange(40,43); }
|
||||
void word_HALB(){ setRange(33,36); }
|
||||
void word_EINS(){ setRange(62,65); }
|
||||
void word_EIN(){ setRange(62,64); }
|
||||
void word_ZWEI(){ setRange(55,58); }
|
||||
void word_DREI(){ setRange(66,69); }
|
||||
void word_VIER(){ setRange(73,76); }
|
||||
void word_FUENF_H(){ setRange(51,54); }
|
||||
void word_SECHS(){ setRange(83,87); }
|
||||
void word_SIEBEN(){ setRange(88,93); }
|
||||
void word_ACHT(){ setRange(77,80); }
|
||||
void word_NEUN(){ setRange(44,47); }
|
||||
void word_ZEHN_H(){ setRange(106,109); }
|
||||
void word_ELF(){ setRange(103,105); }
|
||||
void word_ZWOELF(){ setRange(94,98); }
|
||||
void word_UHR(){ setRange(99,101); }
|
||||
// LED-Indizes in Kettenreihenfolge (Zeilen im Zickzack, Woerter je Zeile in Laufrichtung)
|
||||
void word_ES(){ setRange(0,1); } // Zeile 0 (links->rechts)
|
||||
void word_IST(){ setRange(2,4); }
|
||||
void word_FUENF_M(){ setRange(5,8); }
|
||||
void word_ZEHN_M(){ setRange(9,12); } // Zeile 1 (rechts->links)
|
||||
void word_ZWANZIG(){ setRange(13,19); }
|
||||
void word_VIERTEL(){ setRange(20,26); } // Zeile 2
|
||||
void word_VOR(){ setRange(27,29); }
|
||||
void word_NACH(){ setRange(30,33); } // Zeile 3 (rechts->links)
|
||||
// NTP 34-36
|
||||
void word_HALB(){ setRange(37,40); }
|
||||
void word_NEUN(){ setRange(41,44); } // Zeile 4
|
||||
// API 45-47
|
||||
void word_FUENF_H(){ setRange(48,51); }
|
||||
void word_EINS(){ setRange(52,55); } // Zeile 5 (rechts->links): S, EIN, RTC, ZWEI
|
||||
void word_EIN(){ setRange(53,55); }
|
||||
// RTC 56-58
|
||||
void word_ZWEI(){ setRange(59,62); }
|
||||
void word_DREI(){ setRange(63,66); } // Zeile 6
|
||||
// ESP 67-69
|
||||
void word_VIER(){ setRange(70,73); }
|
||||
void word_SECHS(){ setRange(74,78); } // Zeile 7 (rechts->links)
|
||||
void word_ACHT(){ setRange(79,82); }
|
||||
void word_SIEBEN(){ setRange(83,88); } // Zeile 8
|
||||
void word_ZWOELF(){ setRange(89,93); }
|
||||
void word_ZEHN_H(){ setRange(94,97); } // Zeile 9 (rechts->links)
|
||||
void word_ELF(){ setRange(98,100); }
|
||||
void word_UHR(){ setRange(101,103); }
|
||||
|
||||
String getTimeText(int h, int m){
|
||||
int m5 = (m/5)*5;
|
||||
|
||||
Reference in new issue
Block a user