db9xq
28.03.2009, 20:36
Ich möchte eingehende Impulse von einem Tachogeber zählen.
Es steht leider nur noch der 8 Bit Timer zur verfühgung der eigenlich zu klein ist.
Da der 8 bit Timer aber nur bis 255 Zählen kann möchte ich die Zählerzeit verkürzen.
Jetzt habe ich hier ein Problem welches ich mir nicht erklären kann. Alle
Sekunde bei einer Freuqenz von 255Hz kann ich mir 255 Anzeigen lassen.
Lasse ich mir der Wert alle 0,5 Sekunden Anzeige bei gleicher Frequenz bekomme ich 128 Angezeigt.
So weit gut.
Erhöhe ich jetzt die Frequenz kipt die Anzeige bei 186 (ca. 370Hz) auf 0.
Ich habe erwartet, dass ich bei der Hälfte der Zeit eine Frquenz bis 500Hz verarbeiten kann.
Kann es sein das der Eingang nicht mehr als 370Hz verarbeiten kann?
Ausschnitt:
Incr Timerdurchlauf
If Timerdurchlauf >= 796 Then 'Überlauf 0,5 Sekunden Anzeige bis 186
'IF Timerdurchlauf >= 1592 'Überlauf 1 Sekunde Anzeige bis 255
Timerdurchlauf = 0 'Zurückstezen
Ausgabe 'gehe zu SUB Ausgabe
Timer0 = 0 'Timer zurück setzen
End If
Es steht leider nur noch der 8 Bit Timer zur verfühgung der eigenlich zu klein ist.
Da der 8 bit Timer aber nur bis 255 Zählen kann möchte ich die Zählerzeit verkürzen.
Jetzt habe ich hier ein Problem welches ich mir nicht erklären kann. Alle
Sekunde bei einer Freuqenz von 255Hz kann ich mir 255 Anzeigen lassen.
Lasse ich mir der Wert alle 0,5 Sekunden Anzeige bei gleicher Frequenz bekomme ich 128 Angezeigt.
So weit gut.
Erhöhe ich jetzt die Frequenz kipt die Anzeige bei 186 (ca. 370Hz) auf 0.
Ich habe erwartet, dass ich bei der Hälfte der Zeit eine Frquenz bis 500Hz verarbeiten kann.
Kann es sein das der Eingang nicht mehr als 370Hz verarbeiten kann?
Ausschnitt:
Incr Timerdurchlauf
If Timerdurchlauf >= 796 Then 'Überlauf 0,5 Sekunden Anzeige bis 186
'IF Timerdurchlauf >= 1592 'Überlauf 1 Sekunde Anzeige bis 255
Timerdurchlauf = 0 'Zurückstezen
Ausgabe 'gehe zu SUB Ausgabe
Timer0 = 0 'Timer zurück setzen
End If