如何 send/write 串行命令到虚拟 com 端口上的霍尼韦尔 1300g 扫描仪?

How to send/write serial command to Honeywell 1300g scanner on virtual com port?

我一直在尝试与通过虚拟 com 端口上的 USB 连接的扫描仪连接,以便使用串行命令触发它。由于环境的性质(工作计算机,无法访问其他应用程序甚至不允许 运行.ps1 脚本),我只能使用 Powershell。我能够 create/open 一个端口,设置一些参数并从扫描仪接收数据,但是似乎无论我通过 $port.Write(command) 发送什么命令,都没有任何反应。我确实有正确的 COM 端口,正确匹配的波特率。根据用户指南,触发命令是 SYNTCR 或 0x16 0x54 0x0d,但我就是不知道如何正确格式化它。到目前为止,这是我在控制台中输入的内容:

$port = New-Object System.IO.Ports.SerialPort COM3, 38400, None, 8, one
$port.DTREnable = $True
$port.RTSEnable = $True

$port.Open()

$port.Write(command)

$port.ReadExisting()

$port.Close()

我已尝试将以下所有命令组合发送到端口,但均未成功:

这是一张图片,显示了有关 Powershell 的 $port 的更多信息: https://i.stack.imgur.com/3Aje4.png

要发送三个字节 0x16 0x54 0x0d 尝试发送:

[char]22+[char]84+[char]13