COM设备通讯
我需要向我的 COM 设备发送命令。当我使用超级终端时,它的工作原理如下:
开 标准差 1 255 255 9 100 255 0 的
并且效果很好...但是当我像这样运行我的控制台 C# 代码时:
var port = new SerialPort(SerialPort.GetPortNames()[0], 115200);
port.Handshake = Handshake.RequestToSendXOnXOff;
port.Open();
port.WriteLine("on");
Thread.Sleep(500);
port.WriteLine(sd 1 255 255 9 100 255 0);
Console.ReadLine();
port.WriteLine("of");
port.Close();
什么也没有发生:( 有什么问题吗?我已经尝试了所有的握手 - 仍然没有任何反应。
I need to send commands to my COM device. When I work with HyperTerminal it works great like:
on
sd 1 255 255 9 100 255 0
of
and it works great... But when I run my console C# code like this:
var port = new SerialPort(SerialPort.GetPortNames()[0], 115200);
port.Handshake = Handshake.RequestToSendXOnXOff;
port.Open();
port.WriteLine("on");
Thread.Sleep(500);
port.WriteLine(sd 1 255 255 9 100 255 0);
Console.ReadLine();
port.WriteLine("of");
port.Close();
Nothing happens :( What's the problem? I've tryed all of Handshakes - still nothing.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
确保您在命令后发送 CR-LF ("\r\n"):回车符 (0x0A)、换行符 (0x0D)
Make sure you are sending CR-LF ("\r\n"): carriage return (0x0A), line feed (0x0D) after your command