wie kann ich folgendes realisieren. starteTimer ---> Wenn der Timer nocht nicht beendet und währenddessen eine Lichschranke ausgelöst wird ,ist die Zeit des Timers egal und das programm läuft weiter. Wenn Timer abgelaufen ist dann soll eine Fehlermeldung ausgegeben werden. Also nochmal in Worten. Wenn wären der Timer läuft und eine Lichtschranke aktiv wird soll das Prgramm weiterlaufen. Wenn die Zeit abgelaufen ist dann soll neh Fehelermeldung ausgegeben werden....Wie zum Beispiel....warten auf LS hat zu lange gedauert! Wie geht das...habe schon mit mehren schleifen probiert mir ist aber keine Lösung eingefallen! Wollte die zeitbasis vom Overflow Interrupt nehemen
Das Program besteht aus 2 Teilen: Eine Timeroverflow Routine, die Dir einen Zeittakt zur Verfuegung stellt: Sagen wir mal, Der Overflow wird alle 1 ms aufgerufen. Innerhalb der Overflow Funktion zaehlts Du eine (oder mehrere) Variable(n) hoch, die sowas wie eine Stoppuhr realisieren. Soweit so gut. Im Hauptprogram initialisierst Du die Stoppuhr auf 0 und startest eine Warteschleife. Die Schleife kann auf 2 Arten verlassen werden: * entweder ist die Lichtschranke aktiviert worden * oder die Zeit ist abgelaufen in PseudeCode: StopCounter = 0; Starte den TimerOverflowInterrupt while( StopCounter < WaitingTime && Lichtschranke_hat_nicht_ausgeloest ) { ; /* Warte */ } if( Lichtschranke_hat_nicht_ausgeloest ) Gib ne Fehlermeldung aus else mach weiter mit was anderem
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.