TIny24: PWM Auflösung verändern (möglichst ohne Software)

OP #1577639
Hallo zusammen,

ich möchte einen Step-Up mit einem AVR bauen. (Ja es gibt Regler, aber 
ich habe meine Gründe...)

Dabei würde ich eine möglichst schnelle PWM Frequenz erreichen (bei 
möglichst geringer CPU-Taktrate), aber ich möchte den Duty-Cicle auch 
verändern können.
Toll wäre es, wenn ich einen Timer nutzen könnte für den Duty-Cicle 
einzustellen, das parallele Register OCR0B im CTC Mode.

Klar, kann ich das Timerregister mit einer ISR immer Nullen, aber bei 
nur 4 oder 5 Bit Auflösung verbraucht mir das zu viel CPU-Zeit. Hat da 
einer von euch eine praktikable Idee?

Vielen Dank schon mal für eure Hilfe

Michael
Gast #1577695
Hallo,

für die Anwendung als SMPS Controller gibt es geeignetere AVRs. Der Tiny 
25/45/85 z.B. bietet einen 64 MHz Timer, Deadtimegenerator und eine 
einstellbare Aulösung (TOP Wert nicht fest auf 255 sondern variabel) so 
dass du ohne Probleme Frequenzen mit 500 kHz erzeugen kannst und dank 
des Deadtimegenerators sogar ohne Zusatzbeschaltung einen 
Synchronwandler bauen kannst.

Das wäre jedenfalls das einfachste und teuer sind die Teile ja nicht ;).
Gibt dann auch noch die AT90PWM* Modelle, aber die kosten dann etwas 
mehr.

Grüße
#1577793
Michael H. schrieb:
> [...]
> Dabei würde ich eine möglichst schnelle PWM Frequenz erreichen (bei
> möglichst geringer CPU-Taktrate), aber ich möchte den Duty-Cicle auch
> verändern können.
> Toll wäre es, wenn ich einen Timer nutzen könnte für den Duty-Cicle
> einzustellen, das parallele Register OCR0B im CTC Mode.
>
> Klar, kann ich das Timerregister mit einer ISR immer Nullen, aber bei
> nur 4 oder 5 Bit Auflösung verbraucht mir das zu viel CPU-Zeit. Hat da
> einer von euch eine praktikable Idee?
> [...]

Und warum nimmst Du dann nicht einfach den Timer0 im Mode 7 (Fast-PWM 
mit TOP=OCR0A)?

Volker
Gast #1577854
Wie wirklich sich TOP=OCR0A aus? Wenn der Timer immer dann zurückgesetzt 
wird wenn der Schwellwert zur PWM Erzeugung erreicht ist, wie sieht dann 
das Ausgangssignal aus?

Andere Idee: 16 bit Timer z.B. in Modus 14 als Fast-PWM mit TOP=ICR1 
nutzen.
OP #1577929
Hallo,

der Tiny25 klingt gut, aber ich brauch leider noch ein paar Anschlüsse 
mehr, am Besten so ~10 wie der Tiny24.

Die WGM-Modes sind mir irgendwie nie aufgefallen. Der 8-Bit Timer im 
Mode 7 gefällt mir gut. Dann nehme ich einfach OC0B als Ausgabe-Port, 
außer ihr wisst noch ein "Workaround". Den 16 Bit Timer lasse ich lieber 
noch mal frei, man weiß ja nie ob man den noch braucht. Aber definitiv 
auch keine schlechte Idee! Danke an alle schon mal für eure 
konstruktiven Antworten!

Was mich noch stutzig macht: Update of OCR0x at: Bottom. Wie darf ich 
das verstehen? Heißt das, das Ding nur bei 0 aktualisiert wird? Dann 
hätte ich doch nur einen CTC Mode unter einem anderen Namen. Oder sehe 
ich das falsch?

Grüße

Michael
#1578000
Michael H. schrieb:
> Was mich noch stutzig macht: Update of OCR0x at: Bottom. Wie darf ich
> das verstehen? Heißt das, das Ding nur bei 0 aktualisiert wird? Dann
> hätte ich doch nur einen CTC Mode unter einem anderen Namen. Oder sehe
> ich das falsch?

Bei Mode 7 zaehlt der Timer immer von BOTTOM bis MAX. "At Bottom" wird 
der Pin entweder auf high oder low gesetzt (je nach Einstellung) und 
beim Compare-Match invertiert.

That's it.

Volker
Gast #1578012
Hi

>That's it.

Das heisst, das der OCR-Wert, der zu irgendeiner Zeit an das OCR-Reister 
übergeben wurde, erst beim nächsten BUTTOM-Zustand in das Register 
übernommen wird.

MfG Spess

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 16 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.