我正在对这样的设备进行编程: https://wiki.husarion.com/robocore:basics
我无法使用pySerial连接到串行端口。 serial.tools.list_ports命令说找不到端口。 我正在使用此代码尝试连接:
import serial
port = 'COM1'
ser = serial.Serial()
ser.port=port
ser.baudrate=9600
ser.open()
ser.write(b'q')
ser.close()
它会引发此异常:
Traceback (most recent call last):
File "C:\Users\Mateusz\Desktop\serialpy.py", line 7, in <module>
ser.open()
File "C:\Python37\lib\site-packages\serial\serialwin32.py", line 62, in open
raise SerialException("could not open port {!r}: {!r}".format(self.portstr, ctypes.WinError()))
serial.serialutil.SerialException: could not open port 'COM1': FileNotFoundError(2, 'The system cannot find the file specified.', None, 2)
我正在Windows 10上运行。
答案 0 :(得分:0)
我在代码之前添加了它。它将尝试连接到多个端口(COM1-COM10),并选择找到的第一个端口。
import serial
serial_port = False
for k in range(1, 11):
try:
port = 'COM{:d}'.format(k)
serial_port = serial.Serial(port, 9600)
print(port, 'connected')
break
except serial.SerialException:
print('SerialException')
if not serial_port:
raise serial.SerialException('not found, but tried hard.')
serial_port.readline()