Verständnisfrage zur PulseIn() Funktion

Stephan_Berlin:

  1. Das Senden des Bursts dauert bspw. 10us. Wird die Messung nach dem Empfang der 1us des Signals gestoppt oder nach dem kompletten Signal.

Die Messung wird mit dem Empfang eines beliebigen Signals beendet.

Stephan_Berlin:
2) Wenn ich vor dem PulseIn() einen Delay einbaue, der kleiner ist als die einfache Distanz, misst er immer noch korrekt. Da das wahrscheinlich unverständlich ist folgendes Zahlenbeispiel:

c = 340m/s, s = ca. 16cm --> t = 0,47ms bzw. 470us. (Hin und zurück wären also ca. 1ms)

400us Delay vor PulseIn --> Messung stimmt weiterhin
500us Delay vor PulseIn --> Rückgabe 0, also Messung nicht erfolgreich

Wie kann das sein? Also entweder die Messungen sollte erst fehlschlagen, wenn der Delay größer ist als die Strecke hin und zurück (1ms), da dann kein Ende der Messung detektiert werden kann oder die Messung müsste eine falsche Entfernung/Zeit liefern, egal welches Delay ich einstelle (ob 100us oder 400us etc.).

Warum solltest du das tun?

Wenn dein delay lang genug ist um pulseIn die steigende Flanke des Echos zu verpassen zu lassen,
geht die Messung schief, ansonsten ist es nur überflüssig.

@ Stephan_Berlin

Irre!

Wieso kannst du das nicht pragmatisch sehen?

Du bist eindeutig zu schnell Whandall :smiley: Ich hatte oben noch folgendes ergänzt.

Stephan_Berlin:
Edit²

  1. noch offen
  2. Anscheinend geklärt. Hier steht:
    Das erklärt das Phänomen. Wäre mir sicherlich schneller aufgefallen, wenn ich nicht vom Schreibtisch zur Wand (16cm) gemessen hätte und das exakt in dem gleichen Zeitraum liegt. Demnach unterbricht man anscheinend das Setzen des Echo-Pins auf High, wenn man länger als 450/500us Delay nach dem Trigger einbaut --> ergo Falschmessung.

Natürlich ergibt das mit dem Delay keinen Sinn. Beim Versuch den Vorgang zu verstehen, habe ich das eingebaut um zu sehen, auf was PulseIn etc. reagiert und bin darüber gestolpert.

Jetzt sollte alles geklärt sein. Vielen Dank !!!

Stephan_Berlin:
2) Anscheinend geklärt. Hier steht:
Das erklärt das Phänomen. Wäre mir sicherlich schneller aufgefallen, wenn ich nicht vom Schreibtisch zur Wand (16cm) gemessen hätte und das exakt in dem gleichen Zeitraum liegt. Demnach unterbricht man anscheinend das Setzen des Echo-Pins auf High, wenn man länger als 450/500us Delay nach dem Trigger einbaut --> ergo Falschmessung.

Man unterbricht nicht das Echo Signal, man verpasst nur dessen steigende Flanke --> Falschmessung.