Oliver R. schrieb:
> ?? also, bei mir sind auch 8MHZ /1024 = 7,8125Khz -> 7812,5 Hz und sind
> doch 0,000128s -> 128 us und f=1/t -> 1/128us = 7,8125 kHz? oder nicht?
FAQ: Timer
> aber mir das das mit dem verschieben des Tastverhältnisses noch nicht
> klar und auch nicht in tutorial...?
Was genau ist dir da nicht klar?
Du hast ein Rechtecksignal (ok, du hast 2 Signale im Vergleich)
+------+ +------+ +--...
| | | | |
| | | | |
| | | | |
------+ +-------------------+ +--------------------+
+----------------------+ +-----------------------+ +--...
| | | | |
| | | | |
| | | | |
------+ +---+ +---+
beide haben die gleiche Frequenz, denn der Abstand von der steigenden
Flanke bis zur nächsten steigenden Flanke ist in beiden Fällen derselbe.
Der einzige Unterschied: im 2. Signal dauert die High-Phase länger,
dafür ist die Low-Phase dementsprechend kürzer. Das erste hat einen
Tastgrad von (über den Däumen) 30%, das zweite hat einen Tastgrad von
ca. 90%.
Wenn also der Timer für einen kompletten PWM Zyklus (von steigender
Flanke bis zur nächsten steigenden Flanke) einmal von 0 bis 255 zählen
muss, dann muss er für die 30% von 0 bis 0.3*255 = 76 zählen, während er
zur Realisierung der 90% PWM bis 0.9*255 = 229 zählen muss, ehe er dann
bei Hardware-PWM den Pin wieder auf Low ziehen soll.
Bei Hardware-PWM kann das die Hardware selber machen, bei Software-PWM
muss man das dann eben in einem Programm nachbilden.