PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Gleichmotorsteuerung PWM mit ATMega8



MischaMV
13.06.2005, 20:23
Hi.
Also ich will mit ATmega8 einen DC Motor ansteuern. DA habe ich gelesen, dass man dafür PWM braucht.
Wie kann PWM mit bascom programmieren. Kann ich eingentlich die Impulse mit einer for Schleife und Waitms befehl erzeugen.
Oder gibt es da feinere Lösungen?
Danke.
Gruß Michi

izaseba
13.06.2005, 21:27
Hallo,
Am besten macht man sowas über die PWM Kanäle des Mega8:
OC2
OC1B
OC1A
Wie das in Bascom gemacht wird, kann ich Dir leider nicht sagen, es gibt hier genug Leute die da mehr Ahnung haben, aber ich würde da keine Schleifen setzen, sonst kannst Du da nichts mehr machen, weil sich der Mega nur noch in einer Schleife befindet.

Gruß Sebastian

MischaMV
13.06.2005, 22:04
Aha Danke.
Dann warte ich noch a'weng:-)

harryup
24.06.2005, 10:25
hi,
worauf warten? richtiges wissen kommt durch erkennen & probieren, das alles ist doch ohne risiko, ein falscher befehl kann doch korrigiert werden.

zuerst muss der timer als pwm deklariert werden, mit dem 'OC1A=127' erzeugst du dann ein 50%-pwm-signal.

Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Down , Prescale = 1
oc1a = 127

der vorteil an pwm gegenüber der pin-setzen-warten-pin-löschen-warten methode ist der, dass dein programm weiterlaufen kann, das pwm signal aber weiterläuft, bis es neu definiert wird.
grüssens, harry