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

Небольшой обзор USB/UART конвертера на CH340G с DTR

Чипы FTDI, CH340, ATMEGA16U2 с драйверами позволяют плате Arduino и USB адаптерам подключаться к компьютеру и взаимодействовать с внешним окружением через Serial UART. С их помощью Ардуино может скачивать прошивку, загружать и отправлять данные, не заботясь о низкоуровневой поддержке последовательного соединения. В платах разных производителей могут использоваться различные чипы и драйвера.

В этой статье мы рассмотрим наиболее популярные микросхемы и узнаем, как скачать и установить соответствующие драйвера для нормальной работы Arduino Uno, Nano, Mega и другими платами.

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

chip-FTDI-300x242.jpgОбычно с чипами USB преобразователей и поиском драйверов сталкиваются в тот момент, когда возникает проблема подключения платы к компьютеру. Скорее всего,  вы тоже нашли эту статью, пытаясь заставить Arduino IDE взаимодействовать с китайской ардуинкой. Давайте разберемся, какую роль во взаимодействии с компьютером играет чип преобразователя и зачем устанавливать какие-то драйверы, чтобы все заработало.

Зачем нужен 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.

Установка драйвера для CH340

Китайские микросхемы CH340 используется довольно часто благодаря своей низкой стоимости и вполне приемлемому качеству.

В серию микросхем CH340 входят CH340T (мост USB – UART), CH340R (мост USB – IrDA) и CH340G (мост USB – UART). Последняя микросхема является наиболее распространенной и удобной с точки зрения корпуса с меньшим числом выводов.

Установка драйвера CH340

Если в вашей системе отсутствует драйвер, его можно легко установить. Процедура занимает 5 минут и практически никогда не вызывает проблем. Скачать драйвер для CH340 можно по этой ссылке.

Процесс установки драйвера разбивается на несколько шагов:

  • Загрузка драйвера.
  • Распаковка скачанного архива.
  • Найдите папку CH341ER.
  • Запуск исполнительного файла SETUP.EXE.
  • Нажать на кнопку Установить.
  • На этом установка драйвера на компьютер завершена.

Характеристики CH340

Микросхема обладает следующими характеристиками и возможностями:

  • Не нужно большое количество внешних компонентов, требуются только кварцевый резонатор и 4 конденсатора.
  • Создание виртуального последовательного порта.
  • Возможность применения всех приложений для COM-портов.
  • Работает с сигналами уровней 5 и 3,3В.
  • Выполнена в удобном корпусе SO-16 с малым количеством выводов и небольшим числом внешних компонентов.
  • Поддержка полной скорости спецификации USB0.
  • Наличие встроенного буфера типа FIFO.
  • Поддержка всех стандартных режимов передачи данных.
  • Поддержка симплексного, полудуплексного, дуплексного асинхронных режимов обмена.
  • Поддержка интерфейсов RS23, RS422, RS485.
  • Рабочие температуры лежат в диапазоне от -40С до 85 С.

Распиновка микросхемы CH340G представлена на рисунке.

raspinovka.png

На плате обозначены следующие контакты:

1 – Земля.

2 – TXD сигнал UART.

3 – RXD сигнал UART.

4 – напряжение питания.

5 – UD+ сигнал USB.

6 – UD- сигнал USB.

7 – XI вход для кварцевого резонатора и конденсатора.

8 – XO выход для кварцевого резонатора и конденсатора.

9 – CTS сигнал UART.

10 – DSR сигнал UART.

11 – RI сигнал UART.

12 – DCD сигнал UART.

13 – DTR сигнал UART.

14 – RTS сигнал UART.

15 – Включение инверсии входа RXD.

16 – Питание.

Микросхема эмулирует работу последовательного порта. Все приложения работают с конвертером интерфейса CH340G без изменения кода.

Чип FTDI для Arduino

