Forum: Mikrocontroller und Digitale Elektronik Schrittmotor und µC - AVR BASCOM


von Tim (Gast)


Lesenswert?

Hallo Gemeinde,

ich betreibe zurzeit zwei Schrittmotoren an einem AVR Mega164(bin mir 
grade nicht sicher, sollte auch keine Rolle spielen)!

Die Daten der Steuerung empfange ich über RS232.

Bislang was das Konzept so:
Endlosschleife (sind daten da?) -> Wenn ja, dann überprüfe ob Start und 
Stopbit stimmen (Wenn nicht, dann gebe Fehler aus) -> Wenn ja, lese die 
Geschindigkeit die Takte aus, und takte die Schrittmotortreiber. Wenn 
Schrittmotoren gefahren, dann schicke eine erkennung das fertig.
Der PC wartet auf die erkennung, und sobald er diesen Handshacke hat, 
schickt er neue Daten.

Das Ergebniss ist, das die Motoren sich bewegen, dann sehr kurz 
stehenbleiben und weiterfahren.

Ich würde es gerne so machen, das die Motoren sich kontinuierlich 
bewegen, und die Daten reinkommen, wärend sich die Motoren bewegen. 
Damit würde ein sauberes fahren der Achsen entstehen, und es wäre 
gesünder für die Motoren (Strom) und es würde nicht so laut sein.


Welches Konzept kann ich für diese Problematik verwenden ?

Ich habe bis jetzt mit dem Befehl "Input" meine Daten abgefragt. Ich der 
wartet bis das Carrige Return kommt. Ist das für einen solchen 
Programmablauf richtig ? Ich vermute das es elegantere Lösungen gibt.

Daten über einen Interrupt in den Puffer schreiben ? Also die Motoren in 
der Hautschleife laufen lassen, und über den Seriellen Interrupt dann 
die Daten auswerten....

Wäre schön wenn jemandem dazu etwas einfällt... Zum Glück gibt es hier 
Profis !

Ach ja, noch zu ergänzen wäre, das ich die Schrittmotoren übier die 
bekannte L297 und L298 -Schaltung betreibe ;)

Vielen Dank !

Tim

von Karl (Gast)


Lesenswert?

Eine Interrupt-Routine wäre die elegantere Lösung. Sehr schön und 
ausführlich hier beschrieben:

http://www.rowalt.de/mc/avr/avrboard/06/avrb06.htm

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.