Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: данные по USB и Win7 глюк?
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
bvn123
микроконтроллер с USB-мостом (CP2102 в режиме USBXpress) работают под XP, Vista.

под Win7 у заказчика тесты проходят (запрос-передача массивов)
при работе приложения (написано в Delphi6) передается какой-то процент данных и приложение закрывается

пока посоветовал заказчику отключить другие USB-устройства, если есть,
и проверить питание USB (чем черт не шутит)

Может ли быть причина в Win7 и в чем она?
У меня ХР и Виста

Спасибо
kovigor
Цитата(bvn123 @ Oct 29 2011, 06:10) *
под Win7 у заказчика тесты проходят (запрос-передача массивов)
при работе приложения (написано в Delphi6) передается какой-то процент данных и приложение закрывается

...

Может ли быть причина в Win7 и в чем она?


Почти наверняка причина в самодельном приложении. Например, вы что-то с указателями намудрили, или пишете в динамический массив, предварительно не выделив ему память, или еще что-то такое делаете. А работоспособность под разными ОС - просто совпадение.
Br.Misha
А у него случайно не через хаб подключено? у меня такой же глюк был, когда я через хаб подключал.
bvn123
Цитата(Br.Misha @ Nov 10 2011, 01:31) *
А у него случайно не через хаб подключено? у меня такой же глюк был, когда я через хаб подключал.


ИС usb-uart моста подключается к usb-разъему ноутбука,

оказалось, что у заказчика ноутбук 64-битный с win7
получил ответ и ссылку по теме здесь:
http://www.delphikingdom.com/asp/answer.asp?IDAnswer=80310

пока не проверил следующую связку
32-бит приложение + 32бит dll + 64бит драйвер на 64-бит платформе
с заменой драйвера на последнюю версию, скачанную с сайта silabs.com

32-бит приложение + 32бит dll + драйвер, автоматически найденный и установленный win7 (с правильным именем в Диспетчере устройств) на 64-битном ноуте зависало

возможно, что-то действительно не так в моем приложении с вызовом из библиотеки функции считывания,
но в XP и Vista на 32-бит платформе приложение работает

сомнительные моменты моего перевода в дельфи silab-овского h-файла, в котором заголовки вызовов функций dll,
а также вызов функции считывания техподдержка silabs одобрила,
не освобождаемых или не резервируемых блоков памяти в приложении также не нашел

блок данных грузится в статический массив, затем добавляется в MemoryStream,
который создается при старте приложения,
перед каждым новым измерением очищается,
по завершении приложения освобождается

в этот же MemoryStream грузятся данные из ранее записанных файлов - по ним нормально строятся графики и на 64-битном компе
GDI
У меня ноутбук с Вин 7х64 бит, а так же есть прога писанная(не мною) на Дельфи для 32 бит, правда она работет просто с КОМ-портом, но используется переходник USB2COM. Уж не знаю, поможет или нет, но заметил такую особенность, переходник на PL2303 (за цифры не ручаюсь) с длинным шнуром работает плохо в плане что перестает принимать данные, но может передавать при этом, помогает перезапуск приложения, с переоткрытием порта, но ненадолго. Я связываю это с помехами или наводками на длинный шнур USB, причем не важно как он подключен, напрямую в бук или через хаб встроенный в монитор. Есть еще второй переходник на СР2102, выполненный так что вставляется прямо в USB, вот с ним такого пока не замечал, он у меня вставлен в хаб на мониторе.
В общем с VCP драйверами 32битные проги не падают на Вин7х64 даже если с портом проблема. И второе, проблемы с портом могут быть из-за наводок на длинные кабели USB.
bvn123
GDI, спасибо, интересно,
поищу самый короткий шнурок usb
у меня CP2102
все ли верно по связке для CP2102 на 64-бит РС:
32бит приложение, 32бит dll и 64бит драйвер?

dll - пользую USBXpress для СР2102
после зависания приложения на 64бит платформе подумываю о возврате к использованию CP2102 в режиме с организацией виртуального СОМ-порта
hd44780
Когда-то игрался с FT232BM (паял сам по схеме из ДШ).

Заметил глюки у неё (или у её драйвера) - когда какое-то время она не работает, куда-то пропадает. Причём в списке устройств продолжает значиться. Помогало только переподключение USB.
Когда данные гоняет всё ок. Тогда, помню, часа 2 гоняла данные - не вырубилась. Кабель копеечный из магазина.
Драйвер родной, VCP.

Энергосбережением и спячкой не балуюсь и всегда вырубаю эти прибабахи в винде. Винда - 2003 сервер.
GDI
Цитата(bvn123 @ Nov 10 2011, 12:47) *
все ли верно по связке для CP2102 на 64-бит РС:
32бит приложение, 32бит dll и 64бит драйвер?

Мне сложно сказать точно, т.к. не я разработчик приложения, но само приложение точно 32бита
Драйвер VCP Silabs ср210х v6.5.0.0, видимо 64бита, т.к. в свойствах драйвера присутствует текст amd64.
Программой никакая dll не используется , т.к. она работает, как бы, с обычным ком-портом.
bvn123
Цитата(hd44780 @ Nov 10 2011, 12:34) *
Когда-то игрался с FT232BM (паял сам по схеме из ДШ).

Заметил глюки у неё (или у её драйвера) - когда какое-то время она не работает, куда-то пропадает. Причём в списке устройств продолжает значиться. Помогало только переподключение USB.
Когда данные гоняет всё ок. Тогда, помню, часа 2 гоняла данные - не вырубилась. Кабель копеечный из магазина.
Драйвер родной, VCP.

Энергосбережением и спячкой не балуюсь и всегда вырубаю эти прибабахи в винде. Винда - 2003 сервер.


использовал ft232 один раз, перешел на СР210х, т.к. габариты меньше и кварц не нужен
в СР210х в режиме виртуального СОМ-порта тоже бывали произвольные отключения,
когда перешел на USBXpress, вычитал, что резистор на линию ~RST СР2102 весьма желателен, подумал, что возможно сбои были из-за того, что я его не ставил
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.