Hallo
ich programmiere gerad etwas mit Seriellen Schnittstellen und bin auf den Befehl port.Readline gestoßen. Aber leider ist die Wartezeit zu lange und das Programm friert ein. Kann man die Lesezeit irgendwie abkürzen?
public partial class Form1 : Form
{
string read;
public Form1()
{
InitializeComponent();
comboBox1.Items.AddRange(SerialPort.GetPortNames());
}
private void Connect_Click(object sender, EventArgs e)
{
try
{
SerialPort port = new SerialPort(comboBox1.SelectedItem.ToString(), 9600, Parity.None);
if (port.IsOpen)
{
port.Close();
}
port.Open();
port.WriteLine("1");
textBox1.Text += port.ReadTimeout;
textBox1.Text += port.BytesToRead;
textBox1.Text += port.DataBits;
textBox1.Text += port.ReadLine();
port.Close();
}
catch (System.OperationCanceledException d)
{
MessageBox.Show(d.Message);
MessageBox.Show("Nix");
}
catch (TimeoutException f)
{ MessageBox.Show(f.Message);
}
catch(NullReferenceException f)
{ MessageBox.Show(f.Message); }
comboBox1.Items.Clear();
comboBox1.Items.AddRange(SerialPort.GetPortNames());
}
}
}