Wertebereich 1 Byte (PWM)

Gast #6298371
Lesenswert?

zu Hilfe und Hallo!

1 Byte kann 256 Werte annehmen. 0...255. Soweit bin ich ja auch an Bord. 
Wenn ich jetzt eine PWM mit 8 Bit Auflösung einstelle, kann ich auch 256 
Werte einstellen:

0 - PWM aus, Signal immer 0
255 - PWM immer an, also Signal immer 1


aaaaber was ist jetzt 50% Tastgrad? Kann ich gar nicht einstellen, außer 
ich habe eine ungerade Anzahl an Werten im möglichen Bereich.

Ich weiß, das ist vielleicht ein lächerliches Problem, aber ich 
verzweifle gerade. Und nicht nötig zu flamen....

Kann mir wer helfen?
Gast #6298422
Lesenswert?

Es gibt auch Microcontroller und PWM-Modi, wo 0 nicht "immer aus" 
bedeutet.


--> "Es kommt darauf an"

Wenn es so genau geht, musst du eben probieren+messen und/oder dir das 
Datenblatt reinziehen, allgemein gültig sagen kann man es nicht.
#6298471
Lesenswert?

Herman Kokoschka schrieb:
> Dan schrieb:
>> 0 aus
>> 1 ?%
>> 2 ?%
>> 3 an
>
> 0 aus
> 1 aus
> 2 an
> 3 an
>
> Genau 50%.
> Wo ist das Problem?

Dass du die Frage falsch verstanden hast. Was er wohl meine, war der 
Wert im Compare-Register:

0 = Tastgrad 0% ("aus")
1 = Tastgrad 33,3%
2 = Tastgrad 66,6%
3 = Tastgrad 100% ("an")

Da gibt's dann kein "genau 50%", es sei denn, du kannst einen Wert von 
1,5 ins Compare-Register laden. :)
Das setzt aber voraus, dass die beiden Tastgrade 0% und 100% überhaupt 
einstellbar sind. Prinzipiell sollte man der Doku des µC entnehmen, wie 
das gehandhabt ist. Beim AVR z.B. kommt im Fast-PWM-Mode bei 0 ein 
Tastgrad von 1/256 raus. Exakt 50% hat man dann bei 127 (entspricht 128 
Takte an und 128 Takte aus).
Gast #6298600
Lesenswert?

Dan schrieb:
> Irgendwie das es keine richtige Mitte gibt wenn man rechnet...
>
> Bei 4 Möglichen werten gibts doch keine 'richtige' Mitte. seufz

Doch, natürlich gibt es die:

Wert   Takte an  Takte aus  Duty %
0             0          4     0
1             1          3    25
2             2          2    50
3             3          1    75

Dein Problem ist, dass du nicht verstanden hast, dass es bei Fast-PWM 
keine
100% gibt (oder auch wahlweise: keine 0%). Es gibt an einem der beiden 
Enden der Skala immer einen Glitch von der Dauer eines Taktes.

Bei 8 Bit bedeutet das, dass das Maximum 255/256 = 99,6% ist.

Das steht aber alles auch im Datenblatt. Man muss nur seine Faulheit 
überwinden und dieses auch lesen...
Gast #6298605
Lesenswert?

c-hater schrieb:
> Das steht aber alles auch im Datenblatt. Man muss nur seine Faulheit
> überwinden und dieses auch lesen...

Mit lesen alleine ist es nicht immer getan ...

Man muss auch akzeptieren können, dass sich bei einm PWM modulierten 
Signal mit endlicher Auflösung nicht jeder Tastgrad mit beliebiger 
Genauigkeit einstellen lässt. Runde Zahlen im Dezimalsystem führen bei 
einem realen PWM-Generator nicht unbedingt auf genau einstellbare Werte. 
Es gibt immer die Möglichkeit, den Tastgrad zu modulieren, d.h. 
beispielsweise laufend zwischen 127 und 128 umzuschalten, um sich im 
Mittel Zwischenwerten möglichst gut anzunähern.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren