I am using C# to read data from a Serial Port, and was wondering if there was a way to abort reading data from a serial port if it is not in the exact format for example !COM data in
is the right format and not #POM data in
.
After initializing the serial port I ran this one line:
mySerialPort.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);
<code>private void MySerialPort_DataReceived(object sender, SerialDataReceivedEventArgs e) {
throw new NotImplementedException(); }
private void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e)
{
Regex reg = new Regex(@"A!COM");
var sp = (SerialPort)sender;
string indata = sp.ReadExisting();
if (reg.IsMatch(indata) is true)
{
Console.WriteLine($"Data Received from a COM Port {sp.PortName}:");
}
else{
break;
}
Console.WriteLine(indata);
}
</code>
<code>private void MySerialPort_DataReceived(object sender, SerialDataReceivedEventArgs e) {
throw new NotImplementedException(); }
private void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e)
{
Regex reg = new Regex(@"A!COM");
var sp = (SerialPort)sender;
string indata = sp.ReadExisting();
if (reg.IsMatch(indata) is true)
{
Console.WriteLine($"Data Received from a COM Port {sp.PortName}:");
}
else{
break;
}
Console.WriteLine(indata);
}
</code>
private void MySerialPort_DataReceived(object sender, SerialDataReceivedEventArgs e) {
throw new NotImplementedException(); }
private void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e)
{
Regex reg = new Regex(@"A!COM");
var sp = (SerialPort)sender;
string indata = sp.ReadExisting();
if (reg.IsMatch(indata) is true)
{
Console.WriteLine($"Data Received from a COM Port {sp.PortName}:");
}
else{
break;
}
Console.WriteLine(indata);
}