gpt4 book ai didi

powershell - 如何使用命令提示符或Powershell关闭投影机?

转载 作者:行者123 更新时间:2023-12-03 00:00:59 26 4
gpt4 key购买 nike

我有一台Windows 8计算机,使用RS232串口连接到ASK Proxima C520投影仪。

我似乎无法通过我尝试过或在网上找到的任何命令来关闭投影机。

ASK Proxmia手册说使用以下内容:

Method: Asynchronous communication
Bits Per second: 19200
Data bits: 8
Parity: none
Stop bits: 1
flow control: none

我要用于关闭电源的命令显示以下内容:
Command: "A01" [CR] (Hex:0x41 0x30 0x31 0x0d)
Details: Power OFF immediately
Return: OK : [ACK][CR] | NG : "?" [CR]

我一直尝试使用的命令是:
powershell
[System.IO.Ports.SerialPort]::getportnames()

我只是用它来验证我确定使用COM4。
$port = new-Object System.IO.Ports.SerialPort COM4,19200,None,8,one
$port.open()
$port.WriteLine("A01")
$port.ReadLine()
$port.close()

发生的情况:命令提示符仅位于此处,带有下划线闪烁,并且在输入$ port.ReadLine()后不允许进行任何类型的交互。

我尝试将WriteLine切换为:“A01 \ r \ n”。

我还尝试使用以下各种版本:
MODE COM4: 19200,N,8,1,p
COPY "A01" COM4

我的问题:我不确定为什么投影机没有关闭而只是卡在命令提示符下或只是坐在那里。

我的问题:如何使用命令提示符或Powershell关闭投影机?我必须对串行命令的工作有所遗漏或困惑。

最佳答案

根据下面在System.IO.Ports.SerialPort类上列出的MSDN文章,ReadLine方法最多读取输入缓冲区中的NewLine值。但是,上一条命令WriteLine将值“A01”写入输出缓冲区。该ReadLine指令期望您从未传递过一些输入值。我相信您正在发送正确的电源关闭命令,但没有像投影机所期望的那样发送返回命令或进行确认。绝对不是正确的命令。我相信`r等于返回键。

试试这个:

$port = new-Object System.IO.Ports.SerialPort COM4,19200,None,8,one
$port.open()
$port.WriteLine("A01 `r");
$port.WriteLine("ACK `r");
$port.close()

RETURN命令可能是不必要的...
$port = new-Object System.IO.Ports.SerialPort COM4,19200,None,8,one
$port.open()
$port.WriteLine("A01");
$port.WriteLine("ACK");
$port.close()

https://msdn.microsoft.com/en-us/library/system.io.ports.serialport(v=vs.110).aspx

http://www.askproximausa.com/files/pdf/ASK-PROXIMA-C5-Series-Users-Manual-English.pdf

关于powershell - 如何使用命令提示符或Powershell关闭投影机?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29259471/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com