micropython TPYBoard v202 超声波测距

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

 

 

实验目的

 

了解超声波模块的工作原理

学习使用超声波模块测量距离

 

实验器材

 

TPYBoard v202 1块

超声波模块(HC-SR04)1个

micro USB数据线 1条

杜邦线 若干

 

 

超声波模块的介绍

 

 

实物图

micropython TPYBoard v202 超声波测距_第1张图片

 

工作原理

 

(1) 采用IO口Trig触发测距,给最少10us的高电平信号。

(2) 模块自动发送 8 个 40khz 的方波,自动检测是否有信号返回。

(3) 有信号返回,通过 IO 口 Echo 输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S))/2。

 

硬件连接

 

TPYBoard v002与超声波模块的接线图,如下:

 

TPYBoard v202

超声波模块(HC-SR04)

+5V

Vcc

G5

Trig

G4

Echo

GND

Gnd

 

micropython TPYBoard v202 超声波测距_第2张图片

程序源码如下:

from machine import Pin

import time

  

Trig = Pin(5,Pin.OUT)

Echo = Pin(4,Pin.IN)

 

while True:

 

    Trig.value(1)

    time.sleep_us(20)

    Trig.value(0)

    while(Echo.value()==0):

        Trig.value(1)

        time.sleep_us(20)

        Trig.value(0)

    if(Echo.value()==1):

        ts=time.ticks_us()

        while(Echo.value()==1):

            pass

        te=time.ticks_us()

        tc=te-ts

        distance=(tc*0.034)/2

        print('Distance:',distance,'cm')

    time.sleep(2)

 

经测试,发现存在一点误差,还请大家多多指正。

转载于:https://my.oschina.net/micropython/blog/1594365

你可能感兴趣的:(micropython TPYBoard v202 超声波测距)