Hallo oberallgeier,
nochmals ich.
Ich rechne mal etwas anders als du.
Wenn der Schall 300 Meter pro Sekunde schafft, dann sind das 300 * 100cm / 1000ms * 75ms-Messdauer = 2250 cm Weg.
Unser Schall muss hin und zurück laufen. Somit vom SRF02 zum Hinderniss die Hälfte: 1125 cm Weg.
Die Reichweite vom Sensor wird mit 600 cm angegeben und entspricht somit ca. der Hälfte 'meiner' Rechnung.
Wenn also der Piepston mit einer Dauer von NULL erzeugt würde, könnte der Sensor in der Zeit die doppelte Entfernung schaffen.
Ich gehe also davon aus, dass auch das Piepen selbst schon Zeit benötigt![]()
Evenuell wird auch zwei mal 'gepiept' um eine Mittelwertmessung zu machen.
cu Sternthaler
- - - Aktualisiert - - -
Hallo Klebwax,
jepp, du hast Recht mit deinen Zeitangaben.
Ich hatte im Hinterkopf, dass im dicken AVR-Handbuch so eine Zeitangabe zwischen STOP und nächstem START angegeben ist.
Nun wiedergefunden im Kapitel "Electrical Characteristics" und Unterkapitel "Two-wire Serial Interface Characteristics" aus einer Atmel-Doku zum ATmega48A bis 328P:
Bus free time between a STOP and START condition
fSCL < 100kHz 4.7 – μs
fSCL > 100kHz 1.3 – μs
oberallgeier ist beim I2C mit 400 kHz unterwegs und somit sind 1.3 μs nun nicht wirklich die Welt. Aber trotzdem schaffen seine 20 MHz dann schon 26 1-Takt Befehle!
Und nun könnte man mal schauen, was zwischen i2c_stop() und dem nächsten i2c_start() an Maschinenbefehlen steht. (In der Loop gibt es das 2 mal.)
Gruß Sternthaler







Zitieren

Lesezeichen