Witam!
Mam problem z otrzymaniem poprawnej odpowiedzi z urządzenia przez port COM na prędkości 115200. Wysyłam doń zapytanie typu $LZ1? urządzenie odpowiada takim ciągiem znaków #LZ01_L1=204\r\n (sprawdzone na terminalu coolterm) a w mojej aplikacji otrzymuję ?Z\r?f?Zf?204\r\n bądź coś podobnego. Ustawienia parametrów COM są poprawne i zgodne z ustawieniami urządzenia a mianowicie:
BaudRate = 115200;
StopBits = StopBits.One;
Parity = Parity.None;
DataBits = 8;
Jeśli tylko odbieram jakieś dane nie wymagające wcześniejszego zapytania, transmisja przebiega poprawnie.
Dodam że na Baud rate 19200 wszystko działa normalnie.
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
Send("$LZ1_L1?\r\n");
BackgroundWorker worker = sender as BackgroundWorker;
if (!serialPort1.IsOpen)
return;
bufor = serialPort1.ReadExisting();
Console.WriteLine(bufor);
}
Co może być tego przyczyną? Ktoś ma jakieś sugestie?