我正在使用 Windows 环境和 Arduino。我有一个python脚本,不是我写的,它使用linux的串口。由于我在 Windows 上工作,我应该转换此代码以使其在 Windows 上工作以进行配置,然后使用连接在 pc 上的 Arduino 使用的串行端口。我的端口是 COM15.i 使用 windows 7 32 位。我的 python 发行版是 2.7.5,我已经安装了 32 位的 pyserial 模块。感兴趣的代码如下:
def __init__(self,
port=DEFAULT_DEVICE,
bps=DEFAULT_DEVICE_SPEED_BPS,
interval=DEFAULT_INTERVAL):
self.unpack = None
self.interval = interval
self.ser = serial.Serial(baudrate=bps,
parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE,
bytesize=serial.EIGHTBITS)
devs = glob.glob(port + "*")
for dev in devs:
logging.debug("scanning %s", dev)
self.ser.port = dev
self.ser.open()
time.sleep(2)
self.configure()
self.send_cmds(["#P%u" % self.interval])
logging.debug("attaching to port %s!", dev)
return
raise RuntimeError("unable to configure serial port")
“DEFAULT_DEVICE”变量是定义串行端口的变量。它被定义为:
DEFAULT_DEVICE = '/dev/ttyACM'
我想我应该简单地在 windows 中以串行格式修改这个变量,以使脚本工作并正确配置串行。在网上搜索我发现简单地说:
DEFAULT_DEVICE = 'COM15'
它应该工作。我已经尝试过这种方式,但是在启动代码时,我得到了代码中定义的 raise RuntimeError("unable to configure serial port") 。对这个问题有任何想法吗?也许我给 DEFAULT_DEVICE 变量的格式不正确,或者我应该修改上面代码中的其他内容。谢谢你的每一个帮助。