Das ganze kann man vereinfachen wenn man den dafür vorgefertigten Befehl verwendet .
Pulsein

Code:
Dim w As Byte

pulsein w , PIND , 1 , 0   'detect time from 0 to 1 
print w
end
MfG
Martin