In meiner App sende ich Daten zum Mikrocontroller. Ich sende Daten, Mikrocontroller programmieren und senden Zeichen ("K"). Meine Anwendung sollte auf dieses Zeichen warten. Nach Erhalt dieses Zeichens sollte es Daten erneut senden.C#: Warten auf spezifisches Zeichen gesendet von RS485
Ich habe Probleme mit dem Empfang dieses Zeichens. Ist die Funktion BytesToRead richtig, um Zeichen zu lesen? Mein Programm immer fallen, wenn sie diese erreichen meine Funktion
static void wait()
{
SerialPort COMport = new SerialPort();
int znak;
COMport.PortName = "COM6"; //
COMport.BaudRate = 1200;
COMport.DataBits = 8;
COMport.Parity = Parity.None;
COMport.StopBits = StopBits.One;
COMport.Open();
do
{
znak = COMport.BytesToRead;
} while (znak != 75); // ASCII K = 75
COMport.Close();
return;
}
'BytesToRead' gibt Ihnen die Größe aller Daten im Empfangspuffer - d. H. Es gibt Ihnen nicht die Daten selbst. – Chris