Если программатор CH341A определяется в системе только как последовательный порт, а работа по I2C недоступна, причина почти всегда в установленном драйвере: стандартный драйвер CH341SER поддерживает лишь режим USB-UART, а для шины I2C и SPI требуется параллельный драйвер CH341PAR. Это самая частая ошибка при первом подключении устройства.

В этой статье разберём, какие драйверы существуют для чипа CH341A, как правильно установить их в Windows и Linux, как проверить работу интерфейса I2C и что делать, если устройство не определяется или шина не отвечает.

Какие драйверы существуют для CH341A

Микросхема CH341A от компании WCH — универсальный USB-мост, который умеет работать в нескольких режимах. Режим задаётся аппаратно (конфигурацией чипа и перемычками на плате программатора) и программно — через соответствующий драйвер.

  • 🔌 CH341SER — драйвер виртуального COM-порта (USB-UART). Устанавливается чаще всего по умолчанию.
  • 🔧 CH341PAR — драйвер параллельного/EPP-режима, через который работают программы, использующие I2C и SPI.
  • 🐧 ch341 (Linux) — модуль ядра Linux, входящий в состав большинства современных дистрибутивов.
  • 📦 Библиотека CH341DLL — динамическая библиотека от WCH, которую используют программы вроде AsProgrammer или NeoProgrammer для прямого доступа к чипу.

Ключевой момент: большинство популярных программ для прошивки EEPROM и SPI Flash обращаются к CH341A не через системный драйвер, а напрямую через библиотеку CH341DLL.DLL. Поэтому даже при «неправильном» драйвере в диспетчере устройств такие программы могут работать — и наоборот, корректный драйвер не гарантирует работу софта, рассчитанного на другую связку.

💡

Для I2C на CH341A нужен драйвер CH341PAR или прямой доступ через CH341DLL — стандартный CH341SER даёт только COM-порт.