CH341A или CH341: в чём разница и что выбрать для прошивки

Путаница между CH341A и CH341 возникает из-за того, что это, по сути, одна и та же микросхема китайской компании WCH (Nanjing QinHeng), но в разных контекстах: «CH341» — общее название семейства USB-конвертеров, а «CH341A» — конкретная популярная ревизия, на базе которой построены недорогие программаторы для прошивки SPI Flash и EEPROM. Когда пользователь ищет «драйвер CH341», ему обычно нужен USB-to-Serial конвертер для Arduino-клонов, а когда ищет «программатор CH341A» — устройство для прошивки BIOS материнских плат, роутеров и телевизоров.

Разница важна на практике: драйверы, программное обеспечение и даже схема подключения у этих сценариев разные. Установив не тот драйвер или подав неправильное напряжение на микросхему памяти, можно получить нерабочее устройство. Ниже разберём, чем отличаются варианты чипа, как выбрать программатор и как избежать типичных ошибок при прошивке.

Что такое микросхема CH341 и её модификации

Микросхема CH341 — это универсальный мост, который преобразует шину USB в другие интерфейсы. В зависимости от прошивки внутренней логики и обвязки чип может работать в нескольких режимах: последовательный порт (UART), параллельный порт (EPP/MEM), а также синхронные интерфейсы I2C и SPI.

Компания WCH выпускает несколько буквенных модификаций: CH341A, CH341B, CH341T и другие. Они различаются корпусом, набором поддерживаемых режимов и некоторыми электрическими параметрами. Именно версия CH341A получила массовое распространение в дешёвых программаторах с AliExpress — характерных чёрных платах с ZIF-панелькой и перемычками.

  • 🔌 CH341 как UART — встречается на клонах Arduino Nano и USB-TTL переходниках, требует драйвер виртуального COM-порта.
  • 💾 CH341A как программатор — работает с микросхемами памяти серий 24xx (I2C EEPROM) и 25xx (SPI Flash).
  • 🖨️ CH341 как параллельный порт — редкий сценарий для старых принтеров и программаторов на LPT.

Режим UART: когда нужен просто «драйвер CH341»

Если вы подключили плату Arduino-клона или USB-TTL адаптер, а Windows показывает «неизвестное устройство» или USB2.0-Serial с восклицательным знаком — вам нужен драйвер виртуального COM-порта для чипа CH341. В этом режиме программаторные функции микросхемы не используются вообще.

Драйвер распространяется бесплатно с официального сайта производителя WCH (файл обычно называется CH341SER). После установки в системе появляется новый COM-порт, который виден в Диспетчере устройств в разделе «Порты (COM и LPT)». Номер порта понадобится при настройке Arduino IDE, терминала или программы мониторинга.

⚠️ Внимание: скачивайте драйвер только с официального сайта WCH или из доверенных источников. Сторонние сборки «драйверпаков» нередко содержат устаревшие версии, конфликтующие с новыми сборками Windows, или вовсе вредоносные компоненты.

Если порт появился, но обмен данными не идёт, проверьте скорость соединения в настройках программы — она должна совпадать со скоростью, заданной в прошивке устройства. Также убедитесь, что кабель не «зарядочный»: часть дешёвых USB-кабелей содержит только линии питания без линий данных.

Режим программатора: чем занимается CH341A

Программатор на базе CH341A предназначен для чтения и записи микросхем энергонезависимой памяти. Типичные задачи — прошивка BIOS материнских плат и видеокарт, восстановление роутеров и ресиверов, перезапись EEPROM в устройствах, хранящих настройки.

Работа ведётся через программы на ПК: наиболее известны CH341A Programmer (разные версии от энтузиастов), AsProgrammer и NeoProgrammer. ПО подключается к чипу напрямую через USB и управляет сигналами SPI или I2C. Драйвер COM-порта для этого режима не требуется — программатор использует собственный USB-протокол чипа, и конфликт драйверов здесь — частая причина «невидимого» устройства.

📊 Для какой задачи вы используете CH341A
Прошивка BIOS материнской платы
Восстановление роутера или ресивера
Работа с EEPROM (24xx)
Как USB-TTL конвертер для Arduino

Проблема питания: 5 В против 3,3 В

Главная аппаратная претензия к дешёвым платам на CH341A — питание линий данных. Большинство микросхем SPI Flash серии 25xx рассчитаны на напряжение 3,3 В, однако на многих платах сигналы данных выдаются с уровнем около 5 В, даже когда перемычка питания переключена на 3,3 В. Это особенность схемотехники массовых клонов, а не единичный брак.

