Forum: Mikrocontroller und Digitale Elektronik Frequenzzähler eigenbau


von Karsten Bier (Gast)


Lesenswert?

Hallo,

so leute, mal nen paar Fragen...
Ich will einen einfachen Frequenzzähler bis max. 100MHz bauen.
Schaltungstechnisch habe ich einen AVR und einen Lattice CPLD
vorgesehen. Der Lattice soll die Zähler, Gatter und den
Gate-Takt-erzeuger beinhalten, der AVR soll aus dem CPLD die
Zählerstände auslesen, die Zähler Resetten und auf einem LCD alle
Ergebnisse servieren.

1.)Macht es Sinn, das Eingangssignal (evtl. auch ein analoges) zu erst
durch einen Verstärker mit "unendlichem" Gewinn zu schicken um
möglichst steile Flanken zu bekommen?

2.)Wenn ich (entsprechend 1.)) ein sauberes, digitales Signal erzeugt
habe, kann ich es dann einfach invertieren und mit diesem einen
zweiten, "ge-gated-en" Zähler starten, um damit den Duty-Factor exakt
zu bestimmen? Klingt irgendwie zu einfach...

3.) Noch eine grundsätzliche Frage, die mich schon den ganzen abend
beschäftigt: wenn ich ein 50:50 Rechtecksignal mit sagen wir mal, 3MHz
mit einem, 1MHz Signal "unde", was kommt da raus?
- minimal 1MHz, d.h. die erste und dritte Flanke sind nicht def. also
1
- oder 2?
- oder 3 Impulse?
Dieses ganze, mathematische, gegen Null Gegehe mießfällt mir schon
immer etwas...trotz Mathe LK! in Grund und Boden schäm ich weis....

Ich brauche diese Information, um abschätzen zu können, wie sich das
Zählewrgebnis der beiden Zähler verzählt.

Meinen bisherigen Überlegungen nach, ist die Anzahl der gezählten
Impulse...

n = Fin / Fgate,

demnach ist die Frequenz Fin,

Fin = Fgate * (n +-1) oder wie? plus eins, minus eins? Überlegungen
haben gezeigt, dass es auch +2 sein könnten...
Klar, wenn ich mich bei einem Zählerstand von 10.000.000 um 1 verzähle
ist es EGAL, aber bei einem ZS von 3 ist es halt schopn signifikant!

Jemand Vorschläge?

Gruß
KB

PS: kann man bei einem "echten" Freq.zähler eigentlich eine Art
"Trigger Level" einstellen?

von Thorsten (Gast)


Lesenswert?

Hallo,

vielleicht ein bissche off-topic, weil ich Deinen Beitrag nur
ueberflogen habe, aber vielleicht hilft das

http://www.dl1dsn.de/projects/counter/counter.htm

CPLD (nur!), bis 200 MHz, Sourcen oeffentlich.

Gruesse aus London

Thorsten

von Marko (Gast)


Lesenswert?

AVR bis 100 MHz ?
Ich glaub da wirste probleme bekommen.

von Benedikt (Gast)


Lesenswert?

Mein Frequenzzähler mit AVR geht bis rund 1,2GHz, ohne Probleme...

von Marco B. (marcoblum)


Lesenswert?

@ Benedikt
Dann poste doch mal hier bitte ne kleine Anleitung, würde bestimmt
viele interessieren. Zumindest Schaltplan und code wären gut :-)

von Marillion (Gast)


Lesenswert?

>  Mein Frequenzzähler mit AVR geht bis rund 1,2GHz, ohne Probleme...

Ja sicher, aber wie sieht Deine vorgelagerte Frequenzteilung aus?

Noch wichtiger ist die Frage, wie hoch ist Deine Frequenzauflösung?
Wie werden die 1,2GHz bei Dir angezeigt, z.B.:
1.200.000.000 Hz (Idealfall) oder
1.20000000 GHz oder
1.200000 GHz oder
1.200 GHz


Zum allgemeinen Verständnis: Nicht die MCU zählt die Frequenz, sondern
eine vorgeschaltete Binarzählerkombination aus diskreter Logik, oder
mittels einer CPLD.