Шотландская фирма FTDI занимается разработкой аппаратных мостов “USB-UART” и “USB-FIFO”. Производство началось с запуска и продажи схем FT8U232 и FT8U245, которые в итоге стали очень популярными и востребованными на рынке устройств с USB. Эти виды микросхем имели всего лишь 1 режим работы и огромное количество дополнительных внешних элементов.

Следующим поколением аппаратных мостов были микросхемы FT232B и FT245B. В них добавился новый режим работы BitBang, также появилась возможность реализации восьми независимых линий ввода-вывода. Помимо этого была изменена схемотехника кристалла.

С 2006 года начался выпуск микросхем FT232R и FT245R, в которых были интегрированы на кристалл энергонезависимая память, тактовый генератор и другие компоненты. Основными преимуществами микросхемы FT232RL являются хорошая функциональность, легкость монтажа и минимальная обвязка. Распиновка модуля представлена на рисунке ниже.

raspinovka-modulya.png

Характеристики микросхемы FT232R:

  • Одночиповый переходник USB-UART.
  • Поддержка режимов передачи 7и 8 бит данных, 1 и 2 стоповых бита.
  • Бесплатные драйверы VCP и D2XX.
  • Скорость передачи 300 бод – 3 мегабод для RS422.
  • Наличие встроенного идентификационного номера.
  • Настраиваемые выходы CBUS.
  • Вывод состояния приема и передачи на внешние светодиоды.
  • Наличие буферов FIFO для высокоскоростного приема/передачи данных.
  • Усовершенствованный режим bit bang.
  • Встроенная память EEPROM на 1024 байт.
  • Наличие встроенного стабилизатора напряжения на 3.3 В и для внешних сигналов от 1,8 до 5В.
  • Высокая нагрузочная способность.
  • Малое потребление энергии.
  • Совместима с USB 2.0 Full Speed.
  • Температурный диапазон от -40С до 85С.

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

Чип ATMEGA16U2/8U2 для ардуино

Чипы ATMEGA16U2/8U2 используются в качестве моста между USB-портом и последовательным портом. Версия платы ATmega8u2 использовалась для предыдущих плат Ардуино Uno и Mega.

Технические характеристики чипа ATMEGA16U2:

  • Процессор AVR.
  • Высокая производительность, низкая мощность.
  • Размер ядра 8-бит.
  • Подключение SPI, UART/USART, USB.
  • Количество контактов 32.
  • Скорость ЦПУ 16 МГц.
  • 512 б ОЗУ.
  • 512 б энергонезависимой памяти.
  • 22 программируемых линии ввода-вывода.
  • Интегрированный аналоговый компаратор.
  • Объем флеш-памяти 16 Кб.
  • Размер EEPROM 512х8.
  • Напряжение от 2,7В до 5,5В.
  • Рабочие температуры от -40С до 85С.

Контроллер ATmega8u2 в своей прошивке уже имеет установленные USB COM драйвера, поэтому установка дополнительных не требуется.

Характеристики ATmega8u2:

  • Диапазон напряжений от 2,7В до 5,5В.
  • 32 вывода.
  • Скорость ЦПУ 16 МГц.
  • Объем флеш-памяти 8Кб.
  • Поддержка встроенных интерфейсов I2C, SPI, UART, USART.
  • Размер ядра 8 бит.
  • Несколько режимов работы – холостой ход, энергосберегающий режим, режим ожидания, расширенный режим ожидания и выключение питания.
  • Возможность внешнего и внутреннего прерывания.
  • 22 программируемых линии ввода-вывода.
  • 512 б энергонезависимой памяти.
  • 512 б ОЗУ.
  • Рабочие температуры от -40С до 85С.

Заключение и выводы

Микросхемы-контроллеры последовательного порта служат в качестве преобразователя  интерфейса USB. Наиболее популярными являются микросхемы CH340 (преобразователь USB в UART), аппаратные мосты от фирмы FTDI, к которым относятся микросхемы FT8U232, FT8U245, FT232R и FT245R (USB-UART и USB – FIFO) и ATmega8U2 и ATmega16U2.

