Christoph Maass schrieb:
> Mir geht es hier mehr um die Art der programmierung in Bascon.
Was Albert dir mitteilen will, das ist, dass du da wohl eine Variable
brauchen wirst, in der du mitzählst wieviele Schritte du an den Motor
ausgegeben hast. Und wenn diese Schrittzahl erreicht ist, dann kannst du
zb die Drehrichtung umschalten oder ganz einfach nichts weiter tun oder
.... was immer du in deinem Programm benötigst.
Im Moment generierst du einen Schritt, wann immer der Timer mitteilt,
dass es wieder mal Zeit wäre. Du generierst den Schritt immer. Das musst
du eben ändern. Zum Beispiel indem du mitzählst (in einer Variablen)
wieviele Schritte schon generiert wurden oder indem du eine Variable von
einer gewissen Anzahl bis auf 0 herunterzählst. Wie auch immer, ist die
gesuchte Anzahl an Schritten erreicht, dann unterbindest du in der Timer
Routine zum Beispiel ganz einfach die Schrittgenerierung.
1 | DIM Schritte As Byte
|
2 |
|
3 |
|
4 | ....
|
5 |
|
6 |
|
7 | Timer_irq:
|
8 | Timer0 = Timervorgabe 'Interrupt-Routine
|
9 |
|
10 | Schritte = Schritte + 1
|
11 |
|
12 | if Schritte < 200 then
|
13 |
|
14 | Stepper_takt = 0 : Waitus 1 : Stepper_takt = 1 'Taktsignal für Motor
|
15 |
|
16 | endif
|
17 |
|
18 | Return
|
Das ist jetzt nur ein Beispiel. Du baust das natürlich so aus, wie du
das brauchst.