当前位置: 首页 > news >正文

Esp32基础(⑩超声波测距模块)

HC-SR04 是一种常用的超声波测距模块,广泛应用于机器人、测距设备等领域。

Trig:触发控制信号输入引脚,通过输入至少 10us 的高电平信号来触发模块发射超声波。
Echo:回响信号输出引脚,当有超声波返回时,该引脚会输出高电平,高电平持续的时间就是超声波从发射到返回的时间。

HC-SR04 引脚ESP32 引脚说明
VCC5V 电源(或 USB 5V)模块供电(必须 5V,3.3V 可能不稳定)
GNDGND接地
TrigGPIO 2(可自定义)触发信号输出(ESP32 → 模块)
EchoGPIO 4(可自定义)回响信号输入(模块 → ESP32)

代码

from machine import Pin, time_pulse_us
import time# 定义引脚(根据实际接线修改)
trig_pin = Pin(2, Pin.OUT)  # Trig 接 GPIO2
echo_pin = Pin(4, Pin.IN)   # Echo 接 GPIO4def measure_distance():# 触发信号:至少 10us 的高电平trig_pin.value(0)time.sleep_us(5)trig_pin.value(1)time.sleep_us(10)trig_pin.value(0)# 测量回响信号的高电平持续时间(单位:微秒)# 超时设置为 30000us(对应最大测距约 5 米,超过 HC-SR04 量程)duration = time_pulse_us(echo_pin, 1, 30000)if duration < 0:return -1  # 超时(无返回信号)# 计算距离:声速约 343.2 m/s = 0.03432 cm/us,往返路程需除以 2distance = (duration * 0.03432) / 2return round(distance, 2)  # 保留两位小数# 循环测距并打印结果
while True:dist = measure_distance()if dist < 0:print("未检测到障碍物")else:print(f"距离:{dist} 厘米")time.sleep(1)  # 每秒测一次

123

http://www.dtcms.com/a/343530.html

相关文章:

  • Pycharm SSH连接
  • Wireshark数据包波形绘制异常
  • [RestGPT] docs | RestBench评估 | 配置与环境
  • 【51单片机】【protues仿真】基于51单片机16键电子琴系统
  • 【GPT入门】第51课 Conda环境迁移教程:将xxzh环境从默认路径迁移到指定目录
  • OpenAI 开源模型 gpt-oss 是在合成数据上训练的吗?一些合理推测
  • Mysql事务特性
  • python实现根据接口返回数据生成报告和图表
  • (第二十期下)超链接的更多分类
  • 医疗元宇宙:破解医疗困局与数字化变革路径
  • gRPC 服务发现选型对比
  • 基于STM32单片机的二维码识别物联网OneNet云仓库系统
  • 最小生成树的普利姆算法和克鲁斯卡尔算法
  • ABP vNext 速率限制在多租户场景落地
  • Leetcode 深度优先搜索 (13)
  • Leetcode 深度优先搜索 (12)
  • 20250821 圆方树总结
  • 通信基础理论
  • C语言基础习题——01
  • plantsimulation小知识25.08.21 对话框的使用方法
  • 深圳大学-计算机信息管理课程实验 C++ 自考模拟题
  • 【LeetCode】18. 四数之和
  • C语言:字符函数与字符串函数(2)
  • ORA-16331: container is not open ORA-06512: at “SYS.DBMS_LOGMNR“
  • Hexo 博客图片托管:告别本地存储,用 PicGo + GitHub 打造高速稳定图床
  • ArcMap 数据框裁剪(Data Frame Clip)操作教程
  • Service方法事务失效的原因是什么?
  • 2025-08-21 Python进阶8——命名空间作用域
  • PiscCode实现MediaPipe 的人体姿态识别:三屏可视化对比实现
  • 算法题Day4