USB-камера падает при открытии последовательного порта - PullRequest
0 голосов
/ 25 ноября 2018

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

Так, на прошлой неделе мы купили мини-ПК (beelink bt3 pro), чтобы дать нашим клиентам, когда они купили это оборудование, чтобы они могли установить нашу программу на этом выделенном ПК.Мы сразу заметили, что при запуске программы камера зависает с тем пресловутым звуком, который издает Windows, когда вы отключаете USB-устройство.Поэтому после поиска подсказок по проблеме я обнаружил, что при вызове serialport.Open () камера зависает.Для последовательного порта я использую стандартную библиотеку Microsoft, в то время как для камеры я сначала использовал Directshow, а затем EMGUCV (я переключился на прошлой неделе, потому что думал, что проблема была вызвана библиотекой камеры).

Этокод, который я использую в тестовой программе:

VideoCapture c = new VideoCapture(0);
c.ImageGrabbed += c_ImageGrabbed;
c.Start();
SerialPort port = new SerialPort("COM5", 9600, Parity.None, 8, StopBits.None); 
port.Open();

Сразу после вызова Open () камера падает и останавливает запись, из-за чего ошибка Windows звучит так, как будто она была удалена с ПК.Нет исключений, и программа продолжает работать.

Важно отметить, что эта проблема возникает только на этом ПК, и у меня есть сомнения, что Windows 10 была установлена ​​неправильно, так как я обнаружил Windows.old в C :, и система иногда предлагает мне удалить старую папку Windows.

1 Ответ

0 голосов
/ 30 января 2019

Если камера питается от USB, это, вероятно, проблема с питанием, т. Е. USB-порт компьютера не выдает достаточный ток для стабильной работы камеры.

Вы можете попробовать

  • для подключения камеры к порту USB с более высокой токовой характеристикой
  • для подключения камеры через USB-концентратор с внешним питанием.
...