windows - 在Windows 7上使用PowerShell捕获来自COM端口的输出

原文 标签 windows powershell automation port powershell-2.0

我想将Sierra AT命令发送到COM端口并捕获输出并将其存储在使用PowerShell的变量中。

PowerShell版本:

Name             : ConsoleHost
Version          : 2.0
InstanceId       : eb5987f0-9961-4842-b349-ba215d86fdfa
UI               : System.Management.Automation.Internal.Host.InternalHostUserI
                   nterface
CurrentCulture   : en-IN
CurrentUICulture : en-US
PrivateData      : Microsoft.PowerShell.ConsoleHost+ConsoleColorProxy
IsRunspacePushed : False
Runspace         : System.Management.Automation.Runspaces.LocalRunspace

例如:at!gstatus?
我尝试了这个,但是对我来说不起作用。
PS> [System.IO.Ports.SerialPort]::getportnames()
COM16
PS> $port= new-Object System.IO.Ports.SerialPort COM16,115200,None,8,one
PS> $port.open()
PS> $port.WriteLine("at!gstatus?")
PS> $port.WriteLine("`r")
PS> $port.ReadExisting() //getting null output
PS> $port.close()

如何才能做到这一点?

最佳答案

调制解调器? COM端口? AT指令?是2015年还是1995年? ^ _ ^

在读取数据之前先暂停一下:

$port = New-Object System.IO.Ports.SerialPort COM16,115200,None,8,one
$port.Open()

$port.WriteLine( "at!gstatus?" + "`r" )
Start-Sleep -m 50

$port.ReadExisting()
$port.Close()

资料来源:https://social.technet.microsoft.com/Forums/en-US/2980f24e-56d1-431f-aedc-811c087b5184/powershell-serial-com-port?forum=ITCG

关于windows - 在Windows 7上使用PowerShell捕获来自COM端口的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34216840/

相关文章:

amazon-web-services - 构建后自动将静态网站文件部署到 S3

c++ - 如何让 SWIG 在 Windows 上为 intptr_t 使用 64 位整数

xml - 在Powershell中使用xpath在xml中选择属性

c# - 如何使用 UI 自动化从 Edge 浏览器检索文本

powershell - 使用PowerShell在IIS6中停止 'Default Web Site'

powershell - 只替换字符串中第一次出现的单词

automation - 如何解决这种上下文无关语法

Windows PowerShell 导入模块

angularjs - 如何使用 npm install 解决隧道套接字错误?

python - 如何在不打开任何媒体播放器的情况下播放声音文件?