Diskuze: c# form - událost sériového portu ErrorReceived

C# .NET .NET (C# a Visual Basic) c# form - událost sériového portu ErrorReceived American English version English version

Avatar
Michaal.K
Člen
Avatar
Michaal.K:

Ahoj,
potřeboval bych poradit s událostí pro sériový port ErrorReceived. Nevím kdy přesně se tato událost vyvolá? Myslel jsem, že vyvolání události se odvíjí od ReadTimeout a WriteTimeout, pokud druhá strana neodpoví do nějaké doby událost se vyvolá, ale to mi nefunguje. Nebo jsem to špatně pochopil? V kódu to mám takto:

SerialPort comPort =new SerialPort("COM1", 19200, Parity.None, 8, StopBits.One);
comPort.Handshake = Handshake.None;
comPort.ReadTimeout = 500;
comPort.WriteTimeout = 500;
comPort.DtrEnable = true;
comPort.RtsEnable = true;
comPort.ErrorReceived += new SerialErrorReceivedEventHandler(comPort_ErrorReceived);

void comPort_ErrorReceived(object sender, SerialErrorReceivedEventArgs e)
{
        // Chybove hlaseni
}

Díky za pomoc...

 
Odpovědět 31. května 10:37
Avatar
Lako
Člen
Avatar
Lako:

Dle dokumentace ti událost vypálí v těchto případech

 
Nahoru Odpovědět 1. června 10:29
Avatar
Michaal.K
Člen
Avatar
Odpovídá na Lako
Michaal.K:

Ahoj díky za odpověď. Ale z toho odkazu moc moudrej nejsem..
Jestli jsem to dobře pochopil tak chybu timeoutu to nevyhodí. Jen chybu parity, přetečení vyrovnávacího bufferu, vstupní přetečení bufferu, výstupní buffer je plný a chyba rámce.
Jinak chybu timeout jsem vyřešil časovačem...
Nevím zda mám tuto událost ErrorReceived použít v programu?? Díky

 
Nahoru Odpovědět 7. června 9:48
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.