USB UART драйвер: установка и решение проблем с COM-портом

Устройство определяется в Диспетчере устройств как «USB2.0-Serial» с жёлтым восклицательным знаком — это типичный признак того, что система не смогла подобрать подходящий USB UART драйвер для преобразователя. Проблема возникает при подключении Arduino-клонов, программаторов, адаптеров для прошивки роутеров и других устройств на микросхемах CH340, CP2102, FTDI или PL2303.

Без корректного драйвера виртуальный COM-порт не создаётся, и ни одна программа — будь то Arduino IDE, терминал или утилита прошивки — не сможет обменяться данными с устройством. В этой статье разберём, как определить чип преобразователя, где взять правильный драйвер и что делать, если порт появляется, но обмен данными не работает.

Что такое USB-UART преобразователь и зачем ему драйвер

Интерфейс UART (Universal Asynchronous Receiver-Transmitter) — это последовательный протокол обмена данными, который используется в микроконтроллерах, модемах, GPS-модулях и встраиваемой электронике. Современные компьютеры не имеют классического COM-порта, поэтому для связи с такой техникой применяются преобразователи USB-UART.

Микросхема-преобразователь эмулирует в системе виртуальный последовательный порт. Чтобы Windows понимала, как с ней работать, требуется драйвер конкретного производителя чипа — универсального решения здесь нет. Именно поэтому один и тот же адаптер может работать на одном ПК и не определяться на другом.

  • 🔌 CH340/CH341 — самые распространённые чипы в недорогих Arduino-клонах и адаптерах
  • 🔌 CP2102/CP2104 — преобразователи от Silicon Labs, часто встречаются в модулях ESP32 и ESP8266
  • 🔌 FTDI FT232 — классика жанра, надёжные, но дорогие чипы
  • 🔌 PL2303 — чипы Prolific, популярные в старых кабелях и переходниках

Как определить, какой чип установлен в адаптере

Первое действие — осмотреть плату преобразователя. Название микросхемы обычно выгравировано на корпусе чипа: CH340G, CP2102, FT232RL и так далее. Если маркировка не читается или чип закрыт корпусом, поможет Диспетчер устройств.

Подключите адаптер и откройте Диспетчер устройств (команда devmgmt.msc в окне «Выполнить»). Найдите устройство с ошибкой, откройте его свойства и перейдите на вкладку Сведения. В списке свойств выберите ИД оборудования — там будут значения вида VID_1A86&PID_7523.

VID (производитель)ЧипДрайвер
1A86CH340 / CH341WCH CH341SER
10C4CP2102 / CP2104Silicon Labs CP210x VCP
0403FT232 / FT2232FTDI VCP / D2XX
067BPL2303Prolific PL2303
2341 / 2A03Оригинальные ArduinoArduino IDE drivers

Где скачивать драйверы и как их устанавливать

Драйверы следует брать только с официальных сайтов производителей чипов: WCH для CH340, Silicon Labs для CP210x, FTDI Chip для FT232, Prolific для PL2303. Сторонние сборники драйверов нередко содержат устаревшие или модифицированные версии, что создаёт риски для стабильности и безопасности системы.

Для чипа CH340 установка сводится к запуску инсталлятора CH341SER.EXE и нажатию кнопки установки. Драйверы Silicon Labs и FTDI распространяются в виде установочных пакетов, которые регистрируют виртуальный COM-порт автоматически. После установки переподключите устройство — в Диспетчере устройств должен появиться новый порт в разделе Порты (COM и LPT).

⚠️ Внимание: не устанавливайте драйверы из непроверенных «драйверпаков» и торрент-сборок. Для FTDI-чипов известны случаи, когда неофициальные версии драйверов блокировали работу контрафактных микросхем, обнуляя их идентификатор. Используйте только официальные источники.

☑️ Установка USB UART драйвера

Выполнено: 0 / 4

Порт появился, но устройство не отвечает

Наличие COM-порта в системе ещё не гарантирует обмен данными. Если терминал или среда разработки не видит устройство, начните с простых проверок. Убедитесь, что в программе выбран именно тот номер порта, который присвоила система, — при переподключении адаптера в другой USB-разъём номер может измениться.

