Forum: Mikrocontroller und Digitale Elektronik SAM7S64 PWM Hardware Bug?


von romanua (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich bastele an einem digital geregelten Schaltnetzteil.

in Kuerze ist das Program so aufgenaut:

PWM interrupt->ADC->PID->PWM Duty update->PWM interrupt exit

Ich habe aber ein Problem, mit dem ich nicht weiter weiss.

Wenn ich Duty Cycle auf fast 0% oder 100% setze, flippt die Polarität 
des PWMs. D.h. bei D=70% habe ich am Ausgang 70% der Periode HIGH und 
30% LOW. Bei D=90% aber 90% LOW und 10% HIGH.

Passiert nicht immer aber fast immer. Errata habe ich angeschaut, die 
haben mir nichts geholfen.

Ich benutze CrossStudio, das Project ist im Anhang.  PWM Channel 1 und 
ADC Channel 6 werden benutzt.

Koennte vielleicht jemand  das Programm anschauen und/oder auf eigenes 
Board Flashen?

Wenn am Board nichts angeschlossen ist, d.h. 0V am ADC6, wird Duty cycle 
am Pin1(PWM1) auf fast 100% gestellt. Das bestätigt auch Debugger durch 
einen korrekten Resisterwert, aber am Oszi erscheint fast 0%.

Wie gesagt, passiert nicht immer aber fast immer, besonders wenn man das 
Board vom Strom trennt und wieder anschließt.

Geschrieben habe ich das fuer Olimex Board, das 48MHZ MCK läuft.


Danke im Vorraus

von romanua (Gast)


Lesenswert?


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.