Ich versuche das mal ein bischen transparenter zu beschreiben:
Ein Puls-Weiten-Moduliertes Signal (PWM) hat eine bestimmte Periodendauer z.B. 100µs, das entspricht 10kHz. Innerhalb dieser Periodendauer wechselt der Pegel des Signals von low auf high und wieder auf low. Dabei ist die high-Zeit quasi die "Weite" des Signals. Diese "Weite" bzw. Aussteuergrad kann beliebig von 0% bis 100% verändert werden.
Bezogen auf die Anwendung einen Strom durch eine Spule fließen zu lassen - in unserem Fall eine Motorspule, wird der Stromanstieg während der high-Zeit (abhängig von der Induktivität der Spule) nach dI/dt ansteigen und in der low-Zeit wieder abfallen. Je länger nun die high-Zeit ist, umso größer wird der Strom. (wir lassen hier mal lückenden und nicht lückenden Betrieb ausser acht) Wird nun alle 100µs der Aussteuergrad verändert z.B. als Sinusfunktion, wird auch der Strom eine annähernd sinusförmige Verlauf aufzeigen. Im Normalfall ist der Sollwert dieser Regelung ein Sinus * gewünschte Amplitude und der Istwert eben der gemessene Strom. So wird dann ein richtiger Sinusstrom entstehen.
Für die o.g. Regelung mit tatsächlichen Sinuswerten benötigt man schon einiges an Rechenpower. Für eine Steuerung ist das eher zu vernachlässigen.
Wenn nun ein µControllen diese PWM-Signale erzeugt, müssen diese TTL-Pegel-Signale noch einen Leistungsschalter (z.B. IGBT) ansteuern. Um dieses ausreichend schnell zu machen, werden in aufwendigeren Schaltungen Gate-Treiber eingesetzt um die Schaltungsverluste zu minimieren.
Der L6234 benötigt als Eingang genau die o.g. Signale - ist also nichts weiter als eine "dumme" Treiberstufe. Hier macht also der µC die eigentliche Rechenarbeit. (Bootsrap Versorgung für die Gatetreiber muss extern beschaltet werden)
Zusätzlich ist die PWM-Pheripherie des µC noch mit tollen Features ausgestelltet wie z.B. Totzeit für die Vermeidung von Brückenkurzschlüssen. Da das Sperren eines IGBT länger dauert als das Öffnen wird eine Zeit benötigt, in der keiner der beiden Halbbrücken angesteuert werden.
Der L6235 hat hingegen schon mehr Intelligenz. Er benötigt im einfachsten Fall keinen µC - das macht er alles selbst. An einem Eingang die Drehrichtungsdvorgabe, an einem anderen eine Strombegrenzung. Diese Signale können natürlich auch von einem µC zur Verfügung gestellt werden. Hier kann man auch ein PWM Signal nutzen und es anschließend entsprechend Filtern. Somit hat man fast eine Gleichspannung mit einem bekannten Ripple. Dieses PWM hat aber in der Generierung und der Anwendung rein gar nichts mit dem oberen Fall zu tun.
Ich hoffe das trägt ein bischen zum Verständnis bei und verwirrt nicht noch mehr
Wer noch nicht genug hat:
Das Beispiel oben geht von der unipolaren Tacktung einer Brücke aus. Soll der Strom in eine bestimmte Richtung fließen, so wird immer nur z.B. der obere Schalter geschlossen. Für einen Strom in der anderen Richtung entsprechend der andere. Also in jeder Periode des PWM schaltet nur einer. Der Stromfluß entsteht wie oben beschrieben.
Für manche Anwendungen kann es von Vorteil sein die bipolare Tacktung zu wählen. Hier werden die beiden Schalter abwechselnd innerhalb eines PWM-Zyklus geschaltet. (Hier ist dann die genannte Totzeit von großer Bedeutung) Die Folge ist ein Stromfluß in die eine Richtung gefolgt von einem Stromfluß in die andere. Bei einem Taktverhältnis von 50% fließt faktisch kein Strom in den Verbraucher. Die Verlustleistung steigt natürlich dabei an. Dieses wird für den Mehrquadranten-Betrieb meist genutzt, also Einspeisung und Rückspeisung.
Nachtrag zu Microschritten:
Es ist natürlich wie oben beschrieben mit dem L6234 möglich beliebige Schritte zu fahren. Genau so mache ich es doch auch. Der macht am Ausgang einfach das was der Eingang macht -> der µC macht eben die Vorgaben.
Grüße,
Olli