Hi !
Ich mach das im Prinzip so:
In einer DO .. LOOP schleife frag' ich immer zwei Dinge ab:
1 Ein Flag vom Timer0 (1mS)
(der Time0-Interrupt tut nix, außer diesen Flag setzen)
den lösch ich und geh einmal in die Motor-routinen (links & rechts)
2 Ischarwaiting vom "config serialin =buffer, size = 64"
Motorroutine: Jeder motor hat eine Soll- und eine Istposition
sind die zwei gleich, macht er nix
wenn nicht, macht er einen Schritt in die richtige richtung und ändert sein "IST"
Ischarwaiting: holt die Zeichen vom Terminal (solange "ischarwaiting") und ändert dann ggf. die SOLL-Position von einem Motor oder nicht.
Vorteil (u.A) : du kannst auch "SOLL" ändern, während der Motor schon läuft
ungefähr klar ?
Lesezeichen