- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试让 NodeMCU ESP8266 开发板与 HC SR04 超声波传感器配合使用。我的读数一直为“0”,但事实并非如此。
我将传感器的接地和 5v 引脚连接到 5v 源,以及 GPIO 引脚 4 和 5 上的 Echo 和 Trigger 引脚。理论上,一切都应该正常,但我一直得到“0”。也许我的代码有问题?见下文:
import machine
import sys
import time
time.sleep(1) #Just for everything to settle down
while 1:
pinTrigger = machine.Pin(5, machine.Pin.OUT) #defining the pins
pinEcho = machine.Pin(4, machine.Pin.IN) #defining the pins
pinTrigger.high()
time.sleep(0.00001)
pinTrigger.low()
time.sleep(0.5)
start = time.time()
stop = time.time()
while pinEcho ==0:
start = time.time() #Starting the time when sending out the signal
while pinTrigger ==1:
stop = time.time() #Stopping the time when the signal comes back
elapsed = stop-start #working out the time.
distance = elapsed * 34000 #multiply by speed of sound to get distance
distance = distance / 2 #divide by 2 becuase it was there and back
print ("Distance : %.1f" % distance)
sys.exit()
请帮忙。
最佳答案
解决问题的方法如下:
import machine
import utime
while True:
trig=machine.Pin(5, machine.Pin.OUT)
trig.off()//stop reading
utime.sleep_us(2)
trig.on()
utime.sleep_us(10)
trig.off()
echo=machine.Pin(4, machine.Pin.IN)
while echo.value() == 0:
pass
t1 = utime.ticks_us()
while echo.value() == 1:
pass
t2 = utime.ticks_us()
cm = (t2 - t1) / 58.0
print(cm)
utime.sleep(2)
在互联网的其他地方,他们建议您在回声和 NodeMCU 板 (ESP8266) 上的引脚之间放置一个电阻器,这会使测量结果非常糟糕。所以现在我让它 100% 工作,5v 和接地(到 HC-SR04)连接到我的 RPi GPIO,触发器和回声连接到 NodeMCU 板引脚。
另一件需要注意的事情是,我在 1 秒(代码的最后一行)进行读数,将其更改为 2 秒使代码更加准确。
希望这对某人有帮助。
这是图表:
关于python - 微蟒 HC-SR04 - ESP8266,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42416224/
我需要有关 HC-06 蓝牙模块闪烁 LED 的帮助。 我只想知道它什么时候开始闪烁,什么时候一直亮着,什么时候完全不亮,我怎么知道它是通过 LED 连接还是配对。 我的第二个问题是,我正在开发一个
当检测到距离小于1m的物体时,我试图通过仅打开LED来控制HC-SR4超声波传感器。 我将TIM2用于触发信号(引脚PB10),并将TIM4用于接收回波信号(引脚PB6)。 LED连接到PB7引脚。
我最近为我的 arduino 购买了一个 HC-05 蓝牙模块,但我无法从中发送或接收数据。我使用代码来打开或关闭 LED,但是当我从 PC 的串行监视器发送一个字符后,我得到 ⸮。并且模块不响应任何
我想开发Java桌面应用程序,用蓝牙“HC-05”连接我的电脑。我在大学里学过Java,这是我的第一个应用程序。所以我希望尽可能提供更多详细信息,特别是在建立 PC 和 HC-05 之间的连接方面(如
我想将数据从 Arduino 传输到 android 手机。数据将是整数,它们是从连接到 Arduino 的传感器连续生成的值。最快的方法是什么?我的意思是,没有任何延迟地传输此数据的最佳代码是什么?
我有 raspberry pi b,我正在尝试用 C 编写代码,这将允许我使用 HC-SR04 Ultrasonic Ranging Module .我使用 bcm2835 库来控制 GPIO 引脚。
我正在尝试使用 C# 应用从我的个人最爱 Media Player Classic 中获取媒体信息。 假设我得到了我感兴趣的 MPC-HC 实例的窗口句柄,但 WM_GETTEXT 只得到了窗口标题。
我有一个带有 AlphaBot2 的树莓派 Zero,它具有 HC-SR04 超声波传感器。使用Python 的实现效果很好。我想用 C 语言实现,因为我需要将它与另一个同样用 C 语言编写的程序绑定
我正在使用 HC-Sticky JavaScript 插件并尝试使用 documented reinit 方法,但我不明白如何运行它。 这是一个CodePen显示了一个非常基本的设置,并尝试在初始化后
我在我的网站上安装了 hc-sticky 插件,我可以使用此代码使其适用于滚动侧边栏: jQuery(document).ready(function($){ $('.panel-r
我正在尝试让 NodeMCU ESP8266 开发板与 HC SR04 超声波传感器配合使用。我的读数一直为“0”,但事实并非如此。 我将传感器的接地和 5v 引脚连接到 5v 源,以及 GPIO 引
目前将 Java 应用程序连接到 HC-05 蓝牙模块 (Arduino) 的最佳实践是什么?Bluecove 还是其他?如果是这样,您是否可以为带有 HC-05 连接的 Bluecove 推荐任何示
您好,我正在关注 the quick introduction to racket .在第 5 章中,他们建议这段代码(运行良好): (define (four p) (define two-p
你好, 所以我买了一个ZS-040 HC-05 Arduino蓝牙模块,我想更改它的名称。我了解到,您必须在 AT 模式下执行此操作。我遵循了 http://www.martyncurrey.com/
您好,我正在关注 the quick introduction to racket .在第 5 章中,他们建议这段代码(运行良好): (define (four p) (define two-p
我知道 SD 卡中的写保护选项卡并不是真正的硬件保护,而是向读卡器发出的一个简单信号,表明该卡已被写保护。例如,佳能相机的 CHDK 项目就专门忽略了它,曾经有一个廉价的闪存阅读器(从香港邮寄过来的
有人可以向我解释以下代码有什么问题吗?我尝试了所有方法:添加 limit \n\r 以等待行尾和其他几种方式。我总是收到垃圾数据。所以我回到我的开始代码。 有人告诉我可能是InputStream没有接
所以我现在面临着一个问题。任何建议都会很好。首先,我使用我的代码从 arduino 接收数据,然后我使用 bluetoothChat 并更改了 uuid,我可以配对,一切都很好,但是如果我将整个字符串
我正在尝试使用根据与超声波传感器的距离计算出的平均值来控制 LED。我有数据被平均,但它从加电开始是连续的。我想在每十次读数后重新计算平均值。谁能告诉我需要更改哪些内容才能重新计算每 10 个值的平均
我正在尝试在 Arduino 和 Android 设备之间建立连接。我正在使用: 阿杜诺·莱昂纳多 蓝牙设备:HC-06 我的 Android 应用程序应该读取从 Arduino 设备发送的数据。这是
我是一名优秀的程序员,十分优秀!