我已经编写了函数DataReceivedHandler
,它工作得很好,但是端口应该保持打开以读取即将到来的数据。在我的项目中,端口应该保持可用,以便在没有来自 Arduino 的任何数据时其他页面可以使用它。我怎样才能只有在收到数据时才打开它?
private static void DataReceivedHandler( object sender,SerialDataReceivedEventArgs e)
{
SerialPort sp = (SerialPort)sender;
string indata = "";
System.Threading.Thread.Sleep(1000);
indata = sp.ReadExisting();
// Console.WriteLine("Data Received:");
if (indata == "kitchen_light_on\r\n")
f1.update_flag("kitchen_light", 1);
else
if(indata == "kitchen_light_off\r\n")
f1.update_flag("kitchen_light", 0);
}