Андрей Смирнов
Время чтения: ~13 мин.
Просмотров: 0

Ch340g — преобразователь usb — uart

Обзор программатора

В коробке присутствовал гарантийный талон от производителя, что вселяло уверенность, что изделие, не голимая китайщина, произведенная в подвале, а более менее качественная вещь. На программаторе с одной стороны расположены разъем USB, с другой стороны находился разъем ICSP, внутрисхемного программирования. Индикация включения и прошивания, была выполнена на двух светодиодах разного цвета.

Индикация программатора LED

Микросхемы для прошивания вставляются в ставшую сейчас стандартом, даже для дешевых программаторов, ZIF панельку. Были небольшие опасения при заказе, что почта России с ее халатными сотрудниками может помять упаковку, или даже повредить сам программатор при доставке, но все пришло внешне в идеале и было хорошо упаковано китайским продавцом.

Клипса для прошивания so-8

Мною ранее были приобретены для работы с программатором СН341А специальная клипса для прошивания микросхем в корпусе SO-8, без выпаивания, а также два переходника, которые выпускаются с разной шириной микросхем в разных корпусах — 150mil и 200mil.

Адаптеры для прошивания МК SO-8

Они полностью совместимы, разумеется, и с этим программатором. На скринах ниже, представлен интерфейс программы — оболочки, при старте программы, при режиме программирования микросхем, и при установке конфигурационных битов AVR МК.

Оболочка внешний вид

Программатор поддерживает все стандартные операции, с возможностью пакетного выполнения, задаваемых пользователем, например считать — стереть — записать — сверить. Модели нужной микросхемы нужно выбирать в списке вручную, исключение составляет Flash память, 25 серия, она может определяться автоматически. При открывании меню Chip Program мы видим рисунок с расположением нашей микросхемы относительно ZIF панельки.

Программировать микросхему в Чип Програм

Также в оболочке, в отличие от других моделей дешевых программаторов, можно создавать проекты для прошивания, что это такое, я пока не разбирался, но есть предположение, что это набор из прошивки и битов конфигурации. Программатор поддерживает мультипрошивание или иначе говоря поточную прошивку, что может быть полезным, например, при массовом производстве устройств содержащих Flash память или микроконтроллеры.

Выбор микросхемы из списка

Также, если не ошибаюсь, бинарный код прошивки можно править прямо в оболочке, так как в меню есть опции редактирования. Программатор имеет в комплекте кабель для внутрисхемного программирования микросхем.

Установка фьюзов AVR МК

При первом включении программатора и вновь установленной оболочки появится менюшка, предлагающая обновить внутреннюю прошивку МК программатора, в связи с чем если следовать логике, расширится количество поддерживаемых моделей микросхем, что я и сделал.

Кабель для внутрисхемного программирования

Программатор позволяет прошивать память различной техники содержащей в своем составе микросхемы BIOS — это материнские платы и видеокарты, роутеры и ноутбуки, цифровые приставки и спутниковые ресиверы, дешевые модели ЖК ТВ и мониторов, в общем практически любое цифровое устройство которое шьется не через USB кабель.

ЮСБ вход прогера

Прошивает программатор довольно быстро, у меня было с чем сравнивать. Например прошивание 4 мегабайт или 32 мегабит микросхемы BIOS, последовательной памяти на цифровой приставке программатором CH341A, вместе с чтением старой прошивки и верификацией, занимает где-то около часа.

Гнездо внутрисхемного программирования

Покупка данного программатора оправдана если вы планируете регулярно заниматься ремонтами электроники. Если же вам необходимо разово прошить BIOS, либо микроконтроллер, целесообразнее приобрести перечисленные в начале статьи намного более дешевые программаторы. В целом покупкой остался доволен и думаю, что мог бы рекомендовать данный программатор к приобретению другим радиолюбителям. Всем удачных ремонтов — AKV.
 
   Форум по микроконтроллерам

   Обсудить статью УНИВЕРСАЛЬНЫЙ ПРОГРАММАТОР MINIPRO TL866A

USB/UART конвертер на CH340G с DTR

17 Окт 2016

USB/UART конвертеры, такие маленькие платки подключаемые к USB, повсеместно используются радиолюбителями для программирования микроконтроллеров, подключения различных устройств, модемов, модулей, всего, в описании чего есть слова SERIAL или UART.

Я уже писал статью про подобную плату с CP2102. Но периодически эти платки сгорают или теряются или просто оседают в недрах очередной поделки. И заказывая очередную партию плат Arduino Pro Mini, до кучи взял USB/UART на CH340 за $1.4. Данная плата меня заинтересовала тем, что имеет вывод DTR, который я раньше видел только на платах с CH2103. А это значит, что Arduino Pro Mini можно программировать без мучительных нажатий на кнопку RESET.

CH340 от китайской компании WCH отличаются дешевизной. Их ставят как в отдельные модули, так в китайские клоны Arduino, отладочные платы ESP8266. Даташит на CH340.

Ну что, ж, посмотрим что же я купил. В прозрачном пакетике сам модуль и соединительный провод на 5 проводов.

На плате, кроме «GND», «VCC», «TX» и «RX» есть еще «DTR» и «CTS». У последнего, «пина приветсвия» я так и не понял назначение, так как сигнала на нем нет никакого (Может кто посветит, зачем он здесь?».

На плате имеется переключатель питания 5В (напрямую с USB) и 3.3 с маломощного стабилизатора (заявлено 120мА)
и кнопка, при нажатии на которую происходит отключения питания на VCC/. Этой кнопкой можно передергивать устройства, у которых отсутствует RESET.
Из за дополнительных кнопок плата немного больше чем другие аналогичные модули

К сожалению, переключатель 5/3.3В работает только на VCC и не переключает TTL уровень UART интерфейса. Большинство устройств с 3-х вольтовым питанием толерантно к уровням 5В, но если такое не заявлено, нужно будет использовать преобразователь логических уровней или самодельную опторазвязку.

Напряжение VCC при разных положения переключателя

Подключаю Arduino Pro Mini и без проблем программирую его без всяких нажатий на RESET

В моей Windows 7 64 бит драйвера на CH340 уже были. Не удивительно, учитывая сколько устройств к нему уж подключалось.

LINUX из моей «апельсинки» определил эти платки «из коробки»

Логический анализатор, подключенный в параллель TX, RX и DTR показывает работу последнего

А вот с модулем ESP8266 без внешнего питания ничего не вышло. ESP-шка просадила маломощный стабилизатор до 1.6В и работать отказалась

Итог

Вполне рабочее устройство, выполняющее свои функции. Хотя CP2102 мне понравился больше при более низкой стоимости.

Плюсы модуля:

  • Небольшая цена
  • Хороший функционал (DTR, переключатель 3.3/5, кнопка отключения VCC)
  • Распространенность драйверов на него

Минусы:

  • Не переключается уровень TTL 3.3/5В
  • Маломощный стабилизатор на 3.3В, не способный питать тот же ESP8266
  • Меньший функционал чем у CP2102 (нет возможности настройки VID/PID, например)
  • Теряются они )))

Posted in Arduino, Покупка на ALIEXPRESS.COM | Метки: CH340, USB/TTL

3. Доработка модуля UART до полноценного RS232TTL

 Вывод  Назначение 
2выход TXD
3вход RXD
9вход CTS
10вход DSR
11вход RI
12вход DCD
13выход DTR
14выход RTS


Таб. 1. Нумерация выводовмикросхемы CH340Gс сигналами RS232

В общем-то, вся доработка заключалась только в том, чтобы подпаяться к соответствующим ножкам микросхемы. Для этого предварительно потребовалось прорезать окно в термоусадочной оболочке. Соответствие выводов микросхемы CH340G и сигналов RS232 смотрите в таблице Таб.1.

Как видно из таблицы, все сигналы, кроме TXD и RXD находятся на одной стороне микросхемы, но TXD и RXD уже выведены на разъём, поэтому паять дополнительные провода потребовалось лишь с одной стороны.

Чипы CH340g, FTDI FT232, ATMEGA 16U2 / 8U2

Зачем нужен USB / UART TTL преобразователь

Когда вы подключаете Ардуино к компьютеру или любому другому устройству по USB, вы связываете между собой сразу два мира: микропроцессорный, сосредоточенный на плате Arduino и мир внешних устройств. Подходы к организации взаимодействия между элементами в этих мирах сильно отличаются. Для работы внутри платы используется особый протокол со своими правилами взаимодействия – UART. И для того, чтобы “внутреннюю” линию соединить с “внешней” нужен определенный преобразователь-посредник, который будет хорошо понимать физические сигналы, используемые как для USB, так и для платы контроллера. Вот этим посредником и являются чипы USB- UART (иногда их еще обозначают называют USB-TTL, хотя это не совсем корректно) преобразователей, самыми популярными из которых являются микросхемы FTDI, CH340G,  ATMEGA U16.

USB преобразователи в Ардуино

Мы должны использовать внешние чипы, потому что контроллер ATMEGA328, являющийся сердцем большинства современных плат Arduino, не содержит в своих кристаллических внутренностях встроенного преобразователя. Если вы посмотрите на плату ардуино, то увидите корпус чипа, на нем можно разобрать и его тип.

Исторически наиболее популярным вариантом чипов USB/UART конвертера была линейка микросхем от шотландского производителя  FTDI. Главным ее недостатком была стоимость и весьма странная политика в области контроля контрафакта, зачастую приводящая к тому, что легальные купленные устройства блокировались драйверами компании. Сегодня существенную конкуренцию FTDI составляют микросхемы семейства CH340, массово производимые многочисленными китайскими производителями. Они гораздо дешевле и достаточно надежны и это постепенно привело к тому, что в большинстве недорогих контроллеров Arduino и адаптеров установлены именно чипы CH340 (CH340g).

Наверное, единственной, но очень важной проблемой при использовании CH340g взамен FTDI является необходимость в некоторых случаях установки USB драйвера. “Респектабельная” FTDI давно уже тесно интегрирована в Windows и при подключении устройства с FTDI-преобразователем никаких драйвером устанавливать не нужно – они уже есть в системе

Для подключения CH340g иногда нужно скачать драйвер и установить его – только после этого система увидит наше устройство.

Процедура установки драйвера для CH340g на самом деле очень проста и почти всегда проходит без ошибок на самых популярных операционных системах Windows7, Windows10. Именно поэтому никаких проблем с использованием недорогих ардуино плат, несущих на себе чип CH340, почти никогда не возникает.

Остается только вопрос – а зачем вообще нужен какой-то USB драйвер для подключения ардуино  к компьютеру? Давайте разберемся.

USB драйвер для ардуино

Мы не будем уходить в теоретические дебри, разбирая многочисленные коммуникационные протоколы, поддерживаемые современными компьютерными системами. Главное, что нужно понимать: когда мы присоединяем какое-то устройство к компьютеру, оно может передавать или получать данные только если его “поймут” с другой стороны. На стороне компьютера таким переводчиком является специальная программа, называемая драйвером. Драйвер USB работает в режиме эмуляции последовательного, COM-порта. Это означает, что при подключении операционная система создает виртуальные, программные COM-порты, с которыми и работает драйвер. В Windows их можно посмотреть в диспетчере устройств.

Если мы подключаем Ардуино к компьютеру, то чип с помощью драйвера попросит систему открыть порт и начнет взаимодействие . И для чипов разных  производителей потребуются разные драйвера. Проблемы возникают, когда драйвера нет. Система пытается найти его для подключенного устройства, не находит и мы никогда не  увидим его в списке устройств. Для решения проблемы надо найти и скачать соответствующие драйвера, а затем установить их на компьютер. Ниже мы рассмотрим, как это делается на примере USB драйвера CH340.

CH340G

Микросхема CH340G — преобразователь интерфейсов USB — UART, выпускаемая китайской компанией WCH появилась на рынке сравнительно недавно,
и очень быстро обрела широкую популярность. Из основных причин этого можно выделить:

  • низкую стоимость
  • хорошую поддержку основными операционными системами — Linux, Windows (XP, 7, 8, 10) и Mac OS X
  • работа с уровнями 3.3В и 5.0В
  • микросхема требует минимум дополнительных компонентов и имеет удобный для пайки корпус SOIC-16

В частности, эти преобразователи широко используются в китайских клонах ардуино.

CH340G создаёт виртуальный последовательный порт, эмулирующий все функции реального COM-порта (с полным контролем сигналов управления передачей
данных — RTS, DTR, DCD, RI, DSR и CTS).

Микросхема поддерживает спецификацию USB 2.0. Скорость обмена по UART может быть в диапазоне от 50 бит/сек, до 2 Мбит/сек.
Аппаратная часть поддерживает последовательный дуплексный интерфейс с внутренним буфером FIFO.

1. Что такое TTL и при чём тут USB ?

Как-то на «Али» привлёк моё внимание очень недорогой конвертер USB-UART. Сначала я был не вполне уверен, что это за штука на самом деле

Название товара на английском выглядело так: «USB to TTL converter UART module CH340G CH340 3.3V 5V switch». Упоминание UART и микросхемы CH340G, вроде, рассеивало сомнения, но не нравилась фраза «USB to TTL», которая была видна также и на фотографии модуля, на его нижней стороне. Дело в том, что эта фраза не имеет смысла, а значит, открывает широкий простор для вольного толкования.

По идее в переводе на русский язык фраза «USB to TTL» должна означать «преобразование USB в TTL». Объяснять, что такое USB, сейчас никому не надо, а вот про TTL слышали не многие. Поэтому давайте обратимся к истории, и посмотрим, что такое TTL.

Интересно, что и Гугл и Яндекс на запрос «Что такое TTL» выдали ссылки про TTL из совсем другой области. Так что же это такое, применительно к электронике? Аббревиатура TTL на русском языке не отличается от англоязычного варианта и расшифровывается, как транзисторно-транзисторная логика (ТТЛ). Изначально это понятие подразумевало особенности внутреннего строения некоторых цифровых микросхем, совокупность технических решений, включая схемотехнические и технологические. Кроме всего прочего, стандарт ТТЛ задавал и способ кодирования логических сигналов. Так, например, логический ноль кодировался напряжением, близким общему проводу питания. Причём общий провод подключался к минусу источника питания и принимался за нулевой потенциал — «земля». А логическая единица кодировалась напряжением, близким напряжению питания +5В. Само напряжение питания +5В тоже стало неотъемлемой частью стандарта ТТЛ.

Надо отметить, что микросхемы ТТЛ в своё время получили очень широкое распространение. В Советском Союзе, пожалуй, наиболее известной была серия К155. Широкое применение этих и им подобных микросхем заставило разработчиков аппаратуры в целях совместимости придерживаться тех же способов кодирования сигналов логического нуля и логической единицы, которые предусматривались стандартом ТТЛ.

Но ничего не стоит на месте. Микросхемы ТТЛ, построенные на биполярных транзисторах, вскоре стали устаревать. Они сильно проигрывали более современным микросхемам как по быстродействию, так и по потреблению энергии. Им на замену стали приходить другие семейства микросхем, основанные на МДП-структурах (металл-диэлектрик-полупроводник), а по-простому — на полевых транзисторах. Но стандарт кодирования сигналов устаревать не собирался, поэтому многие новые микросхемы, даже не имея прямого отношения к ТТЛ, сохраняли совместимость с ТТЛ. Сами же микросхемы ТТЛ постепенно стали частью истории (хотя в любительских конструкциях применяются по сей день), а их общее название — аббревиатура ТТЛ — обрело несколько иной смысл. Теперь ТТЛ следует толковать как «стандарт уровней напряжения для кодирования логических нуля и единицы, применявшийся в микросхемах ТТЛ».

