hallo, wie generiere ich eine Pwm mit fester Frequenz (ca 25kHz) aber mit einem variablem Tastverhältnis per hardware? kome nicht weiter... controller: Attiny2313 grüße
AVR Anfänger schrieb im Beitrag #2020268: > hallo, wie generiere ich eine Pwm mit fester Frequenz (ca 25kHz) aber > mit einem variablem Tastverhältnis per hardware? so wie alle anderen auch. Indem man den richtigen Timermode auswählt, die richtigen Register besetzt und den µC arbeiten lässt. Vor die grobe Vorgehensweise liest man in den Tutorien AVR-Tutorial AVR-GCC-Tutorial nach, selbst wenn die nicht für den tatsächlich benutzten Prozessor geschrieben sind. Denn die Details (die aber ähnlich oder analog zu dem im Tut gesagte funktionierern) finden sich dann im Datenblatt des spezifischen Prozessors.
Die tutorien habe ich bereits durch, pwm erzeugen ist kein problem aber womit ändere ich mein Tastverhältins?? dachte an den ctc modus. aber wo und wie kann ich jetzt mein tv einstellen (ausser am icr1, das wird für input capture benötigt)
AVR Anfänger schrieb im Beitrag #2020284: > Die tutorien habe ich bereits durch, pwm erzeugen ist kein problem aber > womit ändere ich mein Tastverhältins?? Tastverhältnis ist normalerweise eines der OCR Register. Welches genau, hängt vom verwendeten Timer bzw. vom verwendeten Timermodus ab- > dachte an den ctc modus. Nö. CTC brauchst du hier überhaupt nicht, solange die PWM Frequenz nicht aufs Hz genau sein muss.
also wähle ich zb fast pwm nicht invertiert und kann mit ocr0a die frequenz und mit ocr0b das tv einstellen oder? mal ganz blöd gefragt beim attiny2313 gibt es: (OC0B/T1) PD5 und (OC0A/PCINT2) PB2, an welchem der beiden kommt jetzt meine pwm raus?
AVR Anfänger schrieb im Beitrag #2020292: > also wähle ich zb fast pwm nicht invertiert und kann mit ocr0a die > frequenz und mit ocr0b das tv einstellen Du solltest Dich mal enscheiden. Erst wolltest Du doch die Frequenz nicht ändern. Peter
AVR Anfänger schrieb im Beitrag #2020292: > also wähle ich zb fast pwm nicht invertiert Das heißt Modus 7 vom Timer 0 > und kann mit ocr0a die > frequenz und mit ocr0b das tv einstellen oder? genau > mal ganz blöd gefragt > beim attiny2313 gibt es: > > (OC0B/T1) PD5 und > (OC0A/PCINT2) PB2, > > an welchem der beiden kommt jetzt meine pwm raus? OCR0A ist für das Zurücksetzen des Timers auf 0 verantwortlich, hat also mit der PWM an sich nichts zu tun, sondern nur damit, wie weit der Timer zählt. Die PWM wird mittels OCR0B erzeugt (weil OCR0A ja schon anderweitig benutzt wird). Dieser Compare-Match steuert, wann der Pin auf 0 bzw. wann er auf 1 ist. Du musst diesen Compare Match freischalten und du musst Tabelle 38 benutzen um den Output Pin zu konfigurieren. Überall kommt 'B' vor. Also wo wird jetzt deine PWM rauskommen?
@ peter: die frequenz möchte ich auch zur laufzeit nicht ändern sondern einmal fix einstellen. @Karl heinz: okay, also über ocr0b wird das tv eingestellt und in ocr0a die frequenz (zb bis 0xff) . ich benötige aber noch zur verwaltung der tasks einen overflow interrupt welcher mir eine variable zählt von timer0, das wäre doch dann timer0_compa oder der normale timer0 overflow int??
Hi >okay, also über ocr0b wird das tv eingestellt und in ocr0a die frequenz >(zb bis 0xff) . $FF als Top-Wert für PWM haben alle Timer. Da brauchst du kein Register. >ich benötige aber noch zur verwaltung der tasks einen >overflow interrupt welcher mir eine variable zählt von timer0, das wäre >doch dann timer0_compa oder der normale timer0 overflow int?? Bei PWM wird immer, wenn der Timer wieder auf Null springt ein Overflow-Interrupt ausgelöst. MfG Spess
also der ganz normale TIMER0_OVF_vect? danke!
Hi >also der ganz normale TIMER0_OVF_vect? >danke! Ja. Steht so im Datenblatt. MfG Spess
Hallo, habe mich vor einiger Zeit auch damit beschäftigt. Den Fast PWM-Mode 7 kann man anscheinend nur als symetrischen Rechteckgenerator benutzen ( Puls,- zu Pausenverhältnis 1:1 ). Setze hier mal mein Assembler Programm rein, das eine Power-LED über eine N-MOSFET per PWM in drei Helligkeitsstufen betreibt oder bis zur einer minimalsten Helligkeitsstufe dimmt. Hoffe Du kannst daraus ein paar Passagen gebrauchen. Viel Erfolg wünscht Dir Bernd_Stein
Bernd Stein schrieb: > Hallo, > > habe mich vor einiger Zeit auch damit beschäftigt. > Den Fast PWM-Mode 7 kann man anscheinend nur als symetrischen > Rechteckgenerator benutzen ( Puls,- zu Pausenverhältnis 1:1 ). Das würde mich jetzt aber wundern.
Hi
>Das würde mich jetzt aber wundern.
Mich auch.
MfG Spess
und ich danke trotz allem :))
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.