检测串口设置

wro*_*sty 5 python serial-port communication

有时我突然需要通过串行端口连接到设备的控制台。问题是,我从来不记得与每个特定设备一起使用的端口设置(波特率、数据位、停止位等),并且当真正需要时,文档似乎永远不会随处可见。

我编写了一个 Python 脚本,它使用简单的暴力方法(即迭代所有可能的设置,发送一些测试输入并显示响应,以便人们决定它是否有意义),但是:

  • 需要很长时间才能完成
  • 并不总是有效(可能是端口重置/超时问题)
  • 只是似乎不是一个正确的方法来做到这一点:)

所以问题是:有谁知道自动检测远程设备正在使用哪些端口设置的程序?

Gre*_*gor 1

虽然第 1 部分没有直接回答您的问题:

有些设备只包含自动检测(称为自动波特率)方法,这意味着:使用您当前的设置(9k6、115k2、..)向设备发送一个字符,设备很有可能会用您的设置进行应答。 (!) 设置。我在 HP 交换机上见过这个。

第二种方法:尝试重新排序连接可能性。例如,另一端使用没有硬件握手的 9k6 的可能性很高,但使用带有软件 Xon/Xoff 的 38k4 的可能性较小。

如果您将尝试分解为几次,那么“蛮力”方法会更有效。