2010-09-30 3 views
4

Я использую C# и Serialport и com0com (виртуальные последовательные порты) Моя проблема заключается в том, что мое приложение C# не может извлекать данные из гипертерминала, событие DataRecived не запускается, и если я вызываю manualy readExisting i получить ничего Чтобы проверить эту проблему, вы можете создать базовое приложение C#, подобное этому, которое имеет ту же проблему http://balau82.wordpress.com/2009/04/18/simplest-serial-port-terminal-in-csharp/, если вы запускаете 2 экземпляра этого приложения, все в порядке, но если вы запустите один экземпляр и гипертерминал, данные отправляются с C# на гипертерминал, но не с гипертермальной спины.C# serialport и hyperterminal

+0

Как-то это звучит как проблема HyperTerm ... Или просто несоответствие протокола/кодировки. –

ответ

5

Это слишком просто, гарантированно не работает. Вам нужно будет установить свойства связи в SerialPort, чтобы они соответствовали им с помощью HyperTerminal. Baudrate, DataBits, Parity и StopBits как минимум. И HyperTerminal ничего не отправит, если он не обнаружит устройство в режиме онлайн. Вы должны установить для свойств RtsEnable и DtrEnable значение true.

+4

Thx устанавливает следующие параметры: p.RtsEnable = true; p.DtrEnable = true; исправлена ​​эта проблема, теперь я могу продолжить свою программу – simion314

+0

@ simion314, которая была волшебной формулой для меня тоже. –

+0

http://stackoverflow.com/a/8910167/17034 –

Смежные вопросы