创新实践【Raspberry Pi 开发】==HC-SR04

初识树莓派系列文章

树莓派小车小白从0到1开发之路,大家如果有兴趣可以共同讨论


一、超声波测距模块HC-SR04

在这里插入图片描述##

1.1 接线规则

  • VCC :是HC-SR04超声波距离传感器的电源,接5V引脚。
  • Trig (Trigger) :引脚用于触发超声波脉冲。
  • Echo :回声当接收到反射信号时,引脚产生一个脉冲。脉冲的长度与检测发射信号所需的时间成正比。
  • GND :接地。

1.2 样例代码

import RPi.GPIO as GPIO
import time

# 定义GPIO引脚编号
trig_pin = 16
echo_pin = 18

# 初始化GPIO引脚状态
GPIO.setmode(GPIO.BOARD)  # 设置物理引脚模式
GPIO.setup(trig_pin, GPIO.OUT)
GPIO.setup(echo_pin, GPIO.IN)


def distance():
    # 发送10us的高电平脉冲
    GPIO.output(trig_pin, GPIO.HIGH)
    time.sleep(0.00001)
    GPIO.output(trig_pin, GPIO.LOW)

    # 计算脉冲宽度
    while not GPIO.input(echo_pin):
        pass
    pulse_start = time.time()
    while GPIO.input(echo_pin):
        pass
    pulse_end = time.time()
    pulse_duration = pulse_end - pulse_start
    # 计算距离并返回
    speed_of_sound = 34300  # 声速,单位是厘米/秒
    distance = pulse_duration * speed_of_sound / 2
    return distance


try:
    while True:
        dist = distance()
        print(f"Distance: {
      
      dist:.2f} cm")
        time.sleep(1)

except KeyboardInterrupt:
    GPIO.cleanup()  # 清除所有GPIO引脚的状态

猜你喜欢

转载自blog.csdn.net/IWICIK/article/details/130466371
今日推荐