mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik PWM dieserart machbar mit AVR?


Autor: Steffen DB1Ulm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich sitze gerade an der Planung einer Schaltung, in dieser soll uA eine
einer mathematischen Funtion abgeleitete Spannungsform erzeugt werden.

Meine Bisherigen Schritte waren die Übertragung der Funtion in eine
Wetretabelle, mit 255 Werten zwischen 0 und 255.
Die in diesem Bereich abgelgte Signalform soll ich in einer
Enlosschleife wiederholen. Ein "Durchlauf" von 0 bis 255 soll genau
4ms dauern.

Sehe ich es richtig, das ich  also alle  4ms / 255 = ca 25usec mittels
eines Interupts einen neuen Wert aus meiner Tabelle ins PWM Regsiter
schaffen müsste.

An diesem Punt kommen mir Zweifel, entweder hab ich einen Denkfehler
oder das funtioniert mit einem AVR dann doch nicht.

Ich hab schon ab und an mit PWM Kleinigkeiten gemacht, aber das war
irgendwie immer was anderes :)

Über antworten würde ic mich freuen,

steffen

Autor: Unbekannter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also,

Du musst die 4 ms durch 256 teilen, die "0" zählt mit. Und bei mir
gibt 4 ms / 256 = 15,69 us.

Und die PWM musst Du eben im "High-Speed-Mode", oder wie das beim AVR
heisst, betreiben. Die Frequenz der PWM sollte deutlich höher sein als
die der Abtastung:

Wiederholfreqeunz: 4 ms <--> 250 Hz

Abtastfrequenz: 250 Hz * 256 = 64 kHz.

PWM-Frequenz: 64 kHz * 10 = 640 kHz.

Müsste mit einem entsprechendem AVR funktionieren. Je höher die
PWM-Frequenz gewählt werden kann, desto geringer sind die Anforderungen
an das Filter am PWM-Ausgang. Ein simples RC-Filter macht ja nur 6 dB
pro Oktave, also wäre ein LC-Filter mit 12 dB pro Okatave angebracht,
da die Induktivitäten bei diesen Frequenzen ja sowieso schön klein
bleiben können.

Autor: Steffen DB1Ulm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
okay, dann werd ich mich mal durch die Atmel HP schmöckern, was ich noch
vergessen hatte:

es sollen 4 Signale parallel ausgegeben werden.

Vllt wäre dann doch ein externer DA Wandler die bessere Lösung

Autor: Sssssss (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oder du nimmst einfach einen Port mit einem R Netzwerk dran
und baust dir selber einen DA ;)
Kannst dann ja 4 Ports nehmen. Musst nur nen Mega mit genug pins nehmen

Autor: Steffen DB1Ulm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, im Moment habe ich es so, ein paar Eproms mit r2r wandler dahinter,
aber das ist irgendwie nicht so optimal (baugröße! Verbrauch)

Ich hab bei atmel nichts gefunden was derartige PWM Frequenzen
mitmachen würde...

Autor: Unbekannter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Manche AVRs haben so eine High-Speed-PWM oder so ähnlich. Aber nicht
alle.

Ansonsten einfach die Eproms durch Ausgänge eines Mikrocontrollers
ersetzen. Dann kannst Du den Rest (analoger Teil) beibehalten.

Autor: Steffen DB1Ulm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klar das wäre eine einfach möglicheit, aber ich suche nach einer etwas
eleganteren Lösung High speed PWM reicht so wie ich das sehe aber auch
nicht

danke schonmal

Autor: Rolf Magnus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wieso nicht? Du brauchst eine Frequenz von 64kHz. Eine 8bit-PWM bräuchte
dazu einen mit 16,384Mhz getakteten Timer. Da gibt's doch AVRs, die das
können.

Autor: DB1ULM (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja den Timer könnte ich schon realisieren, allerdingssehe ich bei der
PWm Frequenz die jadeutlich höherliegensollte (also mehrere 100 kHz)
Probleme

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.