Gast
#889621
Hallo! ich moechte auf dem 89c51 einen geschwindigkeitsmesser an einem rad realisieren (zum timer hatte ich bereits einen thread). Nun scheiter ich anscheinend schon an der Logik der Lichtschranken. An dem Rad befinden sich kleine Fähnchen die 2 Lichtschranken unterbrechen. Der Timer soll starten, sobald BEIDE Lichtschranken hintereinander von einem Fähnchen durchfahren wurden. Stoppen soll er, sobald die beiden Lichtschranken erneut unterbrochen worden sind von dem nächsten Fähnchen. Die so gemessene Zeit pro Abstand der Fähnchen ergibt ja die Gechwindigkeit. Ich habe testweise eine LED schalten lassen wenn der Timer startet. Sie geht aus, wenn der Timer stoppt. Die Lichtschranken hab ich erstmal durch 2 Schalter an Port P3 ersetzt. Die ersten beiden if anweisungen sollen jeweils eine variable setzen, sobald eine der tasten gedrückt wurde. In die dritte if anweisung geht er 'rein, sobald beide Tasten einmal gedrückt wurden UND der Timer AUS ist. In die vierte soll er 'reingehen, wenn beide Tasten gedrückt wurden UND der Timer AN ist. Leider verhaelt es sich in der Realität wie folgt: Ich drücke Taste eins, dann Taste 2. Die LED geht an. Dann drücke ich wieder Taste 1 und sie geht aus. Das soll sie aber erst, wenn ich nochmals Taste 2 gedrückt habe! Bitte, koennte mir hier jemand weiterhelfen? ich weiß einfach nicht mehr weiter.... Danke im Voraus!
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 | |