Hallo Leute, ich habe folgendes Problem und wollte mal nachfragen, ob mir jemand von Euch weiterhelfen kann, also folgendes Ich benutze einen ATMega8 (Programmierung in ASM) und moechte damit eine PWM fuer eine Motoransteuerung verwirklichen (Motor soll maximal beschleunigt bzw. abgebremst werden). Der Motor ist genaugenommen ein Festplattenmotor (tut aber eigentlich nichts zur Sache). Problem: Ich wuerde gerne ueber die Pulsbreiten-Einstellung u.a. auch ein durchgehendes High bzw. Low hinbekommen (also Pulsbreite maximal bzw. null). Wenn ich die Pulsbreite nun maximal einstelle funktioniert das auch, aber leider nicht, wenn ich sie null stelle; dort sehe ich auf meinen Oszi fuer genau einen Takt (also fuer 125ns bei 8MHz) ein High-Signal. Warum setzt er vor jeden neuen Periode den Ausgang auf high und wie laesst sich das vermeiden oder ist spinnt einfach mein ATMega8??? Bin fuer jegliche Hilfe dankbar. Beste GRuesse, Parvis
@ Parvis S. (parvis) >durchgehendes High bzw. Low hinbekommen (also Pulsbreite maximal bzw. >null). Geht beim AVR nicht. Siehe Doku. MfG Falk
Es geht immer nur eines, entweder durchgehende Null oder durchgehende Eins, was durch invertieren des Ausgangsverhaltens des betreffenden Timers jeweils erreicht werden kann.
Also beim AtMega48/88/168 gibt's den 'Phase and Frequency Correct PWM Mode': ... The extreme values for the OCR1x Register represents special cases when generating a PWM waveform output in the phase correct PWM mode. If the OCR1x is set equal to BOTTOM the output will be continuously low and if set equal to TOP the output will be set to high for noninverted PWM mode. ... Das ist doch das, was gesucht wird, oder? Vielleicht kann ja auf einen Schaltkreis aus dieser Familie gewechselt werden... (Ich kenne die Daten des AtMega8 in dieser Hinsicht nicht genau) Tassilo
Ist ja wohl nicht so schrecklich schwierig, bei PWM=0 und/oder PWM=max den entsprechenden Ausgang schlicht umzukonfigurieren.
Erstmal vielen Dank fuer die schnelle Hilfen. Der Phase- and Frequency Correct mode gibt es auch tatsaechlich beim ATMega8 der dann laut Datenblatt keine spikes liefert. Werde das gleich mal ausprobieren. Beste Gruesse, Parvis
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.