Programmierung von Lichtschranke

Gast #3376309
Lesenswert?

hallo ich habe eine Lichtschranke für meinen Arduino zusammen gebaut. 
Jetzt fehlt mir hierzu nur noch der richtige Programmtext. Folgendes 
soll geschehen: Wenn die erste Lichtschranke unterbrochen wird soll die 
Zeitmessung beginnen und wenn die zweite unterbrochen wird soll die 
Zeitmessung enden. Diese Differenz der Zeiten teilt man durch den 
gemessenen Abstand und man erhält die Geschwindigkeit. Meine eigenen 
Versuche waren bisher mit if-Schleifen verbunden, hier gibt es 
allerdings ein Problem: Die Zeitmessung wird erst wieder gestoppt wenn 
die zweite Lichtschranke das letztemal unterbrochen wird. Somit 
entstehen unnötige Ungenauigkeiten. Ich hätte jetzt gern ein Methode mit 
der man mein eigentliches Vorhaben umsetzten kann. Freue mich auf nette 
Antworten :D
Gast #3376313
Lesenswert?

Maximilian Ruderer schrieb:
> Ich hätte jetzt gern ein Methode mit der man mein eigentliches Vorhaben
> umsetzten kann.
Du könntest den Timer verwenden und über Capture die Zählerstände 
festhalten. In der zugehörigen ISR kannst du die Zählerstände dann zur 
Weiterverarbeitung, i.e. Geschwindigkeitsberechnung und Anzeige an dein 
Hauptprogramm melden.
#3376939
Lesenswert?

Maximilian Ruderer schrieb:

> gemessenen Abstand und man erhält die Geschwindigkeit. Meine eigenen
> Versuche waren bisher mit if-Schleifen verbunden,

Es gibt keine if-Schleifen.
Ein If ist keine Schleife sondern eine Abfrage.
Das Wesen einer SChleife ist es, dass etwas wiederholt wird. Wo wird 
denn bei einem if etwas wiederholt?

> hier gibt es
> allerdings ein Problem: Die Zeitmessung wird erst wieder gestoppt wenn
> die zweite Lichtschranke das letztemal unterbrochen wird.

Und was hindert dich jetzt daran, bei der zweiten Lichtschranke dieselbe 
Technik einzusetzen, die ich dir bei der ersten Lichtschranke gezeigt 
habe?

Beitrag "Lichtschranke Hilfe"

Ein bischen was musst du schon auch selber machen. Ist ja schliesslich 
dein Projekt.
Dieser Beitrag ist gesperrt und kann nicht beantwortet werden.