Marillion

von Gralf (Gast)


Lesenswert?

Hi!

Ein Frequenzzähler im Eigenbau würde mich auch reizen. Bisher habe ich
da noch keine großen Gedanken dran verschwendet. Mein erster Gedanke
war, das irgendwie mit dem Analog-Komparator zu erledigen. Der macht
mir ja schon mal ab einer bestimmten Schwelle (>"Triggerlevel" (?))
ein Rechteck. Ok, ganz ohne externe Vorteiler geht es dann natürlich
nicht so weit in den MHz-Bereich. Aber was braucht man denn, wenn man
nicht mit HF-Technik arbeitet, bis auf die Taktung der µC.

Gralf

von Frank (Gast)


Lesenswert?

guck dir mal an wie das hier http://www.sprut.de gemacht wird. Da ist
auch das Prinzip ganz gut erklärt.

bye

Frank

von Benedikt (Gast)


Angehängte Dateien:

Lesenswert?

Angaben wie
1.200.000.000 Hz
sind bei einem selbstgebauten Frequenzzähler Schwachsinn.
Was bringt es, auf 1Hz genau anzuzeigen, wenn der verwendete
Quarzoszillator bereits 50ppm Abweichung + Temperaturdrift hat ?
Für solche Genauigkeiten braucht man auch eine entsprechend genaue
Referenzfrequenz, die man (abgesehen von solchen Tricks wie DCF Träger
oder ARD Horizontalfrequenz) nicht unter einigen k€ bekommt.

Mein Frequenzzähler kann so hoch messen, wie HCMOS ICs gehen (rund
50-80MHz). Darüber hinaus verwende ich einen 1:64 Vorteiler bis
1,2GHz.
Die Anzeige erfolgt in Hz, kHz, MHz jeweils auf etwa 5 Stellen
gerundet.

von Christoph Kessler (Gast)


Lesenswert?

Es gibt Frequenzzähler mit PIC, die gehen bis etwa 50 MHz direkt mit dem
PIC-Eingang, im AVR werden die Eingangssignale mit der Taktfrequenz
synchronisiert, daher kann er maximal ein symmetrisches Rechteck der
halben Taktfrequenz zählen. Den PIC-Zähler gibts übrigens bei
www.funkamateur.de zu kaufen. Er hat eine trickreiche analoge Eingabe
über den AD-Wandler mit Poti, um den Frequenzversatz der
Zwischenfrequenz einzugeben. Ich habe auch schon, natürlich mit
Vorteiler, mit dem AVR 8515 Frequenzen bis über 2 GHz gezählt,(während
des Wobbelvorgangs eines Panoramaempfängers), da sind 5 Stellen
ausreichend.
73
Christoph

von Marillion (Gast)


Lesenswert?

@Benedikt

Ob etwas Schwachsinn ist und was, darum ging es mir nicht.
Mir ging es um Deine plakative Bemerkung, daß Dein..."Frequenzzähler
mit AVR bis 1,2GHz"... misst, ohne die Nachteile Deines Zählers
genauer zu beschreiben. Denn eine Auflösung von nur 5 Stellen und
100ppm-Ref-Drift ist ja nicht so berauschend.

Alle Bauvorschläge die ich im Web bisher gesehen habe, besitzen
mindestens einen der folgenden Nachteile:

- bescheidene Auflösung, bei 1MHz sollten es schon noch 1 Hz sein,
- mangelhafte Fref-Erzeugung, optimal wären +/- 1ppm bei 10MHz(25MHz)
- fehlender Vorverstärker für 50mVss im Bereich von DC bis 100MHz
- es können nur Frequenzen gemessen werden, evtl. noch Periodendauer,
Pulsbreitenmessung und Tastgradmessung werden garnicht unterstüzt.
- auch Offsetmessungen sind für den Elektroniker ein muß.

Was eine kostengünstige und hochstabile(10e-10) Fref-Erzeugung
betrifft, so gibt es in naher Zukunft wohl die Möglichkeit, über einen
handlichen GPS-Empfänger diesem Problem bei zu kommen.


