hardy78
27.09.2009, 14:15
Hallo Robotergemeinde.
Ich möchte einen Motor per PWM-Signal steuern. Das PWM-Signal erzeugt ein ATMEGA8 mit Timer1 (OCR1B). Das Steuerelement ist ein Inkrementalschalter mit 2 Phasen und 20 Raststellungen/Umdrehung.
Das Drehen des Inkrementalschalters wird vom externen Interrupt INT0 erkannt. In der entsprechenden ISR wird dann ein Wert erhöht (rechts herum drehen) oder reduziert (links herum drehen). Der Wert soll dann im Hauptprogramm OCR1B zugeordnet werden, was dann ein Tastverhältnis von xx % ergibt.
Problem ist jetzt, dass die Datenübertragung der Variable "wert" zum Hauptprogramm nicht funktioniert. Sprich, das Tastverhältnis bleibt wie es ist...
Ich vermute stark, dass ich einen Programmierfehler gemacht habe, bitte schaut Euch das Programm im Anhang einmal an. Vielleicht findet Ihr ja was da falsch ist.
Danke und Gruß, Hardy78
Ich möchte einen Motor per PWM-Signal steuern. Das PWM-Signal erzeugt ein ATMEGA8 mit Timer1 (OCR1B). Das Steuerelement ist ein Inkrementalschalter mit 2 Phasen und 20 Raststellungen/Umdrehung.
Das Drehen des Inkrementalschalters wird vom externen Interrupt INT0 erkannt. In der entsprechenden ISR wird dann ein Wert erhöht (rechts herum drehen) oder reduziert (links herum drehen). Der Wert soll dann im Hauptprogramm OCR1B zugeordnet werden, was dann ein Tastverhältnis von xx % ergibt.
Problem ist jetzt, dass die Datenübertragung der Variable "wert" zum Hauptprogramm nicht funktioniert. Sprich, das Tastverhältnis bleibt wie es ist...
Ich vermute stark, dass ich einen Programmierfehler gemacht habe, bitte schaut Euch das Programm im Anhang einmal an. Vielleicht findet Ihr ja was da falsch ist.
Danke und Gruß, Hardy78