ДомойСтатьиДрайвер CH340G для Arduino

Большинство плат Arduino производятся со встроенным USB-to-Serial преобразователем. Последнее время для этих целей используют микросхему CH340. Эта микросхема сильно снижает затраты на изготовление микроконтроллеров, а на работоспособность абсолютно не влияет. Так же ее используют в программаторах для устройств в которых нет встроенной поддержки USB соединения. С помощью таких программаторов можно легко прошивать Arduino Pro Mini. Об этом мы рассказывали в этой статье.

Есть только одно «но». По умолчанию в системе windows не установлен драйвер для работы с этой микросхемой. Из-за этого устройство может работать не правильно или вообще не опознается. Что бы это исправить необходимо скачать и установить драйвер CH340G. Ссылки на драйвер и инструкция по установке есть ниже.

Скачать драйвер CH340G

Скачать CH340G для Windows

Скачать CH340G для Linux

Скачать CH340G для MAC

Установка драйвера

  1. Скачайте драйвер для вашей операционной системы по ссылкам выше.
  2. Распакуйте архив
  3. Запустите исполнительный файл SETUP.EXE
  4. В открывшемся окне нажмите кнопку Install
  5. На этом установка завершена

Если статья оказалась вам полезна то я очень рад. А если вы воспользуетесь социальными кнопками ниже то я буду рад в 2 раза больше 🙂

CH340-1.png

Я уже затрагивал тему преобразования компьютерного интерфейса USB в последовательный интерфейс UART – стандартный интерфейс любого современного микроконтроллера. В частности сделал обзор модуля PL2303 USB UART BOARD. Показал насколько просто с помощью этого модуля подключать к USB порту компьютера устройства с интерфейсами UART, COM, RS232.

К существующим на рынке мостам USB-UART не так давно добавилась китайская микросхема CH340G (изготовитель – компания WCH). Не просто добавилась, а претендует на то, чтобы стать самым популярным компонентом сопряжения интерфейсов USB и UART.

Этому способствует:

  • Низкая цена  микросхемы. По моей партнерской программе на момент написания статьи (январь 2017г.) микросхему CH340G можно купить всего за 40 руб., а модуль CH340 продается по цене 90 руб.
  • Удобный корпус SO-16. Маленький корпус с небольшим числом выводов и минимум внешних компонентов значительно облегчают применение микросхемы. Если раньше я отдавал предпочтение модулям USB-UART, то сейчас задумываюсь об установке микросхемы CH340 непосредственно на плате устройства.
  • Неслучайно практичные китайцы в большинстве своих клонов плат Ардуино используют именно эту микросхему. И это еще один фактор способствующий распространению конвертера CH340. У многих на компьютере уже установлен для него драйвер.

В серию китайских микросхем CH340 входят:

Название Корпус Назначение Официальная техническая документация
CH340T SSOP-20 Мост USB — UART CH340.pdf
CH340R SSOP-20 Мост USB — IrDA
CH340G SO-16 Мост USB — UART CH340G.pdf

Техническую информацию о микросхемах CH340T и CH340R можно загрузить в формате PDF по этой ссылке CH340.pdf.

Но последний вариант из таблицы – микросхема CH340G оказался наиболее удачным благодаря корпусу с меньшим числом выводов. Именно он получил широкое распространение. Его я и буду описывать. Технические характеристики и параметры я взял из официальной документации производителя – китайской компании WCH. Информацию можно загрузить в формате PDF по этой ссылке  CH340G.pdf.

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

Мост USB-UART CH340G.

Микросхема предназначена для преобразования интерфейса USB в UART. Позволяет создать на компьютере дополнительный UART порт. Подробно о технологии конвертирования интерфейсов USB и UART можно прочитать по этой ссылке.

