110,571
社区成员
发帖
与我相关
我的任务
分享
//////////////以上是COM类
protected int BytesToRead = 0;
protected int ReadStart = 0;
protected char[] ReadBuffer = new char[500];
public void Open
{
SerialPort COMPort = new SerialPort()
COMPort.PortName = "COM3"
COMPort.BaudRate = 19200
COMPort.DataBits = 7
COMPort.Parity = "偶"
COMPort.StopBits = one
if (!COMPort.IsOpen)
{
COMPort.Open();
COMPort.RtsEnable = true;
"连接成功"
}
else
{
"连接失败"
}
COMPort.DataReceived += new SerialDataReceivedEventHandler(COMPort_DataReceived);
}
protected virtual void COMPort_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
SendCommand();
//RetryCount = 0;
ReadBuffer = new char[500];
}
public void SendCommand()
{
COMPort.Write(LastCommad.GetCommand(), 0, LastCommad.GetCommand().Length);
}
//////////////PLC类
PLC类 :COM类
protected override void COMPort_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
ByteToRead = COMPort.BytesToRead;
COMPort.Read(ReadBuffer, ReadStart, BytesToRead);
ReadStart = ReadStart + BytesToRead;
}