yornik 0 2 августа, 2006 Опубликовано 2 августа, 2006 · Жалоба Есть два переходника USB-2-RS232. Один - на CP210x, другой - на PL-2303. Между ними есть существенная с т.зр. пользователя разница - в какой бы USB-разъем не втыкался тот, что на CP210x, получающийся COM-порт будет иметь один и тот же номер (например, COM6). А тот, который на PL-2303, для каждого разъема создает COM-порт с уникальным номером (например, для 4-х разъемов - от COM7 до COM10). Если есть люди, тесно знакомые с дровами/аппликухами на эти микросхемы - есть ли где "кнопка", чтобы менять способ задания номера порта с одного на другой: всегда один номер порта <=> привязка номера к разъему? Можно ли сделать общий вариант для этих двух микросхем или может есть соображения в пользу "более правильного" варианта? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KRS 0 3 августа, 2006 Опубликовано 3 августа, 2006 · Жалоба у CP210x на борту есть уникальный серийный номер к нему и привязывается номер порта и сохраняется в ресетре а на PL-2303 наверное его нет и поэтому номер порта привязывается к разьему USB в любом случае можно найти в реестре и поправить я работаю с FTDI, там мкиросхемы у которых есть eeprom привязываются к серийнику а если нет то к разьему и типу. и получаются вообще номера портов больше 10... так что написал программмку которая их меняет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
-Al- 0 3 августа, 2006 Опубликовано 3 августа, 2006 · Жалоба у CP210x на борту есть уникальный серийный номер к нему и привязывается номер порта и сохраняется в ресетре а на PL-2303 наверное его нет и поэтому номер порта привязывается к разьему USB в любом случае можно найти в реестре и поправить я работаю с FTDI, там мкиросхемы у которых есть eeprom привязываются к серийнику а если нет то к разьему и типу. и получаются вообще номера портов больше 10... так что написал программмку которая их меняет. У CP210x нету уникального серийника :blink:, а вот у FTDI наоборот встречается. Здесь скорее в драйверах все зарыто... Тем более ничего не мешает назначить любой номер порта вручную (в WinXP) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Седой 0 5 августа, 2006 Опубликовано 5 августа, 2006 (изменено) · Жалоба По правилам Windows каждое Plug and Play устройство должно иметь уникальный строковый идентификатор Device instance ID http://msdn.microsoft.com/library/en-us/De....asp?frame=true Формат строки Device instance ID следующий: <device-ID>\<instance-specific-ID> где в случае USB устройства <device-ID> = USB\VID_XXXX&PID_XXXX&REV_XXXX а <instance-specific-ID> = строке, полученной из строкового дескриптора c номером iSerialNumber. Если такой дескриптор не найден или iSerialNumber = 0, то строку <instance-specific-ID> формирует PnP manager на основе данных USB хаба, к порту которого подключено устройство. Что происходит в Вашем случае: Устройство с CP210x имееет серийный номер ( строковый дескриптор с номером iSerialNumber <> 0) SSSS и его идентификатор Device instance ID = USB\VID_XXXX&PID_XXXX&REV_XXXX\SSSS независимо от хаба и номера USB порта. Устройство с PL-2303 не имеет серийного номера и его идентификатор в общем случае Device instance ID = USB\VID_XXXX&PID_XXXX&REV_XXXX\HUBID&PORTN где HUBID - идентификатор хаба и PORTN - номер USB порта, к которому подключено это устройство. Т.е. идентификатор устройства с PL-2303 зависит от порта, к которому оно подключается. Изменено 5 августа, 2006 пользователем Седой Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
TED17 0 5 августа, 2006 Опубликовано 5 августа, 2006 (изменено) · Жалоба По правилам Windows каждое Plug and Play устройство должно иметь уникальный строковый Устройство с PL-2303 не имеет серийного номера и его идентификатор в общем случае Device instance ID = USB\VID_XXXX&PID_XXXX&REV_XXXX\HUBID&PORTN где HUBID - идентификатор хаба и PORTN - номер USB порта, к которому подключено это устройство. Т.е. идентификатор устройства с PL-2303 зависит от порта, к которому оно подключается. Можно ли программно изменить N COM порта после подключения прибора на заранее заданный? Изменено 5 августа, 2006 пользователем TED17 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Седой 0 6 августа, 2006 Опубликовано 6 августа, 2006 · Жалоба Можно, если знать где он прописан в реестре. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Adlex 0 6 августа, 2006 Опубликовано 6 августа, 2006 · Жалоба Или в диспетчере устройств-порты СОМ-свойства-параметры порта-дополнительно. При этом в Вашей прикладной программе должно быть обращение именно к этому СОМ порту Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KRS 0 7 августа, 2006 Опубликовано 7 августа, 2006 · Жалоба Можно, если знать где он прописан в реестре. Поиском найти в ветке HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum а здесь HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\COM Name Arbiter в ComDB хранится 256 битная маска использованных COM портов в ней надо не забывать сбрасывать биты. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Andy Great 0 7 августа, 2006 Опубликовано 7 августа, 2006 · Жалоба Т.е. идентификатор устройства с PL-2303 зависит от порта, к которому оно подключается. И победить это нельзя? А то при перевключении конвертора RS485 I-7561 просит за каждым разом указать драйвер :( Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться