Python PySerial-平台的最大波特率
我有一个Tiva启动板,我一直通过Python和PySerial与之通信。我刚刚设置了一个新的Debian box,它的主要功能是与LaunchPad的进行通信 我惊讶地发现,我一直使用的921600kBaud速率在新的Debian box上不起作用,但是230400kBaud成功了 有没有一个好方法,也许通过串行或os python调用来确定平台可以处理的最大波特率 因此,在我打开串行线之前,我可以确定波特率是否真的起作用 比如:Python PySerial-平台的最大波特率,python,pyserial,baud-rate,Python,Pyserial,Baud Rate,我有一个Tiva启动板,我一直通过Python和PySerial与之通信。我刚刚设置了一个新的Debian box,它的主要功能是与LaunchPad的进行通信 我惊讶地发现,我一直使用的921600kBaud速率在新的Debian box上不起作用,但是230400kBaud成功了 有没有一个好方法,也许通过串行或os python调用来确定平台可以处理的最大波特率 因此,在我打开串行线之前,我可以确定波特率是否真的起作用 比如: def baudtestfunction(b): #
def baudtestfunction(b):
# test for valid baud rate here
[if valid baud]:
return True
[else invalid baud:]
return False
if (baudtestfunction(_baud) == True):
ser = serial.Serial(
port = _port,
baudrate = _baud,
parity = serial.PARITY_NONE,
stopbits = serial.STOPBITS_ONE,
bytesize = serial.EIGHTBITS
)
else:
printf "The chosen baud rate will not work on this platform"
exit()
在Debian框中,如果我将_baud设置为921600,它似乎打开了串行连接,只是无法正确发送/接收数据。我无法确定是串行连接不起作用还是Tiva本身不起作用。您应该知道所连接设备的波特率。。。测试它的唯一方法是打开一个串行端口并发送一个命令,看看是否得到了预期的结果。。。这听起来像ftdi,afaik可以在任何波特率下工作,基本上由usb的速度调节bus@JoranBeasley虽然这是真的,但我希望这个代码可以很容易地转移。如果我把它交给某人运行,他们可能甚至不知道波特率是多少。当他们试图运行它并且没有收到错误消息时,他们可能不知道它在哪里发生故障。我接到一个电话,在我确定Tiva的波特率配置不适用于机器之前,我必须运行所有可能的错误场景。我的问题归结为,如何从python确定usb总线的速度?