Steuerung LED-Strip für ein Projekt

Du benutzt t als zufällige Zeit - als INT deklariert.
Warum INT? Erwartest Du negative Wartezeiten?
Nein -> UNSIGNED (vorzeichenlos) hast Du direkt den doppelten Zahlenvorrat.
int 16bit, bei signed 15bit + Negativ-Bit, bei unsigned 16bit.
-32768...32767 zu 0...65535

Interessant, dass ich das übersehen konnte!
:o Ein Fall von Betriebsblindheit, vermute ich mal :o

Vermutlich weil ich mir angewöhnt habe, immer möglichst den gleichen Type zur Weiterverarbeitung zu nutzen, den mir die Funktionen liefern.

Dem Schema folgend:
Ja, da wäre sicherlich long, oder sofort unsigned long der richtige Type

Combie (Klick auf den Nachtwächter, dort ich Der nämlich verlinkt) hat auch Makros im Angebot, wo man sich eigene und von einander unabhängige Timer zusammen bauen kann.

Ja, die "niedrigen" Funktionen nutze ich kaum noch.
Mittlerweile haben die Taskmakros ein Update Richtung OOP erfahren.
Und auch switch/case sind jetzt in dem Zusammenhang möglich, da die "neuen" Makros auf dem heiß geliebten und zu allem bereiten goto basieren.