Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: Zeitverzögerung Kategorie: Programmierung (von AndrĂ© H. - 7.08.2003 18:15)
Als Antwort auf Zeitverzögerung von Guido - 7.08.2003 17:34

Hallo Guido,

Mit sleep kann man das schon machen. Jedoch bräuchte man eine Menge sleeps
(oder eine Schleife) dafĂĽr da man pro sleep maximal 65,535sec warten kann.

Eleganter wäre es, z.B. die Minuten zu zählen:
const WaitTime=30;
byte timerflag, timer, minute;
...
thread timer
{
 timerflag=0xFF;
 timer=0;
 minute=system.minute();
 while timer<WaitTime
 {
  wait minute!=system.minute();
  minute=system.minute();
  timer=timer+1;
 }
 timerflag=0;
 reset;
}

Diesen Thread kannst Du einfach mit run starten.
Beim Start wird die Variable timerflag gesetzt.
Er läuft hier 30 Minuten. Nach ablauf der Zeit wird timerflag
wieder gelöscht und der Thread zurückgesetzt.
Mit Hilfe von timerflag wei�t Du dann, ob der Timer gerade läuft, oder nicht.

Wenn Du es lieber in einem Thread magst, kannst Du es auch so schreiben:
(sozusagen der sleep-Ersatz)

const WaitTime=30;
byte timer, minute;
...
thread timer
{
 timer=0;
 minute=system.minute();
 while timer<WaitTime
 {
  wait minute!=system.minute();
  minute=system.minute();
  timer=timer+1;
 }
 // ab hier der Code der Nach Ablauf des Timers ausgefĂĽhrt werden soll
 ...
}


MfG André H.


> Hallo
>
> kann mir jemand zeigen wie man eine Zeitverzögerung von ca 30 min Programmiert
> mit der Sleep funktion schei dies ja nicht möglich zu sein oder ????
>
> Danke mfg Guido


Antworten bitte nur ins Forum!
Fragen per EMail auf Forum-Postings werden nicht beantwortet!

Das macht meine Heizung gerade


    Antwort schreiben


Antworten:

Re: Zeitverzögerung (von Guido - 7.08.2003 21:11)