Re: Aktion einmalig jeden Tag Kategorie: Programmierung (von ChristianS - 28.10.2009 20:03) | ||
Als Antwort auf Re: Aktion einmalig jeden Tag von ChristianS - 28.10.2009 18:10 | ||
| ||
iHi Jörg, ich habe das mal probiert. Klappt wunderbar, aber warum hast Du den sleep 500 eingebaut? Gru�, ChristianS > Hi, > auch Dir vielen Dank für Deine Antwort. Probiere ich mal aus. > Gru�. > ChristianS > > Hallo zusammen, > > > > warum so kompliziert mit Timern? Ich frage einfach ab, ob sich der Wochentag geändert hat. > > Mache die Berechnung um 4 Uhr, da dann die SZ/WZ Umstellung gelaufen ist und vor 4 Uhr die > > Sonne eh nie aufgeht. > > > > 1) Beim Start das Mainthreads einmal aufrufen (Systemneustart): > > > > SASU(); > > SASUneu = system.day(); > > > > > > 2) Abfrage auf neuen Tag und 4 Uhr z.B. im loop des Mainthreads: > > > > if system.day()!= SASUneu and (system.hour() == 4)// Neuer Tag und nach MESZ Umstellungszeit > > { > > sleep 500; > > SASU(); > > SASUneu = system.day(); > > }; > > > > > > > > Funktion zur Berechnung und Terminalsausgabe: > > > > //------------------------------------------------------------------------------ > > function SASU () //Berechnung Sonnenauf- untergangszeiten, feste Geodaten > > //------------------------------------------------------------------------------ > > { > > int time[2]; > > string s; > > geo.SaSu(system.year(),system.month(),system.day(),50.71,6.2,0,time); > > SA=geo.MinuteSerial_to_TimeHHNN(time[0]); > > SU=geo.MinuteSerial_to_TimeHHNN(time[1]); > > s = "Sonnenaufgang: "; > > str.putint(s,SA); > > hwcom.send(s,23); > > hwcom.ret(); > > wait hwcom.ready(); > > s = "Sonnenuntergang: "; > > str.putint(s,SU); > > hwcom.send(s,25); > > hwcom.ret(); > > wait hwcom.ready(); > > } > > > > > > P.S. für SASUneu reicht ein integer vollkommen aus. > > Vielleicht kanns ja jemand brauchen :-) > > > > Viele Grü�e aus Aachen > > Jörg Hansen | ||
Antwort schreiben Antworten: Re: Aktion einmalig jeden Tag (von Jörg Hansen - 29.10.2009 22:33) Re: Aktion einmalig jeden Tag (von ChristianS - 30.10.2009 12:07) |