Второй частый источник проблем — неверная скорость порта (baud rate). Значение в терминальной программе должно совпадать со скоростью, на которую настроено подключаемое устройство. Типичные значения — 9600 и 115200 бод, но точную скорость нужно смотреть в документации конкретного устройства. Также проверьте линии TX и RX: при подключении к микроконтроллеру они соединяются перекрёстно — TX адаптера идёт на RX устройства и наоборот.

📊 С каким чипом вы чаще всего сталкиваетесь
CH340
CP2102
FTDI
PL2303

Типичные ошибки и способы их решения

Код 10 в Диспетчере устройств — устройство не может быть запущено. Для чипов PL2303 это часто означает, что новая версия драйвера отказывается работать со старыми или неоригинальными микросхемами. Возможное решение — установить более раннюю версию драйвера с официального сайта Prolific, если производитель её предоставляет, либо заменить адаптер.

Порт занят другим приложением — ошибка возникает, когда COM-порт уже открыт в другой программе: терминале, мониторе порта Arduino IDE или фоновой утилите. Закройте все программы, которые могут использовать порт, и повторите попытку. Помогает и простое переподключение адаптера.

  • 🛠️ Попробуйте другой USB-порт, желательно напрямую, без хаба
  • 🛠️ Замените кабель — некоторые кабели передают только питание без линий данных
  • 🛠️ Проверьте адаптер на другом компьютере, чтобы отделить проблему ПК от неисправности самого преобразователя
  • 🛠️ Удалите устройство в Диспетчере вместе с драйвером и установите драйвер заново

⚠️ Внимание: при подключении USB-UART адаптера к внешним устройствам сверьтесь с уровнями логики. Многие чипы работают с сигналами 5 В или 3,3 В, и подача 5-вольтовых уровней на вход 3,3-вольтового устройства может его повредить. Наличие перемычки выбора напряжения зависит от конкретной модели адаптера — проверяйте документацию.

Что такое VID и PID

VID (Vendor ID) — идентификатор производителя USB-устройства, PID (Product ID) — идентификатор конкретного продукта. Система использует эту пару, чтобы подобрать подходящий драйвер. Посмотреть их можно в свойствах устройства на вкладке «Сведения» в Диспетчере устройств Windows.

Особенности работы в Linux и macOS

В современных дистрибутивах Linux драйверы для популярных чипов — ch341, cp210x, ftdi_sio, pl2303 — обычно уже включены в ядро, и устройство определяется автоматически как /dev/ttyUSB0 или /dev/ttyACM0. Проверить подключение можно командой:

dmesg | grep tty

Если устройство определилось, но терминал выдаёт ошибку доступа, вероятная причина — недостаток прав. Пользователя нужно добавить в группу dialout (в большинстве дистрибутивов) и перезайти в сессию. В macOS для CH340 и CP2102 могут потребоваться драйверы от производителя, при этом система может запросить разрешение на загрузку расширения в настройках безопасности.

Часто задаваемые вопросы

Почему Windows не находит драйвер автоматически?

Для некоторых чипов, особенно CH340, встроенного драйвера в Windows может не быть, либо он устанавливается через Центр обновления с задержкой. Надёжнее скачать драйвер с официального сайта производителя чипа и установить вручную.

Как узнать номер COM-порта, который получил адаптер?

Откройте Диспетчер устройств и разверните раздел «Порты (COM и LPT)». Рядом с названием устройства в скобках указан номер, например COM5. Если портов несколько, отключите и снова подключите адаптер — исчезающий и появляющийся порт и есть нужный.

Можно ли использовать один драйвер для разных чипов?

Нет. Каждый производитель выпускает собственный драйвер, и CH340 не заработает с драйвером FTDI. Если вы используете несколько разных адаптеров, в системе будут установлены несколько драйверов одновременно — это нормально и конфликтов не вызывает.

Адаптер работал, а после обновления Windows перестал. Что делать?

Возможная причина — обновление заменило драйвер на несовместимую версию. Откройте свойства устройства в Диспетчере устройств и на вкладке «Драйвер» попробуйте откатить версию. Если кнопка недоступна, удалите устройство вместе с драйвером и установите проверенную версию с сайта производителя чипа.

Чем отличается виртуальный COM-порт от настоящего?

Для прикладных программ разницы практически нет — обращение идёт по тому же протоколу. Отличие в том, что виртуальный порт существует только пока подключён USB-адаптер, а его номер может меняться при подключении к другому USB-разъёму.