Hallo zusammen, ich benötige eure Hilfe. Ich versuche ein Board zu bauen, dass PWM Signale auswerten kann und generieren kann. Nun habe ich mir durch diverse Beiträge gelesen, allerdings findet man immer wieder andere Ansätze. Ich fass das mal zusammen. Ich will einen ATMega8 benutzen. Den Standard PWM Kannal kann ich nicht nehmen denn ich will die Frequenz des Signals verändern können. Also muss ich den 16bit Timer benutzen. Richtig ??? Für das auswerten der Signale muss ich zwei Counter benutzen. Der eine zählt die Zeit in der das Signal high ist, der andere wenn es Low ist. Kann man sich da was aus den verbeleibenden Timern zusammenbauen oder sollte man dies durch externe Counter(74HC590) realisieren. Ich wollte dieses Projekt in C proggen. Ich habe allerdings noch nicht so oft C benutzt. Kann man die Zählerstände und die Zeiten einfach multiplizieren und z.B. an ein LCD senden. Grüße Tom
Datenblatt Seite 97. Modus 14 dürfte bspw. von Interesse sein. Der bietet variable Frequenz und Pulsdauer.
Hallo Alex, ich hab mir den Modus 14 mal genauer angeschaut. Habe ich das richtig verstanden, dass man den TOP value verändern kann und der COMPARE value nur kleiner sein muss. Das ist ja schonmal nicht schlecht. Kann man dann auch noch die Sache mit dem Vorteiler nutzten oder läuft der Prozessor dann mit voller Taktfrequenz?? Grüße Tom
> Für das auswerten der Signale muss ich zwei Counter benutzen. Der > eine zählt die Zeit in der das Signal high ist, der andere wenn es > Low ist. Einer genügt, das lässt sich bei geschickter Programmierung mit dem input capture Interrupt erledigen. Du musst die Flanke dabei umschalten, da solltest du noch drauf achten, dass der Impuls nicht so schmal war, dass die entgegengesetzte Flanke schon wieder vorbei ist. > Kann man sich da was aus den verbeleibenden Timern zusammenbauen > ...? Das hängt ganz von deinem Controller ab. Ein ATmega640 zum Beispiel hat 2 8-bit- und 4 16-bit-Timer/Zähler. ;-)
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.