无法与 python 通信 Arduino
cannot communicate Arduino with python
我在尝试将 Arduino 与 python 通信时遇到错误,我正在使用 Arduino 模块,但出现无法打开端口错误,我可以从 Arduino IDE 与我的 Arduino 通信。
from Arduino import Arduino
import time
board = Arduino(port="/dev/cu.usbmodem14201") # plugged in via USB, serial com at rate 115200
board.pinMode(13, "OUTPUT")
while True:
board.digitalWrite(13, "LOW")
time.sleep(1)
board.digitalWrite(13, "HIGH")
time.sleep(1)
这是我的错误
serial.serialutil.SerialException: [Errno 2] could not open port /dev/cu.usbmodem14201: [Errno 2] No such file or directory: '/dev/cu.usbmodem14201'
当我尝试使用 pyfirmata 时出现错误
这是我的代码:
import pyfirmata
import time
board = pyfirmata.Arduino('/dev/cu.usbmodem14201')
led = board.get_pin('d:13:o')
while True:
led.write(1)
time.time(1)
led.write(0)
time.time(1)
我的 pyfirmata 错误:
AttributeError: partially initialized module 'pyfirmata' has no attribute 'Arduino' (most likely due to a circular import)
作为序言,我已经与 Arduino 进行了一些串行通信,但并没有太广泛地使用 Arduino 库。
如果您还没有这样做,我建议您考虑一下 PySerial 库。这可能有助于解决您的 Mac 和电路板之间串行连接的最初问题。这并不能完全解决您直接写入 LED 的需求,但同时可以作为替代品。您可以使用来自 Mac 的传入串行通信来指导 Arduino 上的某些操作。
我用过的很棒的教程可以在这里找到:
https://create.arduino.cc/projecthub/ansh2919/serial-communication-between-python-and-arduino-e7cce0
另一个问题可能是您的串行监视器可能处于活动状态,这会阻止设备之间通过 Python 进行串行通信。
我在尝试将 Arduino 与 python 通信时遇到错误,我正在使用 Arduino 模块,但出现无法打开端口错误,我可以从 Arduino IDE 与我的 Arduino 通信。
from Arduino import Arduino
import time
board = Arduino(port="/dev/cu.usbmodem14201") # plugged in via USB, serial com at rate 115200
board.pinMode(13, "OUTPUT")
while True:
board.digitalWrite(13, "LOW")
time.sleep(1)
board.digitalWrite(13, "HIGH")
time.sleep(1)
这是我的错误
serial.serialutil.SerialException: [Errno 2] could not open port /dev/cu.usbmodem14201: [Errno 2] No such file or directory: '/dev/cu.usbmodem14201'
当我尝试使用 pyfirmata 时出现错误
这是我的代码:
import pyfirmata
import time
board = pyfirmata.Arduino('/dev/cu.usbmodem14201')
led = board.get_pin('d:13:o')
while True:
led.write(1)
time.time(1)
led.write(0)
time.time(1)
我的 pyfirmata 错误:
AttributeError: partially initialized module 'pyfirmata' has no attribute 'Arduino' (most likely due to a circular import)
作为序言,我已经与 Arduino 进行了一些串行通信,但并没有太广泛地使用 Arduino 库。
如果您还没有这样做,我建议您考虑一下 PySerial 库。这可能有助于解决您的 Mac 和电路板之间串行连接的最初问题。这并不能完全解决您直接写入 LED 的需求,但同时可以作为替代品。您可以使用来自 Mac 的传入串行通信来指导 Arduino 上的某些操作。
我用过的很棒的教程可以在这里找到: https://create.arduino.cc/projecthub/ansh2919/serial-communication-between-python-and-arduino-e7cce0
另一个问题可能是您的串行监视器可能处于活动状态,这会阻止设备之间通过 Python 进行串行通信。