Gast
#1995806
Hallo, ich habe folgende Frage: Mein momentaner Versuchsaufbau: Atmega8 interner Oszi gibt einen Takt vor und toggelt einen Pin mit 20Hz. Ein weitere Atmega8 mit interem Oszi liest das Signal des getoggelten Pins über ICP ein und misst die Zeit in Timerwerten (Endzeit-Startzeit). Nun habe ich zur Genauigkeitsprüfung eine einfaches Programm geschrieben. Es berechnet sich die Zeit zwischen 2 Flanken, speichert die berechnete Zeit in einer weiteren Variable. Im nächsten Durchgang wird geprüft ob die neue Zeit in einem Bereich der alten Messzeit liegt. Ich bekomme hier allerdings nur in einen Genauigkeitsbereich von 1024 (Gesamtzeit-512 bis Gesamtzeit+512). Alles was einen engeren Bereich definiert leuchtet die LED nur sporadisch (z.B. Gesamtzeit +/- 64).
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
Nun ist meine Frage, ob man mit dem internen Oszi einfach keine genaueren Ergebnisse erwarten kann (es geht hier nicht um Absolutzeiten, sondern um relativen Zeiten von einer Messung zur darauf folgenden) oder ob irgendwo in meiner Zeitberechnung der Wurm drin steckt. Ich habe im Moment leider keinen Quarz zur Hand, um das auszutesten. Danke und einen guten Rutsch.