I have written a small application for Serial terminal but once data is received Form get frozen. I need a thread but not sure how to do it...
public class Class1
{
public SerialPort serial;
Thread t;
public Class1()
{
serial = new SerialPort("COM1", 38400);
serial.DataReceived += new SerialDataReceivedEventHandler(serial_DataReceived);
t = new Thread (new ThreadStart (WriteToTextBox));
}
private void serial_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
if (Form1.textBox1.InvokeRequired)
{
Form1.textBox1.BeginInvoke(new MethodInvoker(WriteToTextBox));
}
else
{
WriteToTextBox();
}
}
public void WriteToTextBox()
{
Form1.textBox1.AppendText(serial.ReadLine() + "\n");
}
}