|
|
  |
CP2102 - проблема, виснет на приеме. |
|
|
|
Dec 1 2007, 11:09
|
Местный
  
Группа: Свой
Сообщений: 234
Регистрация: 30-03-07
Из: Одесса
Пользователь №: 26 621

|
Возникла такая засада. СР2102 висит в качестве виртуального кома в Видоуз ХР СП2. С ней работает гипертерминал. СРшка используется в качестве пиявки для просмотра ответов модема, которым управляет МК. Все исходящие линии с этого кома. есс-но отключены. Порт настроен на 115200, 8+1бит, без контроля четности и без управления приемом-передачей. Возникает проблема периодически прием данных зависает, точнее занные застревают либо в СРшке, либо в Виндозе, т.е. по кому данные проходят, а в гипертерминале они останавливаются на середине. Если потом по кому проходит еще один байт, все зависшие данные с этим новым байтом появляются в гипертерминале. Что это, и как с этим можно бороться?
|
|
|
|
|
Dec 1 2007, 14:52
|
Местный
  
Группа: Свой
Сообщений: 234
Регистрация: 30-03-07
Из: Одесса
Пользователь №: 26 621

|
Цитата(rezident @ Dec 1 2007, 17:24)  ИМХО нужно сигналы handshake использовать или законнектить их промеж себя как в нульмодемном кабеле. RTS -> CTS DSR -> DTR, DCD Мимо. handshake отключен в настройках соединения во-первых, во-вторых CTS, DSR, DCD подключены к соответствующим линиям модема. Состояние уровней адекватное.
|
|
|
|
|
Dec 1 2007, 17:54
|
Местный
  
Группа: Свой
Сообщений: 234
Регистрация: 30-03-07
Из: Одесса
Пользователь №: 26 621

|
Цитата(SSerge @ Dec 1 2007, 20:05)  Вообще-то гипертерминал такие фокусы умеет и сам проделывать, без USB, на настоящем, железном COM. Преверьте на каком-нибудь другом эмуляторе терминала. А есть на примете чего нить поприятнее?
|
|
|
|
|
Jul 14 2008, 07:46
|
Участник

Группа: Участник
Сообщений: 31
Регистрация: 20-12-07
Пользователь №: 33 465

|
Борюсь неделю, точно такая же проблема. СР2102 в устройстве, использую только RXD и TXD. Отлаживаюсь в Docklight, протокол бинарный, виснет зараза причем не зависимо от длины пакетов, помогает только вытащить/вставить USB шнур. Пробовал и на других терминалах, проблема остается. Драйвера последние с сайта SiLabs. Что с чипом? Может кто то поборол проблему? Спасибо.
|
|
|
|
|
Jul 14 2008, 11:33
|
Участник

Группа: Участник
Сообщений: 31
Регистрация: 20-12-07
Пользователь №: 33 465

|
Цитата(zltigo @ Jul 14 2008, 13:46)   Silabs драйвера с сайта не раздает.... Как Это не раздаёт? А ЭТО ЧТО? https://www.silabs.com/products/mcu/Pages/U...VCPDrivers.aspxК стати с проблемой разобрался. Дело было в супрессорах в цепи USB. Снял, заработало. Найду подходящие по характеристикам, потом поставлю.
|
|
|
|
|
Jul 15 2008, 19:07
|
Участник

Группа: Новичок
Сообщений: 29
Регистрация: 2-02-05
Пользователь №: 2 372

|
CP210x действительно иногда виснет. По-моему виснет из-за помехи на линии D+ D-. Виснет чаще когда com port не захвачен. Обратие внимание на ножку suspend. cp210x VCP не поддерживает USB suspend-resume. Вывести ее из этого состояния можно перезагрузив vcp драйвер используя функции PNP SetupDi......, или написав свой filter driver для отправки URB (IRP) своих запросов устройству на уровне драйвера.
|
|
|
|
|
Jul 16 2008, 06:06
|
Участник

Группа: Новичок
Сообщений: 29
Регистрация: 2-02-05
Пользователь №: 2 372

|
Хочу уточнить: сама микросхема работает корректно, просто VCP драйвер мониторит не все состояния cp210x. Createfile выдает ошибку 0x001F (устройство подключено, но не функционирует). С usbexpress такая-же ерунда.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|