SerialPort com = new SerialPort("COM1", 9600, Parity.Even, 7, StopBits.One);我很奇怪,在用这个类的时候
如果
com.Write();写数据,写完以后必须要关闭
if (com.IsOpen)
{ com.Close(); }
com.Open();
然后我再用com.Write()或者com.Read()才有效果
如果连续
com.Write();
com.Read();
就无效,请问怎么解决这个问题因为我需要一直监听某个端口,所以放在一个for(;;)里面不断的监听,直到取到我需要的值才关闭
如果总是这样开一下就必须关闭一次再开才能取得数据,那样结果就不对了请教了
如果
com.Write();写数据,写完以后必须要关闭
if (com.IsOpen)
{ com.Close(); }
com.Open();
然后我再用com.Write()或者com.Read()才有效果
如果连续
com.Write();
com.Read();
就无效,请问怎么解决这个问题因为我需要一直监听某个端口,所以放在一个for(;;)里面不断的监听,直到取到我需要的值才关闭
如果总是这样开一下就必须关闭一次再开才能取得数据,那样结果就不对了请教了
serialPort.DataReceived += new SerialDataReceivedEventHandler(ReceiveInfo)public void ReceiveInfo(object sender, SerialDataReceivedEventArgs e)ReceiveInfo 为接收数据的函数 这样不用你去关或者开 只要你第一次打开串口就行了他会自动读取串口数据的