-1
シリアルポートを読み書きしようとしていますが、バッファをクリアできないようです。 私はDiscardIn/Outメソッドを無駄にしようとしました。シリアルポートから送信されたデータは、クリアされているはずのバッファでオフセットされています。シリアルポートからの読み取り中にスタックオーバーフローが発生する
public static SerialPort serialPort;
public static StringBuilder sendData { get { return sendData; } set { sendData = value;if (sendData.Equals("q")) quitEvent(); } }
static void Main(string[] args)
{
del ex = new del(StopThread);
serialPort = new SerialPort();
serialPort.PortName = "COM3";
serialPort.BaudRate = 9600;
serialPort.ReadTimeout = 2000;
_continue = true;
serialPort.Open();
serialPort.DiscardInBuffer();
serialPort.DiscardOutBuffer();
Thread readthread = new Thread(ReadFromSerial);
Thread writethread = new Thread(WriteToSerial);
readthread.Start();
writethread.Start();
readthread.Join();
writethread.Join();
serialPort.Close();
Console.ReadLine();
}
私の誤りは私が自動プロペラを訂正しました。イベントはトリガされません。私は彼がシリアルポートから受け取ったもので設定されていると思うのですが、 "q"を押すと、受信した回線。 –