Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Помогите разобраться с СР2102, пожалуйста!
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > RS232/LPT/USB/PCMCIA/FireWire
Sergey_vn
Выручите кто чем сможет smile.gif
Сделал прибор с СР2102 для связи с компом, к одному компьютеру подключилось без проблем и работает на ура, на нем все и отлаживал.
Но к другим компам (3 шт. перепробовал) - сплошные глюки, и дрова разные ставил, и сносил, и пре-инсталлер запускал как положено. Бывает поставиться нормально в какой-то раз, но работает некорректно, данные врет. А если потом по новой переткнуть - опять то "неизвестное устройство", то "запуск устройства невозможен".
В форумах читал что глючно иногда ставиться, но чтоб настолько.. help.gif
Сергей Борщ
Цитата(Sergey_vn @ Apr 16 2007, 13:54) *
В форумах читал что глючно иногда ставиться, но чтоб настолько.. help.gif
Ищите проблему в железе - пользую их постоянно, всегда работают. В каком режиме используете (bus-powered, self-powered)? Неплохо бы схему привести и кусок разводки с этой микросхемой.
Sergey_vn
Цитата(Сергей Борщ @ Apr 16 2007, 16:14) *
Ищите проблему в железе - пользую их постоянно, всегда работают. В каком режиме используете (bus-powered, self-powered)? Неплохо бы схему привести и кусок разводки с этой микросхемой.


Микросхема в bus-powered. Привожу кусок схемы и печатки сверху. Еще интересный момент - если все устройство не запитано (контроллер - АРМ, питание внешнее), то если драйвер установился, можно втыкать и вытыкать, определяется нормально, но стоит подать питание на остальную часть схемы, переткнуть usb - опять начинаются глюки...
rezident
Я не большой знаток трассировки USB, но по-моему у вас земля не разделена на "грязную" и "чистую". Из-за этого выравнивание потенциалов при подсоединении может вводить CP2102 в ступор. Корпус USB-разъема рекомендуется соединять с землей через R||C. Типичные номиналы 1МОм и 0,01мкФ.
P.S. Ой! пардон! На схеме это есть оказывается.
TriD
На фрагменте ПП я так и не увидел защитного диода для D+ (вывод 4 CP2102). Полагаю, он у вас находится левее USB-шного разъема. Так разводить НЕЛЬЗЯ! Проверить очень просто: надо перерезать дорожку к этому защитному диоду и все заработает как надо. Эти диоды должны быть разведены подобно тому, как это сделано у вас для D-. Никаких ответвлений в сторону быть не должно!
Сергей Борщ
Цитата(Sergey_vn @ Apr 17 2007, 05:29) *
но стоит подать питание на остальную часть схемы, переткнуть usb - опять начинаются глюки...
Разводка красивая. В схеме резисторы на 9, 11 ногах не нужны. Я тоже использую bus-powered, но у меня питание на остальную часть схемы подается через полевик с цепочкой плавного включения (схему подсмотрел в даташите на FT232R), а в самой CP2103 при помощи утилиты конфигурации прописано потребление устройства 500мА (устройство потребляет 300мА). CP2103 открывает полевик после того, как договорится с компьютером о питании. CP2102 использовал по точно такой же как у вас схеме, но остальная часть потребляла не более 10мА.

Кстати, какая суммарная емкость у вас получается по питанию в "глючащем" варианте? Заряд этой емкости не может просаживать питание совсем?
Sergey_vn
Цитата(TriD @ Apr 17 2007, 09:53) *
Проверить очень просто: надо перерезать дорожку к этому защитному диоду и все заработает как надо. Эти диоды должны быть разведены подобно тому, как это сделано у вас для D-. Никаких ответвлений в сторону быть не должно!

Да, в нижнем слое платы. Перерезал, прямо от разъема - не помогло sad.gif

Цитата(Сергей Борщ @ Apr 17 2007, 10:15) *
Кстати, какая суммарная емкость у вас получается по питанию в "глючащем" варианте? Заряд этой емкости не может просаживать питание совсем?


Нет, дело в том, что я питание от USB не использую, прибор в большинстве случаев работает сам по себе (от розетки ил батареек), а к компьютеру подключается только когда даные надо скинуть. Та цепочка, которая в схеме дает питание от USB, реально не используется, сделал так, на всякий случай...
Сергей Борщ
Цитата(Sergey_vn @ Apr 17 2007, 10:48) *
Нет, дело в том, что я питание от USB не использую, прибор в большинстве случаев работает сам по себе (от розетки ил батареек), а к компьютеру подключается только когда даные надо скинуть.
Так значит у вас self-powered устройство. Вам надо +3.3 или +5в (сколько есть) из схемы подать на 7 (REGIN) ножку (если 5в) или на 7 и 6(Vdd) ножки (если 3.3в). А первую ногу USB-разъема подключить только к 8 (Vbus) ножке. В общем рис.8 или 9 из даташита. А вы сделали по рис.7. Не удивительно, что не работает. Причем понятно почему - когда вы включаете остальную часть схемы, на 25 ножку CP2102 поступает уровень лог. единицы, который при отсутствии питания ставит микросхему "раком".
Sergey_vn
Цитата(Сергей Борщ @ Apr 17 2007, 12:07) *
Так значит у вас self-powered устройство. Вам надо +3.3 или +5в (сколько есть) из схемы подать на 7 (REGIN) ножку (если 5в) или на 7 и 6(Vdd) ножки (если 3.3в). А первую ногу USB-разъема подключить только к 8 (Vbus) ножке. В общем рис.8 или 9 из даташита. А вы сделали по рис.7. Не удивительно, что не работает. Причем понятно почему - когда вы включаете остальную часть схемы, на 25 ножку CP2102 поступает уровень лог. единицы, который при отсутствии питания ставит микросхему "раком".


Спасибо, видимо так. Придется перепаивать микросхему - дорожки под ней, попробую...
Не ясно только, почему с одним компом все равно работает, а с другими нет..
Сергей Борщ
Цитата(Sergey_vn @ Apr 17 2007, 11:37) *
Спасибо, видимо так. Придется перепаивать микросхему - дорожки под ней, попробую...
Сообщите, что получилось.
Цитата(Sergey_vn @ Apr 17 2007, 11:37) *
Не ясно только, почему с одним компом все равно работает, а с другими нет..
Ну, если бы правильно собранная схема то работала то нет - были бы причны удивлятся. А так - имеет право. Зависит от чего угодно, вплоть до разводки питания на разных матерях. Может в одной матери стоит контроллер питания USB а в другой нет. Или чипсеты разные. Или магнитное поле Земли. Или положение звезд...
Serg_el
Столкнулся с похожем поведением микросхемы - на одном компьютере работает нормально, а на другом не работает вообще. Причину понял. Потребление устройства 300 мА - больше допустимого на старте. На том компе, где работает, видимо не контроля потребления (или чего-то подобного) - старая машина. А вот на новой все это есть. Причем на новой устройство определяется нормально, но отправляется только один пакет, далее блокируется связь, но устройство для операционной системы работает без проблем. С помощью утилиты CP210xSetIDs меняю значение потребления на максимальный 0xFA, что соответствует 500 мА, но проблема осталась. Причем вначале подключаю устройство без полной нагрузки и оно нормально работает, потом при горячем подключении нагрузки - отказ после 1го пакета. Может кто сталкивался?
Serg_el
Разобрался! Причина оказалась в драйверах. У меня на старой машине стояли драйвера, скаченные с сайта Silabs несколько месяцев назад. На них все прекрасно работает, даже не надо изменять ток потребления (прошито в чипе 100 мА, а у меня реально потребляет 300 мА). А вот со свежими дровами с сайта производителя были сбои.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.