И что же, с учётом вышесказанного, могут означать слова «USB to TTL»? Думаю, теперь понятно, почему эта фраза не имеет смысла.

2. Конвертер интерфейса на микросхеме CH340G

Данное изделие я в итоге заказал. Обошлось оно мне с пересылкой в 44,30 руб., то есть почти даром. Но это не тот случай, когда дёшево — значит плохо. При подключении он сразу определился в системе (Windows 8.1). Никаких проблем с драйверами не возникло. Ранее я уже подключал другой конвертер на CH340 (тот в виде шнура-переходника USB-COM), поэтому драйвер уже стоял. Надо сказать, что и в прошлый раз не было нужды искать драйвер и ставить его вручную — всё получилось в автоматическом режиме. Теперь же ранее установленный драйвер сразу признал новое устройство.

Добавлю, что модуль имеет три светодиода (все красные), один из которых сигнализирует о подаче питающего напряжения от USB, а два других отображают состояние сигналов TXD и RXD (загораясь при логическом нуле, то есть при низком напряжении относительно GND).

Как изменить настройки оповещений семейного календаря

По умолчанию вы будете получать от семейного календаря такие же уведомления о предстоящих мероприятиях, как и в случае с другими календарями. Но вы не сможете узнавать о том, что член семьи создает, изменяет или удаляет мероприятие.

Чтобы настроить оповещения, выполните следующие действия:

  1. Откройте Google Календарь.
  2. В левой части страницы найдите раздел «Мои календари».
  3. Наведите указатель на семейный календарь и нажмите на значок .
  4. Выберите Настройки.
  5. Задайте нужные настройки. Изменения сохраняются автоматически.

Общие сведения

CH341A Programment, это программатор начального уровня, изготовлена на черном стеклотекстолите (существует вариант на зеленом текстолите) с серебристой окантовкой. В комплект входит зеленая печатная плата и два штыревых разъема 1х4 (шаг 2.54 мм), данный комплект, позволит прошивать микросхемы SMD исполнении, очень удобно, если необходимо прошить пару микросхем, но если планируете использовать программатор постоянно, советую приобрести, так называемые ZIF переходники на 150 mil и 200 mil, позволяющие устанавливать SMD микросхемы без пайки.

На верхней части программатора, установлена микросхема CH341А, рядом располагается кварцевый резонатор на 12 МГц, стабилизатор напряжения AMS1117-3.3 который выдает 3.3В, а так же электрическая обвязка всех этих компонентов (резисторы, конденсатора). Для программирования микросхем, установлена 16 контактная DIP панель с нулевым усилием с маркировкой TFXTDOL. С двух стороны DIP панели, располагается две группы дополнительных контактов, назначение каждого можно посмотреть на обратной стороне платы.

На другой стороне платы, дополнительно добавлено место для установки SMD микросхем (150 mil и 200 mil) и нарисована шёлкография.

Назначение группы контактов 1: ► 1,2,3 – выбор режима работы (1-2 режим Paralell (внутренней) и 2-3 режим Serial (внешней) ► TX – передаваемые данные ► RX – принимаемые данные ► GND – питание земля ► 5V – питание +5 В

Назначение группы контактов 2: ► CLK – линия тактирования (Serial CLock) ► CS – режим работы ► MOSI – прием данных ► MISO – передача данных ► GND – питание земля ► 3.3V – питание +3.3 В ► 5V – питание +5 В

Рейтинг автора
5
Материал подготовил
Максим Иванов
Наш эксперт
Написано статей
129
Ссылка на основную публикацию
Похожие публикации