Re: PWM Kategorie: Sonstige Hardware (von Stefan - 2.11.2001 15:21) | |
Als Antwort auf Re: PWM von Robert - 2.11.2001 15:02
| |
> > Hallo Stefan > > Also, PWM bedeutet Puls-Weiten-Modulation. > Die Pulse haben eine konstante Period (ansteigende Flanke zeitlich konstant) und eine variable Pulsbreite (breite des Pulses zwischen ansteigender und absteigender Flanke ist variabel. > > Das wird in den CPU's in der Regel mit 2 Compare-Register gemacht. > Die Compare-Register sind einfache Zähler, die bei jedem CPU-Takt das jeweilige Register um +=1 weiter zählen, und beim erreichen eines im Register programierten Wertes einen Interrupt auslösen. > > Im Comparregister 1 wird die Periodendauer abgelegt (z.B. 1000 Takte). > Sobald der Interrupt des Comparregister-1 ausgelöst wird, wird in der Interruptroutine der Signal-Port auf 1 gesetzt. Im Comparregister-2 wird die variable Pulslänge (z.B. 200 Takte) gesetzt und der nächste zyklus des Comparregister-1 gestartet. > Danach wartet die CPU auf den Interrupt des Comparregister-2. > In der Interruptroutine des Comparregister-2 wird der Signal-Port wieder auf 0 zurückgesetzt. > Danach wartet die CPU wieder auf den Interrupt des Comparregister-1. > > Das war's ! > > Man kann das ganze auch mit nur einem Compare-Register machen, dann mu� man jedoch beide Signalzeiten High und Low vorher berechnen, soda� wieder eine konstante Periodendauer dabei herauskommt. > An Stelle der CPU-internen Compareregister kann man auch extere Zähler dafür verwenden. > > Gru� Robert Hi Robert, also, erst mal danke für deine Antwort. Aber, das mit den Comparregistern, konnte ich mir auch schonn denken, aber laut Manuel, sind PWM frequenzen bis 10Mhz bei 20 Mhz CPU clock möglich, das würde bedeuten, das bei 16 bit auflösung das der Zähler bei 10Mhz in 100ns von null bis 65536 zählen müste. und das währe dann eine Periodendauer des zählers von 1.5 hoch minus 12 was einer frequenz von 6.5 hoch 11 entsprechen würde, und das is es was mich so an diesen schema stört! also mü�en die das irgendwie anders machen, und denn analogen weg, intern noch nen richtigen AD wandler einzubauen, der dann das mit dem Dreicke und Schwellwerschalter macht, is mir doch zu wage. also, wie machen die das ? noch was zu deiner Theorie, währe es nicht vernünftiger, lieber den Zähler über nen einstellbaren teiler laufen zu lassen, und so die PWM frequenz zu bestimmen? also, ich hoffe auf konstriktive beiträge ;-) Grü�e Stefan | |
Antwort schreiben Antworten: Re: PWM (von Robert - 2.11.2001 18:10) |