ich bringe die 20 Mhz, Prescaler und meine 4 Motoren nicht in den Einklang!
Code:
' Timer0 für PWM 8Bit L293D (2) "unten"
Config Timer0 = Pwm , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down , Prescale = 8
Das Kommando stellt den Phase Correct PWM Modus des Timer0 ein.
Der Systemtakt ist 20MHz. Du teilst den Takt für den Timer0 mit dem Timer Prescaler durch 8

20Mhz / 8 = 2,5MHz
Der Timer0 wird also mit 2,5MHz getaktet.

Pro Takt verändert der Timer sein Zählregister TCNT0 um eins.
Das 8 Bit Register TCNT0 zählt mit 255 Takten von 0 auf 255. Mit den nächsten 255 Takten wird TCNT0 im Phase Correct Modus wieder runtergezählt (254, 253 ... 0).

In diesem Timerzyklus mit 510 Takten wird ein PWM Zyklus erzeugt.
Die eingestellte PWM Frequenz ist also 2500000Hz / 510 = ca. 4901 Hz

Falls du das alles schon wußtest, stell eine klare Frage.

Nichts rührt sich!
Hab mich nicht durch den Code durchgewühlt, da der Schaltplan fehlt. Vielleicht hast du ja nur was falsch angeschlossen?
Oder das Jtag Interface auf Port C ist nicht abgeschaltet?

Welche Frequenz sollte ich wählen?
5KHz könnte passen. Die optimale Frequenz hängt von deinem Motor ab und ist so einfach nicht zu beantworten.

Konzentrier dich doch erstmal auf einen Motor und bring den zum Laufen. Das macht den Code auch erstmal übersichtlicher.

Gruß
Searcher