master
phkim 3 years ago
parent 08000ea7ef
commit ace23d163b
  1. 21
      RS232Test/Form1.cs

@ -17,7 +17,10 @@ namespace RS232Test
private const char STX = (char)0x02; private const char STX = (char)0x02;
private const char CR = (char)0x0D; private const char CR = (char)0x0D;
private const char LF = (char)0x0A; private const char LF = (char)0x0A;
private string inStream = "";
private const string SEPERATOR = "\r\n";
private string serialStream = "";
private object receiveLock = new object(); private object receiveLock = new object();
@ -119,22 +122,22 @@ namespace RS232Test
if (data.Length < 1) if (data.Length < 1)
return; return;
inStream = String.Concat(inStream, data); serialStream = String.Concat(serialStream, data);
string message = EqTocReceive(inStream, "\r\n"); string packetString = pullPacketString();
Console.WriteLine(); Console.WriteLine();
EqTocPrint(message); EqTocPrint(packetString);
} }
private string EqTocReceive(string stream, string seperator) private string pullPacketString()
{ {
int etxIndex = inStream.IndexOf(seperator); int etxIndex = serialStream.IndexOf(SEPERATOR);
if (etxIndex < 0) if (etxIndex < 0)
return null; return null;
string message = inStream.Substring(0, etxIndex); string packetString = serialStream.Substring(0, etxIndex);
inStream = inStream.Remove(0, etxIndex + seperator.Length); serialStream = serialStream.Remove(0, etxIndex + SEPERATOR.Length);
return message; return packetString;
} }
private void EqTocPrint(string message) private void EqTocPrint(string message)

Loading…
Cancel
Save