Also... der Sensor ist ein anderer... nicht der srf04 sondern der hc-sr04 http://kt-elektronic.de/wawi11/artik...hreibung_3.pdf
Was mir dabei etwas sorgen macht ist, das er auf dem Echo pin erstmal ein 40khz Signal sendet, bevor er dauernd auf High bleibt bis zum empfang des Echo.
Denke daher wird es nicht richtig sein den Interrupt über Change laufen zu lassen.
Möglich, das der während dem Burst Signal schon den wechsel erkennt und garnicht erst bis zum eigentlichen Echo kommt.
Aber was den Ablauf des Programms betrifft hast schon recht.
Ist an sich schon blöd die ganze Wartezeit in der ISR zu hängen. Das blockiert das Programm komplett.
Überlegung von mir...
---Hauptprogramm--
xxxx
Subroutine (wenn messwert gebraucht wird)
print ergebniss
---Subroutine------
do
if Echopin = 0 then
Triggersignal = 0
waitus 15
Triggersignal = 1
else
waitus 15
endif
loop until echopin = 0
timer1 start
---ISR(Falling)--------------
timer1 stop
Ergebniss= timer1
Return
Bin nur gerade etwas beschaftigt und noch nicht dazu gekommen das zu testen.
Lesezeichen