Marillion

von peter dannegger (Gast)


Lesenswert?

Einen CPLD brauchst Du nicht, es reicht ein schneller Vorteiler
(74AC/74F-Serie).

Die Software ist auch nicht schwer, da ja ein MC rechnen kann:

fx = fref * n / m

Und wenn Dir 5 Digits Genauigkeit reichen, dann reicht als Referenz ein
normaler Quarzoszillator. Darüber wirds haarig (Thermostat).

Die meisten Schwierigkeiten macht der Eingangsverstärker und Trigger.
Oftmals werden für HF und NF getrennte Eingangsstufen aufgebaut.

Hier mal mein Frequenzmesser (0,5Hz..125MHz) ohne Eingangsstufe:

http://www.mikrocontroller.net/attachment.php/46451/fmeter.zip


Peter

von Benedikt (Gast)


Lesenswert?

@Marillion

Was ist an der Aussage falsch, dass mein Frequenzzähler bis 1,2GHz
messen kann ?
Über die Genauigkeit sagt das nichts aus.

Und dass Low Cost Selbstbau Frequenzzähler nicht mit 10000€ Geräten von
Rohde & Schwarz o.ä. mithalten können ist wohl auch klar. Nicht jeder
Hobbybastler hat das nötige Kleingeld und den Bedarf für 1ppm Quarze...

von Olaf K. (olaf_k)


Lesenswert?

>Mir ging es um Deine plakative Bemerkung, daß Dein..."Frequenzzähler
mit AVR bis 1,2GHz"... misst, ohne die Nachteile Deines Zählers
genauer zu beschreiben. Denn eine Auflösung von nur 5 Stellen und
100ppm-Ref-Drift ist ja nicht so berauschend.

Das sehe ich so wie Benedikt. Wenn ich sage "Mein Multimeter mißt
Spannungen bis 200V", dann ist an dieser Aussage auch dann nichts
auszusetzen, wenn mein Meßgerät dies im 200V-Bereich nicht mit
mV-Genauigkeit kann.

Primär ging es ja darum, ob man überhaupt Frequenzen im 100 MHz-
bereich mit einem AVR messen kann, wobei einer der Forenteilnehmer
meinte, mit einem AVR sei das wohl gar nicht möglich (wohl weil er die
Möglichkeit des Vorteilers übersah). Worauf Benedikt antwortete, daß
sein Zähler mit AVR bis 1.2GHz geht. Was ist daran auszusetzen? Um
Genauigkeiten ging es hier gar nicht, und es dürfte ohnehin klar sein,
daß man mit einfachen Hausmitteln nicht besser sein kann als die
Referenz, also z.B. quarzgenau.

Ein Frequenzzähler zählt auch dann bis 1.2GHz, wenn er dies als "1.2
GHz" anzeigt. Irgendwie unterliegen die Leute immer dem Trugschluß,
ein Frequenzzähler sei erst dann seines Namens würdig, wenn er selbst
im GHz-Bereich noch Hz-genau anzeigt.

> 1.200.000.000 Hz (Idealfall)

Warum ist nun gerade das der Idealfall? Was ist mit den mHz? Würde
dieser Frequenzzähler bei 120 Hz "120 Hz" anzeigen, wäre das dann
auch ideal? Oder müßte es "120,0000000 Hz" heißen, damit es ideal
wäre?

MfG Olaf

von Marillion (Gast)


Lesenswert?

> Ein Frequenzzähler zählt auch dann bis 1.2GHz, wenn er dies als "1.2
GHz" anzeigt. Irgendwie unterliegen die Leute immer dem Trugschluß,
ein Frequenzzähler sei erst dann seines Namens würdig, wenn er selbst
im GHz-Bereich noch Hz-genau anzeigt.

Sorry Olaf, das ist kein Trugschluß, das ist konsequent!
Denn, eine Frequenz hat die Maßeinheit Hz. Und das bedeutet
Schwingungen pro Sekunde.
Der Idealfall ist eben, daß bei einer Torzeit von 1sec eine Auflösung
von mindestens 1Hz erreicht wird.

Ein Gerät das 1,2GHz anzeigt ist kein Frequenzzähler, damit kann man
noch nichtmals schätzen.


Marillion

von Marillion (Gast)


Lesenswert?

>PS: kann man bei einem "echten" Freq.zähler eigentlich eine Art
"Trigger Level" einstellen?

Bei sehr vielen Frequenzzählern, auch der unteren Preisklasse, kann man
den Triggerlevel einstellen.

www.elv.de
www.hameg.de
www.lieven-instruments.com


Marillion

von Lai (Gast)


Lesenswert?

@Marillion

ich denke das du es nicht schaffen wirst eine Frequenz im GHz Bereich
so stabil hinzubekommen, das du sie aufs Hz genau messen kannst.
es gibt ja nicht um sonst Messtoleranzen und die sind durchaus sogar
noch im %-Bereich (Siehe Bauteile R C L)

73

von Benedikt (Gast)


Lesenswert?

@Marillion

>Denn, eine Frequenz hat die Maßeinheit Hz. Und das bedeutet
>Schwingungen pro Sekunde.

Und was ist also jetzt an meinem Frequenzzähler falsch, wenn ich die
1200000000Hz durch 256 teile und dann 1s lang die Frequenz messe ?

von Peter D. (peda)


Lesenswert?

@Marillion

"Der Idealfall ist eben, daß bei einer Torzeit von 1sec eine
Auflösung
von mindestens 1Hz erreicht wird."


Oh Gott !

Wenn ich 50Hz nur auf 1Hz genau messen könnte, dann ist das kein
Frequenzmesser, sondern ein Schätzeisen.

Es ist völliger Quatsch, 2Hz auf 1Hz genau zu messen (schätzen) ebenso
wie 1,2Ghz auf 1Hz (braucht keiner !).


Ich möchte völlig unabhängig vom konkreten Wert immer 4-5 Digits
Genauigkeit haben und mein Frequenzmesser macht das auch.

Und das möchten auch alle anderen, die ein kleines bischen Ahnung von
Meßpraxis haben.

Nicht die absolute Genauigkeit ist wichtig, sondern die relative
Genauigkeit !


Peter

von Marillion (Gast)


Lesenswert?

Peter, Du hast in meinem Satz das Wort 'mindestens' übersehen!

Ich wollte damit ausdrücken, daß die Auflösung höher sein darf(kann
oder muß). Ohne weiteres lässt sich 1Hz mit einer Auflösung von 1µHz
darstellen. So wird es ja auch mit der reziproken Zähltechnik gemacht.
Diese Zähltechnik stösst aber bei Frequenzen oberhalb von 10 - 20 MHz
an ihre Grenzen. Ab diesen Frequenzen arbeitet man wieder mit der
konventionellen Zählmethode. Und somit hat man die Möglichkeit eine
Auflösung von 1Hz zu bekommen(bei Torzeit 1sec).



Benedikt:
>Und was ist also jetzt an meinem Frequenzzähler falsch, wenn ich die
1200000000Hz durch 256 teile und dann 1s lang die Frequenz messe ?

Nichts ist daran falsch. Das Beispiel ist gängige Praxis, wenn auch der
Teilerfaktor 256 mir zu hoch ist(./.64 bingt mehr Auflösung).

Mein Einwand ging gegen Olafs Beispiel, der meinte, eine Anzeige von
1,2GHz sei ein brauchbarer Frequenzzähler.


Marillion

von peter dannegger (Gast)


Lesenswert?

@Marillion

"Ab diesen Frequenzen arbeitet man wieder mit der
konventionellen Zählmethode."


Wozu denn einen Unterschied machen ?

Man mißt einfach die Perioden über eine gewisse Zeiteinheit und hat
somit immer die gewünschte Auflösung völlig unabhängig von der
Frequenz.


Ich starte die Messung mit einer 1-0-Flanke des Eingangssignals, dann
zähle ich die Perioden über eine Mindestzeit (z.B. 0,5s) und dann
stoppe ich mit der nächsten 1-0-Flanke. Nun habe ich die Periodenanzahl
und die Anzahl der CPU-Zyklen über diese Periodenanzahl:

f_X = f_CPU-Zyklus * Periodenzahl / Zyklenzahl

Und fertig ist die Eingangsfrequenz.

Und mit Vorteiler:

f_X = f_CPU-Zyklus  Periodenzahl  Vorteiler / Zyklenzahl

Die maximal mögliche Genauigkeit entspricht der Zyklenzahl +/-1

Damit man nun bei kleinen Frequenzen keine Totzeit hat, nehme ich die
1-0-Flanke zum Stop der letzen Messung gleich zum Start der folgenden
Messung.
D.h. bei 1Hz erhält man auch je einen neuen Meßwert pro Sekunde.


Peter

von Marillion (Gast)


Lesenswert?

@Peter

An Deiner Formel ist nichts auszusetzen. Sie bietet jedoch nicht die
Möglichkeit der 1 Hz-Auflösung bei hohen Frequenzen(Torzeit 1sec).

Ab 20MHz und reziproker Messung haben alle mir bekannten Zähler
Einbußen an Auflösung.


Marillion

von Olaf K. (olaf_k)


Lesenswert?

>Sorry Olaf, das ist kein Trugschluß, das ist konsequent!
Denn, eine Frequenz hat die Maßeinheit Hz. Und das bedeutet
Schwingungen pro Sekunde.

"Frequenz" bedeutet "Schwingungen pro Zeiteinheit", das Hz ist nur
die Grundeinheit.

1GHz bedeutet "1 Schwingung pro Nanosekunde" und ist durchaus auch
eine Einheit der Frequenz, genau wie die Tonne eine Masseeinheit und
das Lichtjahr eine Längeneinheit ist.

Was zeichnet die Frequenz gegenüber anderen Einheiten aus, daß sie nur
ohne SI-Präfix gilt und in ganzen Vielfachen ihrer Grundeinheit
gemessen werden muß? Mal abgesehen davon, daß Zeit und Frequenz Dinge
sind, die sich glücklicherweise verhältnismäßig einfach mit sehr hoher
Genauigkeit messen lassen.

Aber wenn Du schon so eine hohe Genauigkeit anstrebst, warum ist da
ausgerechnet bei 1Hz Auflösung Schluß? Das ist doch eine völlig
willkürliche Festlegung. Was zeichnet die Torzeit von 1s gegenüber
jeder beliebigen anderen Torzeit aus, außer daß sich damit besonders
leicht rechnen läßt?

Es ist übrigens ein Irrtum, anzunehmen, daß die Genauigkeit der
Frequenzmessung (="Auflösung") durch die Verwendung eines Vorteilers
herabgesetzt wird. Denn die Genauigkeit ist exakt dieselbe, wenn ein
7-stelliger Frequenzzähler bei genau 1.2 MHz
"1.200.000 Hz +/-1Hz"
anzeigt, und mit einem Vorteiler von 1:1000 bei genau 1.2 GHz
"1.200.000 kHz +/-1kHz"

MfG Olaf




MfG Olaf

von Michael (Gast)


Lesenswert?

@Marillion

1. Warum sollte eine Formel ein hohe Auflösung 'verbieten' ?
2. Nur weil Dir etwas nicht bekannt ist, kann es das doch geben.

von peter dannegger (Gast)


Lesenswert?

@Marillion

"Ab 20MHz und reziproker Messung haben alle mir bekannten Zähler
Einbußen an Auflösung."


Du willst doch nicht ernsthaft behaupten, daß irgend jemand 1Hz/20MHz =
0,05ppm Auflösung braucht !

Auch ist es völliger Mumpitz, da Du nie im Leben eine 0,05ppm genaue
Referenzfrequenz erzeugen kannst.


Rein mathematisch wäre es aber kein Problem, nimm einfach einen LPC2106
bei 60MHz und schon kannst Du die 20Mhz sogar auf 1/3Hz anzeigen bei 1s
Meßzeit.


Wenn ich z.B. so einen alten TTL-Quarzoszillator anschließe, dann kann
ich dessen Temperaturdrift sogar bei 5 Dezimalstellen erkennen. Die
TTL-Oszis ziehen ja viel Strom und werden merkbar warm nach dem
Einschalten.


Peter

von Paul Baumann (Gast)


Lesenswert?

Manchmal ist ein TASCHENMESSER mehr wert als ein FREQUENZMESSER.

von sous (Gast)


Lesenswert?

@peter dannegger :

"Wozu denn einen Unterschied machen ?

Man mißt einfach die Perioden über eine gewisse Zeiteinheit und hat
somit immer die gewünschte Auflösung völlig unabhängig von der
Frequenz."

Nun, wenn man sehr niedrige Frequenzen genau messen möchte, würde es
recht lange dauern, genügend Schwingungen zu zählen.


@alle:
Verfallt doch nicht immer gleich in Glaubenskriege. Mit billigen
Mitteln kann man nicht genauer zählen, als der Quarz es erlaubt.
Wenn aber einer meint, er kriegt es hin und außerdem glaubt, dass er es
genauer braucht, dann wird er schon seine Gründe dafür haben.


Gruß, Michael

von Gast (Gast)


Lesenswert?

Zu den 1.2 Ghz habe ich noch eine ganz praktische Frage: Welche Teile
verwendet man für den Vorteiler? Gibt es da irgendeinen leicht
beschaffbaren IC, der diese Frequenz verarbeiten kann?

von Christoph Kessler (Gast)


Lesenswert?

Ja da gibts noch ein paar zu kaufen, leider wurden in den letzten Jahren
viele abgekündigt, da sie jetzt im PLL-Chip schon enthalten sind.
PLL-Chips bis über 2 GHz sind z.B. der I2C-Bus-gesteuerte SP5055
(micrel.com ?), den Philips auch mal als TSA(?)5055 produziert hat.
Schau mal bei www.giga-tech.de ,der hat noch ein paar, auch bei
www.funkamateuer.de gibts noch den MC12079 und die alten
Telefunkenteiler U866, U89373
Christoph

von Michael (Gast)


Lesenswert?

"Nun, wenn man sehr niedrige Frequenzen genau messen möchte, würde es
recht lange dauern, genügend Schwingungen zu zählen."

Das eben nicht, man mißt genau eine Schwingung (deren Periodendauer)und
ist fertig.

Es gibt sicherlich Anwendungen, bei denen hohe Frequenzen mit hoher
Auflösung erfaßt werden müssen. Eher unwahrscheinlich, daß das hier
jemand braucht.
Denkbar sind aber auch Anwendungen, die zwar 'nur' auf sechs Stellen
auflösen müssen, dabei aber z.B. 1000 Ergebnisse/s gefordert werden.
Dann muß beim reziproken Zähler die Referenzfrequenz entsprechend hoch
angesetzt werden und der zugehörige Zähler ohne Vorteiler betrieben und
auf das letzte Bit ausgelesen werden.
Das ist aber kein Nachteil gegenüber 'üblichen' Frequenzzählern mit
festen Torzeiten, da hier die Eingangsfrequenz auch nicht durch
Vorteiler herabgesetzt werden darf.

Der Aufwand (schnelle auslesbare Zähler + Synchronisierung) ist nahezu
gleich, wobei das reziproke Verfahren für meine Begriffe wesentlich
eleganter arbeitet.

von Christoph Kessler (Gast)


Lesenswert?

Hallo nochmal,
ich hab mal in den Anzeigenteil des neusten "Funkamateur" geschaut,
also da gibts vom "Leserservice" folgende Teile:
MC12079P 2,8 GHz /64 /128 /256 12,80€
zwei alte Plessey-Teiler bis max 520 MHz, dann noch:
U664P oder BS,U813BS, U891BS alle 1,3GHz /64 5,90/6,90€/2,90€/5,90€
nur so als Anhaltspunkt, was sowas derzeit kostet.
Wenn sowieso ein Mikrocontroller in der Schaltung sitzt kann man
natürlich eine PLL als Teiler programmieren, der SP5055 hat einen
Testmodus, da wirkt er nur als Teiler. Die sind oft in Satellitentunern
verbaut, läßt sich dort also ausschlachten.
73
Christoph

von Marillion (Gast)


Lesenswert?

@Peter

>Du willst doch nicht ernsthaft behaupten, daß irgend jemand 1Hz/20MHz
= 0,05ppm Auflösung braucht!

Der Hameg 8021 soll sich inzwischen ca.30.000-mal verkauft haben.


@Michael

>1. Warum sollte eine Formel ein hohe Auflösung 'verbieten' ?

In der von Peter verwendeten Formel wird der Vorteiler berücksichtigt.
Aber eben nur das ganzzahlige Ergebniss der Teilung. Der Rest der
Teilung, der noch als Information im Vorteiler steht bleibt
unberücksichtigt. Und das ist der Grund, warum, bei Vorteiler ./. 256,
die Frequenzauflösung auf +/- 1kHz verengt wird.


> 2. Nur weil Dir etwas nicht bekannt ist, kann es das doch geben.

Michael, bitte rechne erst nach, bevor Du soetwas schreibst!


Marillion

von A.K. (Gast)


Lesenswert?

"Der Hameg 8021 soll sich inzwischen ca.30.000-mal verkauft haben."

Und hat auch "bloss" 0,5ppm, nicht 0,05ppm, reicht also der obigen
Definition nach bloss für 2MHz.

von Peter D. (peda)


Lesenswert?

@Marillion

"In der von Peter verwendeten Formel wird der Vorteiler
berücksichtigt.
Aber eben nur das ganzzahlige Ergebniss der Teilung. Der Rest der
Teilung, der noch als Information im Vorteiler steht bleibt
unberücksichtigt. Und das ist der Grund, warum, bei Vorteiler ./. 256,
die Frequenzauflösung auf +/- 1kHz verengt wird."


Das ist ein Irrtum !

Ich messe ja immer von Flanke zu Flanke und damit gibt es keinen Rest.
Der Rest ist immer exakt Null.

Das ist der Vorteil, wenn man keine feste Torzeit nimmt, sondern die
exakte Torzeit durch volle Perioden des Eingangs oder des Vorteilers
bestimmt wird.

Deshalb ist auch die Berechnung nötig, was ja für den MC ein Klacks
ist.


Peter

von Peter D. (peda)


Lesenswert?

P.S.:

Du kannst den Vorteiler 256 auch bei 1kHz einschalten, das ändert
nichts an der Genauigkeit des Ergebnisses.

Da ich nur 5 Digits anzeige, wird dann eben 1000,0Hz angezeigt, d.h.
auf 0,1Hz genau.


Peter

von Michael (Gast)


Lesenswert?

1. Im Vorteiler bleibt kein Rest !
2. Du hast Deinen Kenntnisstand wiedergegeben; da kann man nichts
berechnen. Bei den führenden Meßgeräteherstellern wird man sicherlich
Geräte für jeden Bedarf finden.

von Kupfer Michi (Gast)


Angehängte Dateien:

Lesenswert?

@peter dannegger

ich hab mir mal deinen oben geposteten Code deines Frequenzmessers
angesehen (im Anhang zur besseren Übersicht alles zusammenkopiert), hab
da aber noch ein kleines Verständnissproblem.

In der init() Funktion wird Timer/Counter1 mit
  TMOD = ...  T1_M0_ | T1_CT_ ...
als 16bit Counter eingestellt.
In der Schematic ist T1 direkt mit dem Freq.Signal Input verbunden.

Der Rest des Codings legt jedoch nahe dass Timer/Counter1 als Timer
läuft.
Dazu müsste doch aber im TMOD Reg. das C/T1# bit auf 0 stehen.
Übersehe ich da was? (hab bisher noch nichts mit der 8051 Architektur
gemacht).

Danke im voraus,
Michael.

von peter dannegger (Gast)


Lesenswert?

@Michael,

T0 arbeitet in Mode 3 als 2 8Bit Timer/Counter: TL0, TH0.


Peter

von Kupfer Michi (Gast)


Lesenswert?

Ahhh... nun wirds klarer.
Danke.

(möchte den Zähler eventuell in ein Mega16 Projekt mit einbauen)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.