Nimm eine RTC Lib, die die Zeit in Sekunden seit 1970 angibt. Ählich der Unix-Zeit.
z.B. die hier:
Das bekommst du da mit RTC.now() ein DateTime Objekt zurück. unixtime() sind dann die Sekunden seit 1970 oder secondstime() die Sekunden seit 2000. Du kannst dir dann einfach einen entsprechen Vergleichswert anlegen und jeden Tag 15 Minuten (in Sekunden umgerechnet) dazu addieren.
rechne die Zeit in Sekunden um: von hh mm ss in ssssss ab mitternacht um. So erhälst Du einen Wert den Du mit nur einem if kontrollieren kannst.
Den Einschaltmoment errechnest Du aus dem Datum und vergleichst ihn mit der Zeit.
zB if((month == 11) && (monthDay >= 15 ) ) einzeit =93600+1560+ monthDay1560
Grüße Uwe
ich möchte jetzt bis ende november EInschaltzeit jeden tag um 15 min verspäten also am 16 sollte es um 9:30
Nur ein Denkanstoss:
jeder Einschaltzeitpunkt ist nicht 86400 sec (1 Tag) nach dem vorigen, sondern
86400L + 15*60 = 87300L
Den nächsten Schaltzeitpunkt würde ich ins RTC-RAM ( oder EEPROM, falls es keine Uhr mit feiem RAM sein sollte ) schreiben, dann kannst du den Arduino auch mal resetten und abschalten (zumindest für 87300 Sekunden)