Чипы FTDI, CH340, ATMEGA16U2 с драйверами позволяют плате Arduino и USB адаптерам подключаться к компьютеру и взаимодействовать с внешним окружением через Serial UART. С их помощью Ардуино может скачивать прошивку, загружать и отправлять данные, не заботясь о низкоуровневой поддержке последовательного соединения. В платах разных производителей могут использоваться различные чипы и драйвера.
В этой статье мы рассмотрим наиболее популярные микросхемы и узнаем, как скачать и установить соответствующие драйвера для нормальной работы Arduino Uno, Nano, Mega и другими платами.
Чипы CH340g, FTDI FT232, ATMEGA 16U2 / 8U2
Обычно с чипами 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 представлена на рисунке.
На плате обозначены следующие контакты:
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 являются хорошая функциональность, легкость монтажа и минимальная обвязка. Распиновка модуля представлена на рисунке ниже.
Характеристики микросхемы 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
Установка драйвера
- Скачайте драйвер для вашей операционной системы по ссылкам выше.
- Распакуйте архив
- Запустите исполнительный файл SETUP.EXE
- В открывшемся окне нажмите кнопку Install
- На этом установка завершена
Если статья оказалась вам полезна то я очень рад. А если вы воспользуетесь социальными кнопками ниже то я буду рад в 2 раза больше 🙂
Я уже затрагивал тему преобразования компьютерного интерфейса 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.
Назначение выводов.
Вывод | Обозначение | Направление | Описание |
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 выглядит так.
Микросхема получает питание 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.
CH340G может быть использована для реализации USB инфракрасного адаптера (интерфейс IrDA). Типовая схема USB — IrDA адаптера выглядит так.
В следующей публикации я расскажу о модуле CH340, созданном на базе этой микросхемы.
Также приведу последовательность операций для установки драйвера моста USB-UART на персональном компьютере.
Поддержать проектИспользуемые источники:
- 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