Обзор конвертера USB - UART TTL на CP2102
Чем он отличается от других подобных устройств
Дополнительным выводом DTR, который можно напрямую подключить к входу RESET на контроллерах не имеющих USB на плате. После этого при программировании давить кнопку RESET не нужно. Для меня это очень удобно, когда контроллер спрятан недрах моей поделки и доступ к кнопке бывает очень затруднительным.
Поддержкой производителя, совместимостью с оригинальными драйверами и ПО, в отличие от поддельных FTDI, у которых
Дополнительными выводами (дырками под контакты) на плате, например, позволяющими уводить USB в энергосберегающий режим.
Интересной возможностью менять VID, PID и текст, с которым опознается плата, собирать свой драйвер со требуемыми параметрами, что довольно интересно в коммерческих проектах. Об этом я расскажу дальше.
Тех, кого заинтересовал, пожалуйста под кат
Заказал я на премию за обзор много всякой мелочевки у на Ebay и в том числе за $1.79
Товар ехал целых 54 дня. Ну к нашей почте я уже привык, чего не скажешь о курсе доллара к рублю (((
Обычный желтый пакет. Внутри платки в запаянных прозрачных пакетиках. Все как обычно.
На плате есть дополнительные отверстия, куда можно впаять выводы дополнительного модемного контроля и перевода USB в режим SUSPENDED
Перед использованием платы необходимо установить
Для соединения к контроллеру нужны 5 проводов:
GND - GMD
VCC - V5.0 (V3.3) в зависимости от используемой платы
TX - RX
RX - TX
RESET контроллера - DTE
Теперь контроллер можно программировать не нажимая кнопку RESET.
Плата опознается в системе как
Silicon Labs CP210X USB to UART Bridge (COM35)
Иногда в коммерческих проектах необходимо, чтобы устройство при программирование имело свое коммерческое название. Чип CP2102 и плата на нем дают большие возможности для этого
Для начала скачиваем и запускаем "> (мне для запуска утилиты потребовалось еще скачать Java Runtime)
Теперь можно изменить следующие параметры:
И после нехитрого мастера-диалога получаем дистрибутив драйверов с требуемым набором VID и PID и желаемым названием в системе
Интерфейс UART поддерживается практически всеми микроконтроллерами и весьма удобен при разработке и отладке всяческих МК-девайсов: и прошивку через загрузчик залить, и дебаговые логи устройства на компьютере просмотреть. Но, увы, в современных компьютерах COM-порт постепенно исчезает из числа доступных интерфейсов, будучи вытесненным шиной USB, а в ноутбуках и подавно отсутствует. Это и заставило озадачиться вопросом изготовления переходника USB -> COM. Обычно, такие переходники делают на основе популярной микросхемы серии FT232, но есть у нее пара недостатков: 1) стоимость микросхемы ~150 рублей 2) микроскопические размеры со всеми вытекающими отсюда сложностями пайки и изготовления печатной платы.
В качестве альтернативы FT232 обнаружилась менее известная CP2102, стоящая раза в два дешевле, и имеющая раза в два меньшие размеры да еще и корпус QFN-28 (5мм х 5мм). Эта микросхема представляет собой полностью готовый USB-UART-преобразователь не требующий никакой внешней обвязки (пара фильтрующих конденсаторов на шину питания не в счет) и обладающий следующими возможностями:
Схема адаптера взята из даташита, опциональная периферия была выброшена и добавлен светодиод для индикации наличия питания.
Вилка DB9 распаяна аналогично выходу COM-порта компьютера, вот его распайка (направление сигналов указано относительно компьютера).
Основная проблема конструирования переходника - проблема печатной платы и монтажа QFN-28 была решена приклеиванием микросхемы вверх ногами к печатной плате и подпаивание ее выводов проводом ПЭВ 0.1мм. Несколько муторно, зато, миниатюрно. Вот, что в результате получилось:
И в корпусе от DB-9 все выглядит следующим образом:
Теперь, тщательно проверив монтаж, можно испытывать. Девайс обнаружился системой но драйверов windows найти не смогла. Их я скачал . После чего у меня в системе появился новый порт - COM5 в Windows и /dev/ttyUSB0 в Linux. Теперь, соединив RXD на TXD (2 и 3й выводы вилки переходника) и запустив любой COM-терминал, можно убедиться, что байты отсылаются.. и принимаются.. причем, последние совпадают с первыми..
Один важный момент: уровни сигналов на выходе переходника - ТТЛ и отличаются от уровней сигналов стандартного интерфейса RS232, поэтому, к переходнику нельзя подключить напрямую обычные устройства для COM-порта, более того, это может вывести из строя переходник. Для подключения стандартных COM-устройств необходимо добавить преобразователь уровней на микросхеме семейства MAX232.
Ниже можно скачать проект в Eagle, а также готовый рисунок печатной платы для лазерного утюга (для утюжки двусторонней печатной платы рекомендую печатать рисунок на кальке).
В продолжение к теме «Программатор AVR910», про маленькое устройство, хочу предоставить вашему вниманию следующий мой «девайс».
В одно время, начиная осваивать микроконтроллер, у меня возникла цель обмениваться, с помощью него, данными с компьютером.
В контроллере АТmega16 есть UART (RS-232) или проще говоря, СОМ порт, только с уровнями 5 Вольт.
Чтобы «свести» его с компьютером необходимо повысить эти уровни до 10 Вольт.
Эту операцию, в основном, делает микросхема MAX232.
Её можно использовать в случае, когда используется СОМ порт на компьютере (аппаратный).
Но я хотел использовать порт USB. Пошёл в магазин и купил простой дата кабель к сотовому телефону.
Как я думал, тогда все кабели одинаковые и пины в них задействованы RX и TX.
Я ошибался...
Кабели, попавшиеся мне, сделаны на микросхеме PL2303, которая не обеспечивает полный СОМ порт.
Из трёх купленных кабелей, попался один, который, что называется, работал «на ура».
Он основан на микросхеме CP-2102
. Это USB-RS232
адаптер.
Найдя в сети схему адаптера, основанного на этой микросхеме, я начал собирать устройство. Эта микросхема может программироваться под ваши данные (Производитель, серийный номер, название устройства, если вы хотите своё устройство связать с компьютером). Всё во вложенных файлах .
Схема его до безобразия проста.
Причём контроллер, можно сразу соединять, без переводов уровней (5-10 Вольт).
Исполнение, как всегда сверх миниатюрное.
Исключён фрагмент. Наш журнал существует на пожертвования читателей. Полный вариант этой статьи доступен только
--
Спасибо за внимание!
Прога для изготовления ваших собственных драйверов
▼
🕗 13/12/08 ⚖️ 238,88 Kb ⇣ 416
Здравствуй, читатель!
Меня зовут Игорь, мне 45, я сибиряк и заядлый электронщик-любитель.
Я придумал, создал и содержу этот замечательный сайт с 2006 года.
Уже более 10 лет наш журнал существует только на мои средства.
Хорош! Халява кончилась. Хочешь файлы и полезные статьи - помоги мне!
--
Спасибо за внимание!
Игорь Котов,
главный редактор журнала «Датагор»
Схема и печатка
▼
🕗 13/12/08 ⚖️ 41,22 Kb ⇣ 461
Программировать различные ардуино- и не адуино- образные контроллеры, получать информацию на компьютер со всего, что имеет последовательный интерфейс с TTL логикой.
Я в своих проектах использую его с Arduino Pro MIni , Gboard /Iboard и самодельными контроллерами .
На плате есть дополнительные отверстия, куда можно впаять выводы дополнительного модемного контроля и перевода USB в режим SUSPENDED
По размеру плата мало отличается от других подобных конвертеров USB/UART
Перед использованием платы необходимо установить драйвера с официального сайта Si-Labs
Теперь контроллер можно программировать не нажимая кнопку RESET.
Плата опознается в системе как Silicon Labs CP210X USB to UART Bridge (COM35)
Иногда в коммерческих проектах необходимо, чтобы устройство при программирование имело свое коммерческое название. Чип CP2102 и плата на нем дают большие возможности для этого
Для начала скачиваем и запускаем утилиту для конфигурирования параметров EEPROM CP1202 (мне для запуска утилиты потребовалось еще скачать Java Runtime)
Теперь можно изменить следующие параметры: