Последовательный порт С#, имитация записи последовательного порта

У меня есть приложение С#, которое подключает компьютер к устройству через последовательный порт.

Когда я отправляю данные на устройство, если устройство отправляет данные обратно, срабатывает событие datareceived.

И я хочу спросить об этом. Есть ли способ имитировать отправку данных устройства?

Я имею в виду, что я хочу запускать событие datareceived не только тогда, когда устройство отправляет данные.

Это возможно?


person sgkin    schedule 17.12.2011    source источник


Ответы (1)


У вас должен быть дополнительный бесплатный последовательный порт.

При необходимости вы можете:

  • просто добавьте еще один новый или
  • установите виртуальный COM-порт (например, com0com).

Вы можете использовать свою программу C# с помощью программного эмулятора устройства через Нулевой модем.

person menjaraz    schedule 17.12.2011
comment
Спасибо за ответ. Я быстро взглянул на com0com, но я не думаю, что это то, что мне нужно. Я хочу, чтобы с помощью моего кода можно было имитировать получение данных с устройства. Например, у меня есть одно приложение, и когда я нажимаю кнопку, это приложение имитирует отправку данных из последовательного порта, чтобы запустить SerialPort.DataReceived, который существует в другом приложении. - person sgkin; 17.12.2011
comment
Вот для чего нужен эмулятор. Он должен эмулировать устройство. В вашем случае связь осуществляется через последовательный порт, а использование com0com — это просто еще один способ эмулировать последовательный порт, если у вас нет еще одного дополнительного. В противном случае, как вы могли бы запустить событие serial DataReceived? - person menjaraz; 17.12.2011
comment
Да, ты был прав. У меня в голове было иначе. Когда я прочитал его более внимательно, я нашел решение. Спасибо - person sgkin; 19.12.2011
comment
Рад помочь вам. Поскольку вы новичок в Stackoverflow, я напоминаю вам, что вы можете принять ответ, нажав правую кнопку (значок которой похож на галочку). Найдите время, чтобы посетить все разделы Часто задаваемые вопросы. Это очень помогает вам добиться большого прогресса. - person menjaraz; 19.12.2011
comment
Я посмотрю FAQ. Позвольте мне задать вам еще один вопрос. Я создал пару виртуальных COM для использования в своем приложении. Когда я их создал, я могу использовать их без проблем. Но когда я перезагружаю свой компьютер, приложение выдает ошибку, что COM-порт не выходит. Почему это происходит? - person sgkin; 19.12.2011
comment
Я без проблем попробовал Com0Com 6 месяцев назад: это драйвер виртуального последовательного порта в режиме ядра для Windows. Установка должна быть сделана тщательно. Вы должны строго соблюдать то, что сказано в ReadMe.txt (см. разделы «Установка», «Часто задаваемые вопросы» и «HOWTO»). Удалите его и повторите попытку. - person menjaraz; 20.12.2011