我正在尝试使用ECHO或类似命令通过命令行将以下内容发送到COM1串口(我也尝试下载一个名为serialsend的小程序,但我仍然坚持如何发送等效的 CTRL + Z 。这是通过西门子TC35 GAM模块发送短信。我可以通过Hyperterminal作为测试来做,它工作正常,但我无法弄清楚如何在末尾发送 CTRL + Z 以确认消息的内容。
这就是我所拥有的:
AT
AT+CMGF=1
AT+CMSG="+xxxxxxxxxxx"
HELLO
现在,在Hello,我要发送的消息之后,我必须发送 CTRL + Z 。但无法弄清楚如何做到这一点,我试过这个:
AT
AT+CMGF=1
AT+CMSG="+xxxxxxxxxxx"
HELLO
\x1A
正如我读到的那样,这相当于这样做,但它没有用。
任何人都可以帮我吗?我找到了解决方案,但它们不是命令行,这就是我需要的。
我也尝试过使用这种格式:
ECHO AT > COM1:
但由于我不知道如何发送 CTRL + Z 我不知道它是否有效。
答案 0 :(得分:3)
使用此:
port.Write(txt_msgbox.Text + char.ConvertFromUtf32(26));
有效:)
答案 1 :(得分:2)
我写了你提到的免费命令行程序SerialSend。由于此问题最初发布,我添加了一个额外的功能,允许在您通过串行端口发送的文本中包含任意字节值(十六进制格式)。例如,要发送Ctrl-Z(十六进制为26,十六进制为0x1A),只需使用以下命令:
SerialSend /hex "\x1a"
可以使用其他命令行参数配置端口名称/编号,波特率等。例如,
SerialSend /baudrate 9600 /devnum 2 /hex "\x1a"
有关详细信息,请参阅SerialSend home page。
希望有所帮助!
泰德
答案 2 :(得分:0)
键入此命令Serial.println((char)26);在Arduino代码中...一个方形框将出现在串行监视器上。复制该正方形并粘贴到Notepad ++中。它将以黑色背景显示为SUB。每当您要键入cntrl + z时,只需复制此SUB并粘贴到串行监视器中即可。可以。