Warten.abe elegant!

Gast #3247592
Lesenswert?

Mahlzeit zusamme.

Ich hab mich heut morgen beim mittag gefragt ob  es eigentlich eine 
elegantere Moeglichkeit gibt als per timer interrupt fuer eine bestimmte 
Zeit (s,min)zu warten...mir ist nichts eingefallen.....und bevor ich 
wieder in der Luft zerrissen werde...die library delay.h id mir bekannt 
nur is die alles andere als elegant
Gast #3247605
Lesenswert?

tobi schrieb:
> Ich hab mich heut morgen beim mittag gefragt

Lol, die Studenten von heute :-)

tobi schrieb:
> ob  es eigentlich eine
> elegantere Moeglichkeit gibt als per timer interrupt fuer eine bestimmte
> Zeit (s,min)zu warten...

Klar: Beliebigen Timer starten und damit eine Variable bei jedem 
Interrupt hochzählen. Im Hauptprogramm zyklisch die Variable abfragen, 
wenn gerade Zeit dafür da ist. Ist Variablenwert >= Wartezeit, dann ist 
die Zeit rum. Fertig. In der Industrie Standard schon seit 
Menschengedenken.

tobi schrieb:
> die library delay.h id mir bekannt
> nur is die alles andere als elegant

delay.h ist ja eigentlich auch nur dafür da, damit man KURZE und 
halbwegs definierte Zeiten (wie bei der Initialisierung von LCDs z.B.) 
warten kann.
Gast #3247607
Lesenswert?

Kommt drauf an wie lange du warten musst.

wenige µSec ( < als die Zeit die benötigt wird um den Timer zu 
konfigurieren, Starten und den abschließenden IRQ auszuführen ) ==> 
einfache loop mit NOP

Alles was länger dauert ==> Timer
Gast #3247984
Lesenswert?

tobi schrieb:
> Mahlzeit zusamme.
>
> Ich hab mich heut morgen beim mittag gefragt ob  es eigentlich eine
> elegantere Moeglichkeit gibt als per timer interrupt fuer eine bestimmte
> Zeit (s,min)zu warten...mir ist nichts eingefallen.....und bevor ich
> wieder in der Luft zerrissen werde...die library delay.h id mir bekannt
> nur is die alles andere als elegant

Hallo;
ich finde hierfür beispielsweise die Verwendung eines RTOS elegant.

Beispiel: FreeRTOS, sofern für deinen Controller verfügbar.
Es gibt jecoch noch weitere kostenlose RTOS Systeme.

Gruß

PS:
Die Verwendung eine RTOS mag vielen "oversized" vorkommen.
Ich finde es auch bei kleineren Projekten hilfreich.

Mag jedoch jeder selber endscheiden ;-)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren