Forum: Mikrocontroller und Digitale Elektronik AVR Mega32 Frequenz messen


von Rolf (Gast)


Lesenswert?

Hi,

ich möchte mit einem Mega32 die Frequenz von 2 Signalen ermitteln.
Die Frequenz liegt bei beiden Signalen zwischen 1Hz und 500 Hz.
Bisher nutze ich 2 Interrupteingänge die ich einfach inkrementiere und
mit nem Timer den Wert nach einer Sekunde abfrage.
Ich würde allerdings die anliegende Signalfrequenz schon am besten nach
250ms ermittelt haben (klar bei 1 Hz oder 2 Hz geht das noch nicht, aber
ab 4 Hz und höher müßte es ja möglich sein).
Gedacht hab ich mir einfach mit je einem Timer den Zeitabstand zwischen
2 fallenden Flanken zu messen. Mein Problem besteht nun darin aus der
gemessenen Zeit (in ms) die Frequenz zu bestimmen.
Daß das mit 1/t geht ist mir schon klar, wie jedoch realisiere ich eine
1/t Rechnung mit dem Mikrocontroller?? Habe seither nur mit Integer
Variablen gearbeitet, für solch eine Rechnung wäre aber Float
notwendig? Ist dies mit nem Mega32 möglich, oder hat jemand sonst ne
Lösung parat wie ich aus der gemessenen Zeit auf die Frequenz komme???

von crazy horse (Gast)


Lesenswert?

warum sollte das mit integer-Rechnung nicht gehen??

von Rolf (Gast)


Lesenswert?

Hi Crazy Horse,

Asche über mein Haupt....
da hast allerdings recht !!! Irgendwie stand ich grad mächtig aufm
Schlauch als ich meinen "langen Roman" verfasst habe ;-)
Muß ja einfach nicht 1/t rechnen, sondern 1000000/t dann hauts hin
;-)

Trotzdem Danke für den kleinen Denkanstoß

von Michael (Gast)


Lesenswert?

Hallo Rolf,
damit Du das Rad nicht neu erfinden mußt ein link:
http://www.mino-elektronik.de/progs/avr/fm.c

Je nach Auflösung und Genauigkeit, kannst Du auch mit int (besser
jedoch long) rechnen. Wenn die Auflösung nicht sehr hoch sein muß,
reicht es auch die Periodendauer mit einem Timer zu messen, der z.B.
mit 10kHz freilaufend für mehrere Meßkanäle einsetzbar ist.

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.