Szia,
Tegyünk rendbe azért egy-két dolgot. Az, amit te az Arduino keretrendszerben művelsz, az a felszín felszínének a legfelső rétegének kapargatása egy tollseprűvel. Az Atmel önmagában egy elég erős jószág, az Arduino keretrendszerbe ágyazva csak annyi történik, hogy a kemény munka jelentős részét szimplán eldugják előled, de attól az még ott van a háttérben. Az a kitételed, hogy „egy dátum kiiratása a 21. században az nem szabadna komplexitásnak lennie” egyértelműen azt jelenti, hogy fogalmad sincs arról, hogy valójában milyen folyamatok zajlanak a háttérben. Ez kezdőként nem baj, csak nem azzal kell kezdeni, amit a Windows világában megszoktál, hogy bekapcsolod, ráböksz és működik. Ez nagyon nem az a liga.
„setup részen ez már működött úgy, hogy a hónapot és a hét napját magyarul írta ki - oké ékezetek nélkül de tényleg működött a kiíratás, csak nem frissült napról - napra.” Ha ez valóban így van, akkor semmi más dolgod nincs, mint a működő verzióra visszamenni és megnézni, hogy a naponkénti/óránkénti/bármilyen frissítést hogyan lehet megcsinálni [u.i.: nem delay()-jel]. Alap fejlesztői koncepció, hogy modulárisan gondolkodunk (lásd LyPapa korábbi válaszát): az egyes elemek működését úgy hardver, mint szoftver oldalról egyenként ellenőrizzük és optimalizáljuk, csak ezt követően kezdjük el őket egymáshoz rakosgatni. Ez a „mindent dugj össze, töltsd fel és működni fog” elv a legritkább esetben jelent tiszta alapot egy saját személyre szabott projektnél.
„utána olvastam és amint Ti is írjátok a Serial.println on kívül nincs debug segítség ... hát ha ez a jó, milyen lehet a használhatatlan” Ez így nem egészen igaz, mert az Arduino keretrendszeren kívül, megfelelő hardverrel az Atmelt is lehet normálisan debugolni. Csak ehhez egy 2 GB-os fejlesztői környezet (IDE) és egy uszkve 50 000 forintos hardver kell. Rengeteg mással egyetemben az Arduino keretrendszer egyik legnagyobb hiányossága, hogy nincs rajta normális debug. Az a megoldás, amit a korábbi válaszomban írtam, az esetek 95%-ában képes a probléma megoldására. Tudjuk, hogy nagyon szar, hogy nincs breakpoint, nagyon szar, hogy csak közvetett módon tudjuk egy változó (vagy változók) állapotát ellenőrizni és az is rengeteg órajelet zabál fel, nagyon szar, hogy csak körülményesen tudunk a folyamatba beavatkozni.
„Így egyből inkább más libekkel próbálkoznék...” Miért? Működött.
Én közel 8 évig fejlesztettem Arduino keretrendszerben. Az utolsó 3 év már nagyon fájt, de egy projektet be kellett fejeznem. Borzalmasan megírt könyvtárak jellemzik az egészet. Elképesztően kotvány egyik-másik, és mivel nincs de facto szabvány arra vonatkozóan, hogy a perifériákat hogyan kell architektúrába rendezni, így ahány gyártó, annyi féle hardveres implementáció és ehhez képest még egy nagyságrenddel több könyvtár, ami a perifériát kezeli. Ezek 75%-ának nagyjából nem lenne szabad léteznie. A maradék 25%-ból is maximum 5% az, ami normális, következetes, rendszeresen karbantartott és viszonylag hibamentes. Ebből párat az Adafriut kalapált össze, de tőlük is láttam már eszelős kotványt.
Ha valami egyszer már működött, akkor nem a könyvtárral van a baj, hanem annak a kezelésével (nagyon kevés kivételtől eltekintve). Csináld végig rendesen a modulteszteket, és ha minden úgy megy, ahogy elképzelted, akkor rakd össze az egészet!
„Mivel egyébként is fejlesztő vagyok van elég egyébb tanulni valóm, csak akkor férne bele más, ha időben is eleget haladnék vele.” Hm. Mit fejlesztesz? Milyen környezetben?
Üdv,
Prof