Forum: Mikrocontroller und Digitale Elektronik Probleme mit PWM


von Paul (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,
ich habe ein Problem mit meiner PWM. Ich habe mir ein Fahrzeug gebaut, 
was über zwei Motoren angetrieben wird. Ich verwende zusätzlich einen 
Atmega8 (16MHz) und L293 Brücke.
Schaltungstechnisch sollte alles in Ordnung sein, da ich alles soweit 
durchgetestet habe.
Nun habe ich jedoch ein Problem mit meiner PWM. Ich habe ein kleines 
Programm geschrieben (siehe Anhang) das den Roboter hin und herfahren 
lassen sollte. Dabei fährt er bei jedem Weg einmal schnell und einmal 
langsam.

Als ich den Roboter mit dem Programm in Betrieb genommen habe, fährt er 
zunächst sinnlos hin und her. Anschließend arbeitet er anscheindend das 
Programm ab, jedoch mit der Einschränkung, dass er nur einen Motor 
ansteuert. Der zweiter Motor läuft nicht.

Könnte jemand evtl. mal über das Programm schauen?

Viele Grüße und Danke schonmal für die Bemühungen!

von spess53 (Gast)


Lesenswert?

Hi

>  TCCR1A |=  (1 << WGM10)|(1<<WGM11);  // 10-Bit Modus
>  TCCR1B &= ~(1 << WGM12)|(1 << WGM13);

Damit ist dein Top-Wert $3FF

> ICR1H = 0xFF; //maximaler Wert des Zählers
> ICR1L = 0xFF;

Das passt nicht zusammen. Die Zuweisung an ICR1 ist wirkungslos. Ebenso:

>  OCR1AH = 0x80;//Setze auf 32768
>  OCR1AL = 0x00;
>  OCR1BH = 0x80;
>  OCR1BL = 0x00;


>  OCR1AH = 0xff;//Setze auf 65535
>  OCR1AL = 0xff;
>  OCR1BH = 0xff;
>  OCR1BL = 0xff;

MfG Spess

von Paul (Gast)


Angehängte Dateien:

Lesenswert?

Vielen Dank Spess, nun läuft alles so wie es soll!

Für den Fall dass jemand mal etwas ähnliches realisieren möchte und 
nicht weiter kommt, poste ich den Code.

Viele Grüße

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.