Долговременная подача 5 В на входы микросхемы, рассчитанной на 3,3 В, способна повредить её или вызвать ошибки при записи. Пользователи решают проблему по-разному: модифицируют плату (известная «модификация 3.3V» с перерезанием дорожек), добавляют внешний преобразователь уровней или используют адаптеры с собственной стабилизацией.

КритерийCH341 (UART-режим)CH341A (программатор)
Основное назначениеUSB в COM-портЧтение/запись Flash и EEPROM
ДрайверCH341SER (виртуальный COM)Не нужен, прямой USB-доступ
Типичное ПОArduino IDE, терминалыAsProgrammer, NeoProgrammer
Поддерживаемые чипыНе применимоСерии 24xx, 25xx
Критичный нюансКачественный кабель с линиями данныхУровень напряжения на линиях данных
⚠️ Внимание: перед записью прошивки в микросхему всегда делайте и сохраняйте полный дамп (бэкап) исходного содержимого. Проверьте, что прочитанный дамп не состоит из одних нулей или единиц — это признак плохого контакта или неверно выбранного типа чипа.

Пошаговая проверка и подключение программатора

Последовательность действий при работе с программатором CH341A выглядит так. Сначала установите микросхему в ZIF-панельку или подключитесь через прищепку SOIC-8, соблюдая ключ первой ножки (обычно отмечен точкой на корпусе чипа). Затем подключите программатор к USB-порту и запустите ПО.

☑️ Проверка перед прошивкой на CH341A

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

После подключения нажмите в программе кнопку определения чипа (Detect или аналогичную). Если чип не определяется, выберите его вручную из списка — автодетект на клонах работает не всегда корректно. Прочитайте содержимое дважды и сравните файлы: совпадение означает стабильный контакт.

Порядок в типичном ПО: Detect → Read → Save (бэкап) → Open (новый файл) → Erase → Write → Verify

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

Чаще всего пользователи сталкиваются с тем, что программа не видит программатор. Возможная причина — установленный драйвер виртуального COM-порта, который «захватил» устройство. В этом случае помогает удаление устройства в Диспетчере устройств вместе с драйвером и повторное подключение, чтобы система использовала стандартный USB-драйвер.

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

  • 🧹 Окислы на ножках микросхемы — аккуратно зачистите контакты перед установкой.
  • 🔋 Нестабильное питание — подключайте программатор напрямую в порт ПК, без хабов.
  • 📏 Длинные провода при внутрисхемном подключении — чем короче, тем стабильнее SPI.
  • 🧩 Неверно выбранный тип чипа в ПО — сверяйте маркировку на корпусе, а не полагайтесь на автодетект.
Почему чип определяется, но читается «мусор»

Такое поведение обычно указывает на помехи на линиях SPI или несоответствие уровней напряжения. Проверьте общий провод (GND), укоротите соединения и убедитесь, что целевая плата не питается одновременно от своего источника и от программатора без согласования уровней.

Что выбрать: готовый программатор или альтернативы

Для разовой прошивки BIOS или восстановления роутера недорогой программатор на CH341A — рациональный выбор: он дешёвый, поддерживается несколькими программами и имеет огромную базу инструкций от сообщества. Для регулярной профессиональной работы имеет смысл смотреть на более продвинутые устройства с корректными уровнями напряжения и поддержкой широкого списка чипов.

Если же ваша задача — только общение с микроконтроллерами через последовательный порт, программатор не нужен вовсе: достаточно любого USB-TTL адаптера (на CH341, CP2102 или FTDI) и драйвера виртуального COM-порта.

Частые вопросы

CH341 и CH341A — это одно и то же?

CH341 — название семейства USB-мостов компании WCH, а CH341A — конкретная модификация, ставшая стандартом для недорогих программаторов. В быту различие стёрлось, но при поиске драйверов и ПО важно понимать, какой режим чипа вам нужен.

Нужен ли драйвер для программатора CH341A?

Специальный драйвер виртуального COM-порта не требуется — программы вроде AsProgrammer обращаются к чипу напрямую через USB. Более того, установленный драйвер CH341SER иногда мешает определению устройства.

Можно ли прошивать микросхемы 1,8 В через CH341A?

Напрямую — нежелательно: стандартная плата рассчитана на 5 В / 3,3 В. Для чипов с питанием 1,8 В (встречаются в современных устройствах) нужен специальный адаптер-понижайка, иначе микросхема может быть повреждена.

Программа не видит чип в панельке — что проверить в первую очередь?

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

Чем отличаются микросхемы серий 24 и 25?

Серия 24xx — это EEPROM с интерфейсом I2C, обычно небольшого объёма, для хранения настроек. Серия 25xx — SPI Flash большего объёма, где хранятся прошивки целиком. В программе нужно выбирать соответствующий тип, иначе чтение и запись будут некорректными.