das der Timer auf Start-Wert gesetzt wird ist bestimmt so in Bascom ... bin noch Bascom Anfänger und habe mich mit Timer in Bascom noch nicht befasst ...Code:Timer0_isr: Timer0 = Timerstartwert Incr Ms Return
dort soll doch der Wert MS um eins erhöht werden um deine DO/LOOP Schleife nach der Zeit MS=2000 zu beenden ...
in der FOR/NEXT Schleife müsste doch nach der DO/LOOP-Schleife der Wert MS wieder zurückgesetzt werden oder ?! ... kann da aber nichts finden ...
- - - Aktualisiert - - -
schreib mal Loop Until Ms > 2000Code:Loop Until Ms = 2000
den der Timer läuft doch von Programm Anfang an ... bis es in die DO/LOOP geht ist der Wert MS doch schon weit über 2000 ... vor der DO/LOOP den Wert MS=0 setzen ...
Beispiel:
Code:Ms=0 Do 'Locate 1 , 1 'Lcd "Bin im Do-Loop" ; S Print "Bin im Do-Loop" Print "Durchlauf Nr. " ; S ' ------ Ms = 0 ----- If Ms = Wert3 Then Gosub Kamera_ein End If Wert34 = Wert3 + Wert4 If Ms = Wert34 Then Gosub Kamera_aus End If If Ms = Wert5 Then Gosub Blitz_ein End If Wert56 = Wert5 + Wert6 If Ms = Wert56 Then Gosub Blitz_aus End If If Ms = Wert7 Then Gosub Ventil_ein End If Wert78 = Wert7 + Wert8 If Ms = Wert78 Then Gosub Ventil_aus End If If Ms = Wert9 Then Gosub Ventil_ein End If Wert91 = Wert9 + Wert10 If Ms = Wert91 Then Gosub Ventil_aus End If Loop Until Ms > 2000







Zitieren

Lesezeichen