SerialPort не видит порт COM3 - C#

Узнай цену своей работы

Формулировка задачи:

Добрый день! Столкнулся с проблемой получения данных с com порта. ОС : win10 x64 IDE: Visula studio 2010 Нужно написать программу получающую данные с com порта, в системе нет этих портов. Для решения проблемы решил использовать переходник USB-COM, система сама его обнаружила и поставила на него драйвера и определила его как com порт с именем COM3. Для эмуляции отправки данных использую программу "COM Port Data Emulator", он тоже увидел вновь установленный порт и направил в него данные. Пока все хорошо. Начал писать программу, решил начать с вывода на экран доступных COM портов
System.IO.Ports.SerialPort.GetPortsNames();
На выход получил что доступные порты COM1, COM2 !!!!!!? При попытке открыть порт COM3, выдало сообщение, что он не существует. Вопрос: откуда взялись эти порты ? Почему не виден порт COM3 хотя он отображается в диспетчере устройств ? Как по другому можно с эмитировать работу порта отправка получение значение переменной например ? Нужна помощь. Код
                try
                {
                    string ports = "";
                    foreach (string p in System.IO.Ports.SerialPort.GetPortNames())
                    {
                        ports += " " + p; 
                    }
                    InfoManager.MessageBox(ports);
                    return; // break up, DEBUG
                    System.IO.Ports.SerialPort arduino = new System.IO.Ports.SerialPort("COM3", 9600, System.IO.Ports.Parity.None, 8, System.IO.Ports.StopBits.One);
                    if (!arduino.IsOpen)
                    {
                        arduino.Open();
                        string s = arduino.ReadExisting();
                                      InfoManager.MessageBox("Reading data from the serial port message :" + s);
                        arduino.Close();
                    }
                    else
                    {
                        InfoManager.MessageBox("The serial port is already open");
                        string s = arduino.ReadExisting();
                                InfoManager.MessageBox("Reading data from the serial port message :" + s);
                        arduino.Close();
                    }
                }
                catch (Exception e)
                {
                    InfoManager.MessageBox(e.Message);
                }

Решение задачи: «SerialPort не видит порт COM3»

textual
Листинг программы
System.IO.Ports.SerialPort.GetPortsNames();

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.75 из 5