Преобразователь USB-UART CH330N

Последовательный порт (UART) — один из самых распространённых и лёгких портов для сопряжения устройств, в том числе для сопряжения с компьютером. Для подключения UART к современным ПК используется преобразователи интерфейсов USB-UART (cp2102, ft232rl …), который прокидывает на компьютер виртуальный COM порт. Большинство преобразователей имеют многовыводной, для некоторых трудно паяемый корпус, и цена сейчас у них не копеечная.

В начале года (2019) на площадке taobao обнаружил два интересных, компактных в SOIC-8 корпусах с малой обвязкой по малой цене USB-UART преобразователя: CH330N и PL2303SA и заказал их на тест.

USB-UART на CH330N
USB-UART на CH330N

В первой статье расскажу о CH330N китайской компании WCH, в следующей о PL2303SA.

Микросхема представляет из себя полноценный USB-UART конвертер в 8-ми ногам SOIC корпусе. Из минимальной обвязки достаточно 2-х конденсаторов. Для связи с микроконтроллером доступно 3 вывода: 2 данных Rx, Tx и один управляющий RTS.

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

Скорость 50 bps — 2 Mbps
110 — 2560000 bps (протестировал)
Напряжение питания (VCC) 3.3 или 5В
Напряжение логической части (VDD_3) 3.3 или 5В,
Недолжно превышать VCC
Рабочий ток 5-15мА
Входное напряжение логического 0 -0.5 — 0.7В
Входное напряжение логической 1 2.0 — VCC+0.5В
Выходное напряжение логического 0 0.5В
Выходное напряжение логической 1 VCC-0.5В
Ошибка скорости принимаемого сигнала не должна превышать 2%
Ошибка скорости отправки Менее 1.2%
Рабочая температура -20 +70°C

Стоимость микросхемы на taobao составляет ~18р (декабрь 2019, $ 64.15р, юань 9.14р) не считая доставки.

Распиновка

Распиновка корпуса
Распиновка корпуса

1 UD+ USB D+
2 UD- USB D-
3 GND Питание, общий
4 RTS# USART, RTS — управление передачей данных
5 VCC Питание, +5В или +3.3В, в зависимости от режима
6 TXD UART Tx выход
7 RXD UART Rx вход
8 V3 Управление питанием

Распиновка и назначение выводов CH330N полностью совпадает с другой микросхемой USB-UART преобразователя от WCH — CH340N, из этого можно сделать вывод о их взаимозаменяемости.

Схема

Схема
Схема

Преобразователь настроен на рабочее напряжение и напряжение линий данных 5В. Линия VDD подключена к +5В подаваемым с USB разъёма, а линия VDD_3 подключена только к конденсатору C3. Линия RTS не разведена.

Компонент
Позиционное обозначение
Корпус
Количество
Микросхемы
CH330N U1 SO-8 1
Индикация
RED Led LED1 LED0603 1
Резисторы
22 R1, R2 RES-0603 2
1K R3, R4, R5 RES-0603 3
Конденсаторы
0.1uF C1, C3 CAP-0603 2
10uF 10V C2 Tantal B 1
Соединители
miniUSB X1 miniUSB 1
PLS4 X2 PLS4 1

Перечень компонентов

Печатная плата
Печатная плата

Размер платы 31.5х18мм. Плата выполнена односторонней, отличается от платы на фото в статье. Основой преобразователя выступает микросхема CH330N в SOIC-8 корпусе. Светодиод LED1 с токоограничивающим резистором R5 на 1К в корпусе 0603 выполняет функцию индикации питания. Резисторы R1-R4 служат для защиты: R1-R2 по 22 Ом со стороны USB порта, R3-R4 гасящие резисторы по 1К со стороны UART, все в корпусе 0603. Танталовый конденсатор C2 10мкФ типоразмера B и чип C1 на 0.1мкФ типоразмера 0603 установлены по питанию, C3 0603 0.1мкФ на выводе VDD_3. C1 и C3 должны быть установлены как можно ближе к соответствующим выводам микросхемы. Для подключения к компьютеру применён miniUSB SMD гнездо. Для UART применена штыревая гребенка PLS4 с шагом 2.54мм.

Сборочный рисунок
Сборочный рисунок

Драйвер

При подключении к операционной системе Windows 7 и старше с подключенным интернетом — система сама находит и устанавливает драйвер. В системе отображается, как USB-SERIAL CH340.

Отображение в диспетчере устройств
Отображение в диспетчере устройств

Если нет интернета или драйвер не находится то будет отображаться, как USB2.0-Serial.

Отображение в диспетчере устройств, без установленного драйвера
Отображение в диспетчере устройств, без установленного драйвера