Микросхема CH340G:

  • Поддерживает полную скорость спецификации USB 2.0.
  • Требует минимум внешних компонентов. Только кварцевый резонатор и 4 конденсатора.
  • Создает виртуальный последовательный порт, который эмулирует все функции реального COM порта.
  • Позволяет использовать все существующие приложения для COM портов без изменения и доработок.
  • Аппаратная часть поддерживает последовательный дуплексный интерфейс с внутренним буфером FIFO. Скорость обмена от 50 бит в сек, до 2 Мбит в сек.
  • Поддерживает полный контроль сигналов управления передачей данных RTS, DTR, DCD, RI, DSR и CTS.
  • При использовании внешних преобразователей уровней поддерживает интерфейсы RS23, RS422, RS485.
  • Может работать с сигналами уровней 5 и 3,3 В.
  • Конструктивно микросхема выполнена в корпусе SO-16.

Назначение выводов.

CH340-2.png

Вывод Обозначение Направление Описание
1 GND Питание Общий провод (земля). Должен быть соединен с общим проводом шины USB.
2 TXD Выход TXD сигнал UART.
3 RXD Вход RXD сигнал UART.
4 V3 Питание Внутреннее опорное напряжение для USB интерфейса. При питании 3,3 В вывод должен быть соединен с Vcc. При напряжении питания 5 В, к нему необходимо подключить относительно земли блокировочный конденсатор емкостью 4,7 – 20 нФ.
5 UD+ Аналог. D+ сигнал USB.
6 UD- Аналог. D- сигнал USB.
7 XI Вход Вход кварцевого генератора. К нему подключается кварцевый резонатор и конденсатор.
8 XO Выход Выход кварцевого генератора. К нему подключается кварцевый резонатор и конденсатор.
9 CTS# Вход CTS сигнал UART.
10 DSR# Вход DSR сигнал UART.
11 RI# Вход RI сигнал UART.
12 DCD# Вход DCD сигнал UART.
13 DTR# Выход DTR сигнал UART.
14 RTS# Выход RTS сигнал UART.
15 R232 Вход Включение инверсии входа RXD. Активный уровень – высокий. Вход имеет внутренний резистор, подключенный к земле.
16 VCC Питание Питание.

Предельно-допустимые параметры.

Превышение значений этих параметров может привести к выходу из строя микросхемы.

Обозначение Название Минимальное значение Максимальное значение Единица  измерения
Ta Рабочая температура — 40 85 °C
Ts Температура хранения -40 125 °C
Vcc Напряжение питания (относительно вывода GND) — 0,5 6,5 В
Vid Напряжение на цифровых выводах (относительно вывода GND) — 0,5 Vcc + 0,5 В

Параметры постоянного тока.

Обозначение Название Мин. Тип. Макс. Ед. изм.
Vcc Напряжение питания Питание 5 В 4,5 5 5,5 В
Питание 3,3 В 3,3 3,3 3,8 В
Icc Потребляемый ток 12 30 мА
Islp Потребляемый ток в режиме сна Питание 5 В 150 200 мкА
Питание 3,3 В 50 80 мкА
Vil Входное напряжение низкого уровня — 0,5 0,7 В
Vih Входное напряжение высокого уровня 2,0 Vcc + 0,5 В
Vol Выходное напряжение низкого уровня 0,5 В
Voh Выходное напряжение высокого уровня Vcc – 0,5 В
Iup Ток внутренней подтяжки к питанию 3 150 300 мкА
Idn Ток внутренней подтяжки к земле — 50 — 150 — 300 мкА
Vr Напряжение сброса по питанию 2,3 2,6 2,9 В

Динамические характеристики.

Обозначение Название Мин. Тип. Макс. Ед. изм.
Fclk Тактовая частота 11,98 12 12,02 мГц
Tpr Время сброса по включению питания 20 50 мс

Подключение микросхемы CH340G.

Микросхема CH340G содержит внутренние подтягивающие резисторы для шины USB и цепи подавления отраженного сигнала.  Поэтому выводы UD+ и UD- должны быть подключены непосредственно к соответствующим сигналам USB (выводам разъема USB).

Микросхема имеет встроенную логику сброса по включению питания.

