Hallo Leute,

wie schon neulich geschrieben, habe ich ein paar Probleme mit der Zeit beim ausführen.

Nun hat sich herrausgestellt, daß das Zeitproblem ( https://www.roboternetz.de/phpBB2/viewtopic.php?t=16671), nicht auf die Hardware, sondern einzig auf die Software zurückzuführen ist.


Mit jeder Löschung von Quelltext steigt die Geschwindigkeit wieder an.


1. Habe einen Timer0 so eingerichtet, daß ich alle 0,001 sek einen
Zähler erhöhe.
2. Alle 0,01sek werden dann die 5adc-werte abgefragt und ein paar
Ganzahl-operationen durchgeführt.
3. alle 0,5sek Sollen dann die Ergebnisse, teilweise durch SUBS
formartiert, angezeigt werden.


Alles funktioniert auch soweit richtig, richtige Daten werden angezeigt, keine Abstürze/Hänger, keine Schleife wird ausgelassen und und und.

Nur das nicht alle 0,01. Sek der ADC ausgelesen wird, sondern alle 0,03Sek....das nicht alle 0,5Sek Daten angezeigt werden, sondern alle 1,5Sek
Die Zeit verdreifacht sich also.....


Lösche ich nun alles weg, daß nur noch

Code:
Do

If H_flag = 1 Then            'alle 0,001Sek ausführen
   Incr H                          'Zeitzähler Displayanzeige
   Incr Rr                         'Zeitzähler allgemein
   H_flag = 0
 End If


If H = 500 Then                              'alle 0,5Sek anzeigen
    Locate 1, 1
    Lcd Rr
    H = 0
End If                                                   
Loop

End


Timer0_isr:
   Load Timer0 , Ticks0
     H_flag = 1 'alle 0,001 flag setzen
Return
EDIT: war so frei und habe Code-Tags spendiert PicNick

dasteht, funktioniert alles genau.
Sobald aber nur eine schleife mit alle 0,01Sek die 5 ADC werte ausgelesen werden eingeschoben wird, war es das. Die Zeit verdoppelt sich...


Das stellt mich vor die Frage, ob Bascom überhaupt für zeitgenaue Sachen geeignet ist, oder ob ich einen Gedankenfehler habe.

Ist sehr ungünstig erst das Programm fertig schreiben zu müssen, um dann mit der Stop-Uhr den Zeitfehler zu messen und dann die Werte anzupassen....Oder reicht ein Quarzwechsel von 4 auf 8 MHZ aus und der Chip ist kräftig genug?[/code]