4233: Frequenzmessung

Gast #19926
Lesenswert?

Hallo!
Ich möchte mit meinem AT90S4233 eine Frequenz auf +/-20Hz genau 
bestimmen. Das Signal ändert seine Frequenz alle 100ms. Wie mach ich das 
am besten? Die Frequenzen liegen im Bereich 1kHz bis 3kHz.
Softwaretechnisch komm ich hin, außer ihr sagt, ich soll nen ADC nehmen. 
Da wüsst ich nicht so recht, wie ich das programmieren soll. Gibt es 
denn vielleicht externe Frequenzmesser?
Außerdem hab ich noch ein anderes Signal mit 1200bps (alle 3,3ms eine 
Zustandsänderung) welches jedoch nur logisch 1 und 0 darstellen kann. 
Frequenz für logisch 1 <1200Hz und für logisch 0 >2300Hz. Kennt ihr da 
eine Methode?
Ich wäre euch sehr dankbar,
Matthias L.
Gast #19929
Lesenswert?

Bei dem 1200bps-Signal könnte ein Tondekoder helfen. Mir fällt da 
spontan der LM567 ein, es gibt sicherlich noch andere. Per Google sollte
Mit der anderen Frequenz: Falls sie sinusförmig ist, über einen 
Schmitt-Trigger in Rechteck umwandeln und dann über das bereits erwähnte 
Input-Capturing über Timer1 machen. Im Kapitel über die Timer steht 
einiges wissenswertes drin.
Es sollte reichen, jeweils die Zeit von positiver zu positiver Flanke zu 
messen.
Eine andere Möglichkeit wäre, die Frequenz über einen Integrierer (oder 
wars der Differentierer? - bin analog nicht fit) laufen zu lassen, dann 
bekommt man im Idealfall eine Spannung, die proportional zur Frequenz 
ist. Dann braucht man allerdings den AD-Wandler - aber davon hat der 
2333 ja genügend, und ein klein wenig Neuland kann nicht schaden.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren