ATmega8 DAC nie Null!

Gast #2880429
Hallo,
ich experimentiere gerade mit einem atmega8 und seinen 
Digital-Analog-Wandler.
Ich stelle ihn auf PWM ein und kriege bei pwm = 0 auf dem Oszilloskop 
nie einen Tastgrad von 0 raus. Es werden immer geringe "High-Pegel" 
erzeugt.

Ich habe das in der Vergangenheit immer dadurch kompensiert, dass ich 
bei pwm = 0 den DAC ausgeschaltet habe. Dann bekomme ich eine gerade 0V 
Linie auf dem Oszi angezeigt.

AVR ist nicht defekt, habe es schon an mehreren probiert.
Gast #2880452
Hi

>Ich stelle ihn auf PWM ein und kriege bei pwm = 0 auf dem Oszilloskop
>nie einen Tastgrad von 0 raus. Es werden immer geringe "High-Pegel"
>erzeugt.

Die Impulsbreite bei Fast-PWM (normal) ist OCR+1. Kann also nicht Null 
werden. Bei invertierter Fast PWM kommst du auf Null, aber nicht auf 
100%.

Phase Correct PWM geht von 0..100%, aber die maximale Frequenz ist nur 
halb so groß wie bei Fast PWM.

MfG Spess
Gast #2880455
Hallo,

eine PWM ist ein Verfahren, um einen digitalen Spannungswert in einen 
analogen zu überführen --> DAC

Weiterhin hat eine "richtige" PWM eine feste Frequenz, deshalb ist bei 
vielen PWM-Modi des AtMega der Tastgrad 0 nicht möglich.

In welchem PWM-Modus läuft denn der AVR?
Gast #2880480
hatte ihn auf fast-PWM laufen lassen. Jetzt habe ich umgestellt auf
"Phase an Frequency Correct". Tastgrad von null ist jetzt möglich.
Was bedeutet Frequency correct?
Gast #2880484
ronnyroster schrieb:
> eine PWM ist ein Verfahren, um einen digitalen Spannungswert in einen
> analogen zu überführen --> DAC

Ein PWM-Signal ist immer digital und schalten mit einem einstellbaren 
Tastverhältnis zwischen High- und Low-Pegel um. Erst mit einem 
nachgeschalteten Tiefpass wird daraus eine analoge Spannung mit einem 
von Filterform, Grenzfrequenz und PWM-Frequenz abhängigen Ripple.
Gast #2880500
ronnyroster schrieb:
> eine PWM ist ein Verfahren, um einen digitalen Spannungswert in einen
> analogen zu überführen --> DAC

Nein, PWM (Pulsweitenmodulation) ist ein Verfahren um Informationen in 
der Pulsbreite eines Rechtecksignals unterzubringen. Wenn man will, kann 
man sich die Information daraus relativ einfach in eine analoge Spannung 
extrahieren. Muss man aber nicht.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 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.