Для нормальной работы микросхемы необходимо сформировать на выводе XI сигнал частотой 12 мГц.

  • Обычно это обеспечивается подключением кварцевого резонатора частотой 12 мГц между выводами XI и XO. Также необходимо подключить нагрузочные конденсаторы между этими выводами и землей. Формирование тактового сигнала при такой схеме включения обеспечивает внутренний генератор.
  • Можно использовать внешнюю тактовую частоту. В этом случае тактовый сигнал необходимо подать на вывод XI, а вывод XO оставить неподключенным.

Микросхема поддерживает два напряжения питания: 5 В и 3, 3 В.

  • При питании 5 В необходимо подключить блокировочный конденсатор емкостью 4,7-20 нФ между землей и выводом V3.
  • В режиме питания 3,3 В вывод V3 должен быть соединен с выводом Vcc.

Конвертер CH340G поддерживает все сигналы управления передачей данных стандартного интерфейса RS233: CTS, DSR, RI, DCD, DTR, RTS. Программное обеспечение также поддерживает все эти сигналы.

С помощью вывода R232 можно включить инверсию сигнала RXD. Инверсия включается высоким уровнем на входе R232. Состояние сигнала запоминается при включении питания. Вход R232 имеет внутренний резистор, поэтому если в режиме инверсии RXD нет необходимости, то можно оставить вывод R232 неподключенным.

Типовая схема использования CH340G в преобразователе интерфейсов USB – UART выглядит так.

CH340-3.png

Микросхема получает питание 5 В от интерфейса USB. При питании от напряжения 3,3 В необходимо соединить выводы Vcc и V3.

Режимы работы конвертера CH340G.

У микросхемы CH340G есть встроенный буфер типа FIFO.

CH340G поддерживает симплексный, полудуплексный и полнодуплексный асинхронные режимы обмена.

Микросхема поддерживает все стандартные режимы передачи данных:

  • 1 стартовый бит и 5-8 битов данных;
  • 1 или 2 стоповых битов;
  • бит паритета с проверкой на четность или нечетность.

Скорость обмена может быть выбрана из следующих значений:

Скорость обмена, бод
50 900 19 200 128 000
75 1 200 28 800 153 600
100 1 800 33 600 230 400
110 2 400 38 400 460 800
134,5 3 600 56 000 921 600
150 4 800 57 600 1 500 000
300 9 600 76 800 2 000 000
600 14 400 115 200
  • Ошибка временных параметров передачи данных не превышает 0,3 %.
  • При приеме допустимо отклонение временных характеристик до 2 %.

Микросхема полностью эмулирует работу стандартного COM порта. Все приложения для реальных COM портов работают с конвертером интерфейсов CH340G без изменения кода. Подробнее о технологии виртуальных COM портов моно прочитать по этой ссылке.

С помощью CH340G можно подключать существующие периферийные устройства к компьютерам, не имеющим COM портов. Для реализации таких распространенных интерфейсов как RS232, RS422 и RS485 достаточно добавить преобразователи уровней сигналов.

Вот пример схемы для подключения устройств с интерфейсом RS232.

CH340-4.png

CH340G может быть использована для реализации USB инфракрасного адаптера (интерфейс IrDA). Типовая схема USB — IrDA адаптера выглядит так.

CH340-5.png

В следующей публикации я расскажу о модуле CH340, созданном на базе этой микросхемы.

Также  приведу последовательность операций для установки драйвера моста USB-UART на персональном компьютере.

Coin.png Поддержать проектИспользуемые источники:

  • https://arduinomaster.ru/platy-arduino/arduino-usb-uart-chipy-i-drajvera-ch340-ch340g-ftdi/
  • https://all-arduino.ru/drajver-ch340g-dlya-arduino/
  • http://mypractic.ru/mikrosxema-ch340g-preobrazovatel-interfejsa-usb-v-uart-most-usb-uart-xarakteristiki-usloviya-ekspluatacii-tipovye-sxemy-vklyucheniya.html

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