Драйвер можно скачать с сайта производителя:
Windows http://wch.cn/downloads/CH341SER_ZIP.html
Linux http://wch.cn/downloads/CH341SER_LINUX_ZIP.html
На сайте есть так же под MAC и Android.

Но почему-то у последней версии драйвера под win на сайте производителя нет подписи, поэтому он может работать некорректно. Выкладываю архив с драйвером, который давно где-то скачал и проблем с которым не наблюдалось — скачать драйвер USB-UART CH340 .

Проверка скорости

Проверка производилась преобразователя самим собой, линии Tx и Rx были соединены перемычкой и к ним был подключен осциллограф.

Микросхема была протестирована в диапазоне скоростей от 110bps до 2.56Mbps, максимальной устанавливаемой скорости в ALTerminal.

Установленная скорость,
bps
Длительной 1 бита,
мк с
Длительной 1 бита,
bps
Ошибка,
%
110 9000 111.1111 1.01
600 1680 595.2381 0.79
1200 830 1204.819 0.40
4800 208 4807.692 0.16
9600 103.6 9652.51 0.55
19200 51.8 19305.02 0.55
38400 26 38461.54 0.16
57600 17.3 57803.47 0.35
115200 8.64 115740.7 0.47
230400 4.32 231481.5 0.47
460800 2.17 460829.5 0.01
921600 1.09 917431.2 0.45
1000000 1.004 996015.9 0.40
2000000 0.48 2083333 4.17
2400000 0.478 2092050 12.83
2560000 0.332 3012048 17.66

Таблица проверки скоростей

Микросхема работает во всём диапазоне скоростей. В основном диапазоне до 115200 работа стабильная, форма сигнала меандр, ошибка установки скорости не превышает 1% (исключение 110).

Скорость 9600bpsСкорость 9600bps
Скорость 9600bps

Скорость 115200bpsСкорость 115200bps
Скорость 115200bps

В диапазоне скоростей до 1Mbps (1000000bps) микросхема так же работает стабильно, ошибка установки скорости не превышает 1%, сигнал нормально детектируется, но форма сигнала после 0.6Mbps перестаёт постепенно походить на меандр и к 1Mbps превращается в подобие пилы.

Скорость 1MbpsСкорость 1Mbps
Скорость 1Mbps

С дальнейшем повышением скорости до 2Mbps, треугольник начинает терять амплитуду (уровень логического 0 — растёт, 1 — падает), шаг изменение скорости начинает увеличиваться, из-за чего ошибка установки скорости начинает расти.

Скорость 2MbpsСкорость 2Mbps
Скорость 2Mbps

До скорости 2.4Mbps преобразователь занижает скорость до 2.1Mbps, из-за чего ошибка доходит до 13%, сам преобразователь продолжает детектировать свои посылки.

С повышением скорости начиная с 2.4Mbps преобразователь на 1 шаг с 2.1Mbps поднял скорость до 3Mbps и перестал распознавать свои отправленные данные. Посылка стала почти не читаемой.

Скорость 2.56MbpsСкорость 2.56Mbps
Скорость 2.56Mbps

На высоких скоростях палец стал ощущать еле заметный нагрев преобразователя.

Более широких тестов не проводил. На нагрев, на длительную работу и стабильность при разных условиях. Применялся на ровне с моим любимым cp2102 в различных задачах по отладке в том числе с stm32 и её логическими уровнями 3.3В.

Вывод

В рабочем диапазоне до 115200 и даже до 1Mbps преобразователь работает без проблем, на больших скоростях искажается форма сигнала и падает стабильность, но мало кто обычно превышает 115200. Стоимость малая. Обвязка почти отсутствует, нет кварцевого резонатора. Корпус легко паяемый. Из минусов можно отметить малое количество линий управления, из-за чего может подойти не ко всем загрузчикам (например нет линии DTR, которую использует загрузчик Arduino) и преобразователем уровней.

От использования микросхемы остался доволен, могу рекомендовать. Но небольшое недоверие пока остаётся, точнее не верится, в её работоспособность и стоимость. Тестирование в рабочем процессе продолжу, если что-то выявится допишу.

Скачать архив проекта

Содержимое архива:

gerber\
pcb1_lut.drl сверловка
pcb1_lut.gbl медь, низ
pcb1_lut.gbo шелкография, низ
pcb1_lut.gbs маска, низ
pcb1_lut.gko контур
pcb1_lut.gtl медь, верх
pcb1_lut.gto шелкография, верх
pcb1_lut.gts маска, верх
assembled.pdf сборочный чертеж
lut.pdf лут, односторонняя плата

Статья обновлена 5.12.2019

Комментарии RSS

Оставьте отзыв