【问题标题】:PyFirmata doesn't respond after creating Arduino() object创建 Arduino() 对象后 PyFirmata 没有响应
【发布时间】:2021-06-28 14:37:59
【问题描述】:

我最近了解了使用 PyFirmata 使用 python 控制 arduino。 我尝试编写代码使内置 LED 闪烁,但在创建 Arduino() 对象后没有收到任何输出。这是我的代码:

from pyfirmata import Arduino
import time

arduino = Arduino("COM3")
num = int(input("How many times should the LED blink?"))
sleep_time = float(input("Time (seconds) between each blink (decimal values are allowed): "))
print(f"Blinking {num} times with a {sleep_time} second delay")

for temp in range(num):
    arduino.digital[13].write(1)
    time.sleep(sleep_time)  # Seconds
    arduino.digital[13].write(0)
    time.sleep(sleep_time)

我的 Python 版本是 3.6.0,在 Windows 10(64 位)上,我已经包含了我的代码和终端的屏幕截图。

另外,澄清一下,我没有收到任何错误消息或任何其他输出。我什至没有得到终端提示,光标一直在闪烁

编辑:我的 Arduino 板是 UNO,它可以与 Arduino IDE 一起正常工作并使用 .ino 程序。

【问题讨论】:

  • 另一个澄清 - 即使 VSCode 显示导入错误,我尝试评论除 from pyfirmata import Arduino 行之外的所有内容,我没有收到任何错误。所以我认为这不是问题
  • 你的 Arduino 上确实加载了 Firmata 草图,对吗?
  • 哦不,我似乎错过了。已上传,现在可以使用了。谢谢! :)

标签: python arduino python-module


【解决方案1】:

已修复:我没有将标准 Firmata Sketch 上传到 Arduino,这是 pyFirmata 工作所必需的。感谢@jasonharper 指出这一点:)

要上传草图,您必须在 Arduino IDE 中转到 File > Examples > Firmata,从列表中选择一个固件草图,然后在打开一个新窗口时单击上传。

【讨论】:

    猜你喜欢
    • 2023-01-19
    • 1970-01-01
    • 1970-01-01
    • 2018-06-25
    • 2021-04-20
    • 1970-01-01
    • 2019-02-04
    • 2020-12-07
    • 2020-12-31
    相关资源
    最近更新 更多