Frequenzmessung

Gast #995
Lesenswert?

Wie kann ich die Frequenz einer PWM (%50) duty cyle) Signal messen.Die 
Messung muss 100 mal pro sekunde erneut erfolgen.

Mehr ueber die ANwendung:

Die Ausgangspannung eines wechselrichters wird durch v/f converter durch 
einen optokoppler zur Mc seite transferriert.
DIe Mc muss die frequenz wieder ins Spannung Umwandeln (aber nur rein 
digital) eine f/v converter ist aus EMI gruenden nicht zulaessig.

Eine Loesung waere je 1 ms ein Interrupt aufrufen und den counterinhalt 
lesen und der abgelesene Zahl normieren.

Nur wie kann ich z.B 30 Khz Pulse zaehlen. Wieder durch einen Interrupt 
oder kann man das bei AVR (wie be PWM) automatisch einstellen?


Mfg.

Ferhat.

e9326570@stud4.tuwien.ac.at
Gast #996
Lesenswert?

Hallo,

man kann bei den Timern des AVRs als Taktquelle statt dem Oszillatortakt 
einen externen Takt einstellen (siehe Datenblatt). Dann kannst du 
einfach die Zeit bis zum Timer-Überlauf messen oder warten bis eine 
bestimmte Zeit um ist und dann den Zählerstand auslesen. Wenn die 
Frequenz dafür zu hoch ist, vorher extern runterteilen, z.B. mit 
74HC4040.

MfG
Andreas
Gast #997
Lesenswert?

Danke fuer den Hinweiss.

Ich verwende insgesamt 2 PWM quellen (das heisst 2 Timer) fuer die 
Steuerung der Halbbruecke. Habe ich eigentlich noch ein Timer3 zur 
Verfuegung bei 8515 oder 8535?

Ich habe mich sehr an die Timerknappheit des 8051 gewohnt.Bei AVR hat 
man wahrscheinlich die Luxus


Mfg.
Gast #999
Lesenswert?

Ne, leider nicht. Der 8515 hat glaube ich nur einen 8 Bit und einen 16 
Bit Timer. Über dieses Problem stoße ich auch immer wieder.
Aber Du kannst auch die externen Interrupteingänge verwenden. Davon gibt 
es zwei.
Schreib einfach eine kleine Interruptfunktion für jeden Eingang in der 
Du einen Zähler hochzählst. Über einen Timer erzeugst Du einen 
regelmäßigen Interrupt bei dem Du den Zählerstand abfragst und 
umrechnest.

Gruß
Markus
Gast #1001
Lesenswert?

Gerade Datenblatt angeschaut.

8515 enthaelt

1 8 bit Timer

1 16 bit Timer mit DUAL 8 oder 9 oder 10 bit PWM. DIe Bezeichnung DUAL 
gibt die Hoffnung dass es dann wirklich ueber compare registern 
realisierbar sind.
Nur bei 8535 ist das selbe Ausdruck DUAL PWM vorhanden nur Atmel gib vor 
dass der 3 PWM hat. Ich bin bischen verwirrt weil es gibt bei 8535 zwei 
zusaetzliche 8 bit Timer aber ohne PWM fuktion (Also keine capture 
compare registern)

Also ich probiere es mal.Wenn es nicht geht sollte man die brutale 
methode verwenden. Wie gesagt in der Interruptroutine zaehlen.


Ferhat.

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