Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Работа с usb портом


Автор: Spice 14.7.2008, 06:04
Как записать/прочитать данные с USB-порта, как определить к какому из портов подключено устройство?

Правильно ли я понимаю, что работать с ним можно, как и с COM-портом, подобно файлу?

Такой вариант не работает:
Код

SerialPort port = new SerialPort();

port.PortName = "USB1";
port.WriteTimeout = 500;
port.ReadTimeout = 500;
port.BaudRate = 9600;
port.Parity = Parity.None;
port.DataBits = 8;
port.StopBits = StopBits.One;
port.Handshake = Handshake.RequestToSend;
port.DtrEnable = true;
port.RtsEnable = true;
port.NewLine = System.Environment.NewLine;

port.Open();

port.Close();

Буду признателен хоть какой-то информации. Поисковики дали скудный результат.

Автор: Alekz 14.7.2008, 11:52
Глянь http://www.icsharpcode.net/opensource/sharpusblib/.

Автор: STRELOKBMSTU 14.7.2008, 15:40
Код

Правильно ли я понимаю, что работать с ним можно, как и с COM-портом, подобно файлу?


Если драйвера стоят на это устройство, то оно действительно инициализируется в системе как COM-устройство, глянь в диспетчере устройств, т.е. можешь применять System.IO.Ports.SerialPort, а дальше все то же самое!

Автор: Spice 15.7.2008, 08:16
STRELOKBMSTU:
Драйверы стоят. Следующим образом получаю список портов:

Код

SerialPort port = new SerialPort();
string[] s = SerialPort.GetPortNames();

foreach (string st in s)
{
    listView1.Items.Add(st.ToString());
}


Как результат - только "COM1".

Автор: STRELOKBMSTU 15.7.2008, 12:16
В диспетчере устройств при подключении устройства проверь как оно инициализируется. Если в разделе "Порты(COM и LPT)" стоит USB Serial Port (COM1), то замени 3-ю строчку своего кода на:

Код

port.PortName = "COM1";


дальше должно все работать. Если оно как-то по другому инициализируется то тут уже надо что-то другое придумывать.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)