我试图使用windows终端向设备发送命令,所以我要做的是
[System.IO.Ports.SerialPort]::getportnames()为了得到好的港口
$port= new-Object System.IO.Ports.SerialPort COM3,9600,None,8,one
$port.open()来配置并打开它。
在此之后,我尝试以以下形式发送命令:
<DLE> <command> <CR> 但是我显然不知道怎么做,我尝试使用OFF命令(因为它关闭了我的设备),所以我用下面的代码进行测试:
[Byte[]] $request = 0x10,79,70,70,0x0D
$port.Write($request)不起作用所以我测试了这个:
[Char[]] $request = 0x10,"O","F","F",0x0D
$port.Write($request)同样没有起作用,问题是我不知道怎么写--我的设备手册中绝对没有解释--他们只是给出了我上面写的命令表和命令类型的列表OFF / SET / CLR .
如果有人能帮我这个忙,谢谢:)
发布于 2022-08-18 19:37:23
我刚刚成功了。该命令的成功语法是:
[Byte[]] $request = 0x10,0x4F,0x46,0x46,0x0D
$port.Write($request,0,$request.count)我还是有点惊讶,我的设备手册中没有任何解释。也许命令是显而易见的,但对我来说却不是。这是我第一次使用PowerShell。
https://stackoverflow.com/questions/73379208
复制相似问题