Перейти к содержанию
    

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

Мне же больше понравился вариант - вообще отказаться от usbser и пр. и использовать libusb.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А у вас много девайсов на компортах висит? я вот только с блютусом и переходниками usb-rs-XXX в последнее время встречаюсь, да еще старые программаторы.

Но если хотите что б все красиво было, то прямая дорога в WMI, скачайте утилитку WMI Code Creator (она бесплатная) и в неймспейсе root\WMI ищите инфу по последовательным портам. Утилька сама поможет сгенерить код на C#

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А у вас много девайсов на компортах висит? я вот только с блютусом и переходниками usb-rs-XXX в последнее время встречаюсь, да еще старые программаторы.
У меня нет, а у заказчиков много.

Поразбираюсь с libusb. Кто с ней работал? Какие отзывы? Работа стабильная? "Синие экраны" не наблюдаются? И ещё один важный ньюанс: совместимость с Windows Vista и Windows 7?

Изменено пользователем head_sk

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не подскажите как программными средствами в винде определить что этот виртуальный ком-порт открыт именно этим устройством?

Смотрите в реестре список и ищете в нем USBSER:

HKLM\HARDWARE\DEVICEMAP\SERIALCOMM

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А есть ли какой-то благоразумный выход, что устройство с USB коммерческое выпустить хочется, а VID покупать нет? Подскажите что стоит делать в таком случае?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите что стоит делать в таком случае?
Договориться и купить один или несколько PID у того, кто уже имеет собственный VID. Еще совсем недавно в Европе (ЕС) такое вовсю практиковалось. Естественно, что продавать свой продукт придется под маркой владельца VID. Потому, что официально перепродажа их запрещена соглашениями. Некоторые производители МК предоставляют свои VID/PID. Недавно интересовался, например, Microchip на основании заявки предоставляет свой VID и какой-то PID для выпуска установочной (пробной) партии устройств на МК (со встроенным USB) этой фирмы общим количеством не более 10 000 шт. См. по ссылке.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А я слышал на этом форуме что многие VID выбирают что-то типа FFFF. Неужели нет номеров которым можно пользоваться всем? Пусть девайсы пересекуться, ничего страшного.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Здравствуйте. Не подскажите в чем может быть загвоздка? Писал программу для драйвера от атмела. Функция отправки хосту работала идеально.

Поменял драйвер на usbser.sys. Теперь первая отправка работает хорошо. А вот вторая уже не отправляется. Вот код отправки.

 

unsigned int USB_Write(unsigned char* buffer, unsigned int size)
{
  /***/ while((AT91C_BASE_UDP->UDP_CSR[2]&AT91C_UDP_TXPKTRDY) == AT91C_UDP_TXPKTRDY); 
  
  while (size--) 
    AT91C_BASE_UDP->UDP_FDR[2] = *buffer++;
  
  UDP_EP_SetFlag(AT91C_BASE_UDP, 2, AT91C_UDP_TXPKTRDY)
    

  return xSemaphoreTake(TXSemaphore, 5);
}

 

Во время второй отправки не срабатывает прерывание AT91C_UDP_TXCOMP. А во время третьей отправки код зависает на строчке с пометкой /***/

В чем может быть проблема? Что в коде не так? Почему с атмеловским драйвером работает а с usbser нет?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А я слышал на этом форуме что многие VID выбирают что-то типа FFFF. Неужели нет номеров которым можно пользоваться всем?
Для отладки вы можете пользоваться любыми вам подходящими VID/PID (естественно которые не совпадают с уже имеющимися в вашей системе), а вот для производства готового устройства - нет. Не думаете же вы, что консорциумы типа USB-IF полные лохи организовывают? :)

Пусть девайсы пересекуться, ничего страшного.
Как раз наоборот, это и есть самое "страшное". Когда ОС, определив устройство неправильно, начнет "подсовывать" ему совершенно другой драйвер.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...