Gast
#2119704
Ich hab da mal ein kleines, merkwürdiges Verhalten. Ich will zwei Schrittmotoren (später mit unterschiedlicher Geschwindigkeit) ansteuern. Dazu hab ich ne Platine auf der ich die Drehrichtung, den Takt und ein Enable-Signal mittels TTL vorgeben kann. Da die Motoren später unterschiedlich schnell sein sollen und die Timer sonst nicht gebraucht werden habe ich jedem Motor seinen eigenen Timer geschenkt und toggel schlichtweg den entsprechenden Pin des jeweiligen Motors im jeweiligen Timer-Overflow. Die Motoren sollen nur eine bestimmte Weite fahren, daher hab ich eine Variable angelegt in der ich die Takte zähle und vergleiche diese mit einer anderen Variablen in der die Takte stehen, die gemacht werden sollen. Mein Problem ist nun in den Bildern zu sehen: Bei den ISRs mit der Schleife entsteht das erste Bild (Bildschirmfoto_2011-03-26_um_09.06.37.png). Kommentiere ich die Schleifen raus entsteht das zweite Bild was auch meiner Erwartung entspricht: Beide Signale sind gleich. Die Bilder zeigen den Takt an den jeweilgen Pins. Oben (blau) ist der Takt der durch Timer1 erzeugt wird, unten (gelb) ist Timer2. Ich hätte eigentlich erwartet, dass beide Signale gleich aussehen aber wie man sehen kann ist das Signal von Timer1 mit den Schleifen deutlich unterschiedlich zu dem anderen und mich verwirrt die. Wo kommt das her und warum ist das so? Ich steh hier irgendwie auf dem Schlauch und bin mir aber sicher, dass es hier jemanden gibt der Rat weiß. Grüße Michael Fusebits: Extended: 0xF9, High: 0xDF, Low: 0xCE Quelltext:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
28 | |
29 | |
30 | |
31 | |
32 | |
33 | |
34 | |
35 | |
36 | |
37 | |
38 | |
39 | |
40 | |
41 | |
42 | |
43 | |
44 | |
45 | |
46 | |
47 | |
48 | |
49 | |
50 | |
51 | |
52 | |
53 | |
54 | |
55 | |
56 | |
57 | |
58 | |
59 | |
60 | |
61 | |
62 | |
63 | |
64 | |
65 | |
66 | |
67 | |
68 | |
69 | |
70 | |
71 | |
72 | |
73 | |
74 | |
75 | |
76 | |
77 | |
78 | |
79 | |
80 | |
81 | |
82 | |
83 | |
84 | |
85 | |
86 | |
87 | |
88 | |
89 | |

