Messen von Frequenzen

Gast #491830
Wie würdet ihr das Messen von Frequenzen mit einem Atmega16 realisieren?

Takten will ich das Vieh mit einem Quarz der nahe an der grenze des fmax 
wertes liegt...

Also ich persönlich würde ca. 100ms lang messen und in dieser Zeit die 
eintreffenden "highs" zählen. um fehler zu vermeiden würde ich ein high 
erst bei 2-3 taktzyklen als ein high werten.

Die 100 ms würde ich mit einem timer bestimmen der nach dieser zeit 
einen interrupt auslöst und in deren interrupt-routine ich dann die 
messdaten verarbeiten kann.

Ist das eine effizente messmethode? hat jemand von euch bessere ideen?
Würdet ihr das zu messende signal an nen externen interrupt pin hängen 
oder eher pollen?

schöne Grüße

Danke für eure comments
Gast #491845
Stimmt. Entweder die Periodendauer aumessen oder die Anzahl Impulse 
innerhalb einer Torzeit zählen. Letzteres garantiert eine 
gleichbleibende Messzeit, die Periodendauermessung variiert mit der 
Frequenz.
Gast #492078
Wie man misst, hängt davon ab, wie das Verhältnis der zu messenden 
Frequenzen zur Taktfrequenz des Messgerätes ist. Bei niedrigen 
Frequenzen ist das Messen mit fester Torzeit (Periodenzähler) unsinnig, 
da i.d.R. nicht ausreichend Flanken innerhalb der gewählten Torzeit 
ankommen. In so einem Fall ist eine Periodendauermessung (mit Input 
Capture) unumgänglich, wenn man eine vernünftige Auflösung erreichen 
will. Bei hohen Frequenzen dagegen ist die Perioden- oder Flankenzählung 
die einzig sinnvolle Variante.
Gast #492108
Auch bei hohen Frequenzen ist die Periodenmessung sinnvoll, solange die 
Taktfrequenz über der zu messenden liegt. Man misst dann natürlich nicht 
nur eine Periode, sondern soviele wie in der vorgegebenen Zeit möglich.

Anschließend muß der Mikrocontroller eine Division durchführen um die 
Frequenz anzuzeigen. Das war mit einfachen TTL-Zählern nicht möglich, 
deshalb ist traditionell die direkte Zählung bekannter.
#492128
Ja, die Messung über n Perioden liefert hohe Auflösung über einen weiten 
Frequenzbereich. Und ne Divsion ist ja für nen MC ein Klacks.

Erst, wenn die Eingangsfrequenz die Referenzfrequenz überschreitet, 
liefert die Impulszählung eine höhere Auflösung, aber noch lange nicht 
auch eine höhere Genauigkeit.


Peter

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 19 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.