Untitled

 avatar
unknown
plain_text
4 months ago
691 B
2
Indexable
def get_distance():
        Trig.value(1)
        time.sleep_us(10)
        Trig.value(0)
        timeout_start = time.ticks_ms()
        while not Echo.value():
            if time.ticks_diff(time.ticks_ms(), timeout_start) > 100:  # 100 ms timeout
                return -1  # Return -1 if no response
        ping_start = time.ticks_us()
        while Echo.value():
            if time.ticks_diff(time.ticks_ms(), timeout_start) > 100:  # 100 ms timeout
                return -1  # Return -1 if no response
        ping_stop = time.ticks_us()
        distance_time = time.ticks_diff(ping_stop, ping_start) // 2
        return int(sound_velocity * distance_time // 10000)  # Convert to cm
Editor is loading...
Leave a Comment