首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过MSComm1发送ctrl-E

通过MSComm1发送ctrl-E
EN

Stack Overflow用户
提问于 2009-03-17 13:04:50
回答 2查看 711关注 0票数 2

如何通过串口MSComm1发送ctrl-E?当loop..Here是我的代码时,它应该继续传递ctrl-E…就像for循环或do:

MSComm1.CommPort = Convert.ToInt16(Settings.Default.PortName);SendKeys.Send("^(e)");

设置= Settings.Default.BaudRate.ToString().Trim() + ",“+ Settings.Default.Parity.Substring(0,1).ToString().Trim() + ",”+ Settings.Default.DataBits.ToString().Trim() + ",“+ Settings.Default.StopBits.ToString().Trim();

MSComm1.PortOpen = true;

MSComm1.InputLen = 0;

MSComm1.InputMode = MSCommLib.InputModeConstants.comInputModeText;

if (Settings.Default.FlowControl == "Xon/Xoff")

{

代码语言:javascript
复制
MSComm1.Handshaking = MSCommLib.HandshakeConstants.comXOnXoff;

}

else if (Settings.Default.FlowControl == "None")

{

代码语言:javascript
复制
MSComm1.Handshaking = MSCommLib.HandshakeConstants.comNone;

}

else if (Settings.Default.FlowControl == "RTS")

{

代码语言:javascript
复制
 MSComm1.Handshaking = MSCommLib.HandshakeConstants.comRTS;

}

else if (Settings.Default.FlowControl == "RTSXon/Xoff")

{

代码语言:javascript
复制
MSComm1.Handshaking = MSCommLib.HandshakeConstants.comRTSXOnXOff; }
EN

回答 2

Stack Overflow用户

发布于 2009-03-17 13:08:41

Control-E是5的键盘快捷键,因此:

代码语言:javascript
复制
serial.Write(new byte[]{ 5 }, 0, 1);

(假设serial是System.IO.Ports.SerialPort的实例。)

票数 2
EN

Stack Overflow用户

发布于 2009-03-17 13:09:04

使用here中的C#进行串口通信

代码语言:javascript
复制
private static void SendSampleData() {
  // Instantiate the communications
  // port with some basic settings
  SerialPort port = new SerialPort("COM1", 9600, Parity.None, 8, StopBits.One);

  // Open the port for communications
  port.Open();

  // Write a string
  port.Write("Hello World");

  // Write a set of bytes
  port.Write(new byte[] {0x0A, 0xE2, 0xFF}, 0, 3);

  // Close the port
  port.Close(); 
}

现在,您只需以某种方式对Ctrl+E进行编码。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/654146

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档