plink无法打开串口

Sim*_*ett 4 putty plink serial-port

组态:

  • Windows 7的
  • 油灰0.67
  • 链接0.67

问题

我试图用来plink在COM9上打开串行端口连接。

使用PuTTYI可以在COM9上打开串行连接,并且我已经为该串行连接保存了会话。

COM PORT设置为:

  • 波特率:115200
  • 数据:8位
  • 停止:1位
  • 奇偶校验:无
  • 流量控制:无

当我尝试使用plink而不是时PuTTY,出现以下错误:

$ plink -serial COM9 -sercfg 115200,8,1,N,N
Unable to open connection:
Unable to open serial port
Run Code Online (Sandbox Code Playgroud)

但是,如果我将保存的PuTTY会话用于COM9,那么它将起作用!

!plink -load COM9
help
help connect    Create connection
help disconnect Close existing connection
.
.
Run Code Online (Sandbox Code Playgroud)

但是,我不能使用保存的会话,因为我的目的是plinkExpect一起使用,以通过串行连接的设备自动进行测试,并且将在不同的计算机和不同的COM端口上。

Sim*_*ett 8

我已经知道答案了,但是我用谷歌搜索了这个问题,看到了类似的问题,但没有答案。希望Google的下一个人能找到这个,并且可以为他们省去一些麻烦。

此问题特定于Windows OS。

在Windows上,对大于COM9的COM端口进行寻址需要特殊的寻址。

从COM1到COM9,您只能将它们标识为,例如COM1COM2等等,但是在COM9上,您必须以特殊的方式对其进行寻址,对于COM10,您必须将其标识为\\.\COM10,依此类推。

所以,我尝试了一下,它的工作原理是:

$ plink -serial \\.\COM9 -sercfg 115200,8,1,N,N
help
help connect    Create connection
help disconnect Close existing connection
.
.
Run Code Online (Sandbox Code Playgroud)

我不知道为什么需要特殊的COM端口寻址格式plink,以及为什么COM9需要它特殊的格式。当使用串行到COM1时,没有它就可以工作。PuTTY似乎也不在乎。