CH340 USB-to-UART

Olimex (плата), WCH (CH340T) · Olimex BB-CH340T Rev.A, mini-USB, CH340T

USB-UART-адаптер для последовательной консоли, диагностики и загрузчиков микроконтроллеров.

Автор: SLDV LAB

Опубликовано · Обновлено

СложностьЛегко
Проекты с компонентом

О МОДУЛЕ

Что делает Olimex BB-CH340T Rev.A, mini-USB, CH340T

Olimex BB-CH340T связывает USB-порт компьютера с UART микроконтроллера. В карточке выбрана ревизия A с mini-USB и CH340T; ревизия B использует micro-USB. Четырёхконтактная гребёнка выводит GND, RXD, TXD и VDD. Это логический UART, не RS-232 и не RS-485.

Паяная перемычка выбирает выход VDD 3,3/5 В. Для Rev.A опубликованные первичные файлы расходятся: в PCB и netlist TXD идёт напрямую от CH340T к гребёнке, а в схеме и PDF добавлены диод D1 и подтяжка R1 к выбранному VDD; этих компонентов нет в PCB-файле. Поэтому общее описание текущего BB-CH340T о переключаемых уровнях UART не подтверждает их у сфотографированного экземпляра. Перед подключением цели нужно проверить фактическую схему, положение перемычки и уровень TXD. Выбор 3,3 В на VDD сам по себе не доказывает безопасный уровень TXD для GPIO 3,3 В. DTR/RTS на этой четырёхконтактной гребёнке не выведены, поэтому автоматический вход в загрузчик не предполагается.

Первичный тест замыкает TXD на RXD самой платы и использует USB Raspberry Pi 4, не его GPIO. VDD остаётся свободным, поэтому конфликт источников питания исключён. Успешное эхо подтверждает обмен через адаптер, но не режим загрузчика целевого устройства. Для последующего подключения нужны перекрёстные TX/RX, общая земля и совпадающие логические уровни.

Olimex BB-CH340T Rev.A с miniUSB. Положение перемычки выбирает VDD; уровни UART этого экземпляра нужно проверить перед подключением.

Olimex BB-CH340T Rev.A с mini-USB. Фото из каталога RLX.sk; исходный фон удалён, пропорции и детали сохранены. Разрешение на повторное использование изображения не подтверждено.

Источник изображения: rlx.sk, исходный файл. Условия повторного использования не установлены; открытая лицензия не заявляется. Фон отделён, выполнено равномерное масштабирование; реальные детали платы не перерисованы.

BB-CH340T Rev.A: безопасный loopback TXD–RXD без внешней платы. Перемычка подтверждённо выбирает VDD; уровень UART требует отдельной проверки. Авторская схема SLDV LAB.

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

Назначение
Мост USB ↔ UART
Каналов UART
1
Формат теста
115200 бод, 8N1, без flow control
Интерфейс
UART
Питание модуля
Olimex BB-CH340T Rev.A питается от USB 5 В; перемычка выбирает выход VDD 3,3/5 В. Уровни UART сфотографированного экземпляра не подтверждены из-за расхождения исходных PCB и схемы; до подключения GPIO их нужно проверить.

ПРАКТИКА

Подключение

Контакт модуляКонтакт платыНазначение
mini-USBUSB-A Raspberry Pi 4 Model BКабель USB-A → mini-USB с передачей данных; для Rev.B нужен micro-USB.
TXDRXD этого же адаптераОдна перемычка для loopback; не соединять TXD с другим выходом.
VDD и GND гребёнкиНе подключать в loopbackАдаптер питается от USB; перемычка только между TXD и RXD, внешней платы нет.

Подходит для Raspberry Pi, Arduino, ESP32. Выберите контакты по документации своей платы.

ВАШ ПРОЕКТ · ВАШ ДАТЧИК

Интегрируйте модуль с ChatGPT

Скопируйте запрос в ChatGPT. Укажите свою плату и среду разработки — получите подключение и код для своего проекта.

Помоги интегрировать Olimex BB-CH340T Rev.A на CH340T. Уточни целевую плату, ОС, уровни логики и задачу. Проверь mini-USB и четырёхконтактную гребёнку, начни с безопасного loopback TXD–RXD, затем дай драйвер, подключение и полный пример с тайм-аутами. У BB-CH340T Rev.A перемычка выбирает VDD; уровни UART сфотографированного экземпляра не установлены из-за расхождения исходных PCB/netlist и схемы. Выбор VDD 3,3 В не подтверждает уровень TXD 3,3 В: до подключения GPIO проверь фактическую цепь и уровень сигнала. DTR/RTS наружу не выведены: для прошивки отдельно объясни ручной вход в загрузчик и питание цели.

Библиотеки

Установите библиотеку для своей среды и откройте пример из её документации.

Что именно прописать

Среда
Raspberry Pi 4 Model B; Raspberry Pi OS; Python 3; pySerial 3.5

Используется USB-порт, а не 40-контактная GPIO-гребёнка.

Зависимость
pyserial==3.5

Установить в виртуальное окружение Python; import serial.

UART
115200, 8N1

Параметры теста; рабочий baud зависит от целевого устройства.

Запуск
python uart_loopback.py /dev/ttyUSB0

Сохранить пример как uart_loopback.py и заменить путь фактическим портом адаптера.

Python: полный loopback-тест USB-UART

python
import argparse
import sys
import serial

parser = argparse.ArgumentParser(description="USB-UART TXD-RXD loopback")
parser.add_argument("port", help="Порт именно адаптера, например /dev/ttyUSB0")
args = parser.parse_args()
payload = b"SLDV UART loopback\r\n"
try:
    with serial.Serial(args.port, 115200, timeout=1, write_timeout=1,
                       bytesize=serial.EIGHTBITS, parity=serial.PARITY_NONE,
                       stopbits=serial.STOPBITS_ONE,
                       xonxoff=False, rtscts=False, dsrdtr=False) as uart:
        uart.reset_input_buffer()
        if uart.write(payload) != len(payload):
            raise RuntimeError("Неполная запись")
        uart.flush()
        reply = uart.read(len(payload))
        if reply != payload:
            raise RuntimeError(f"Нет корректного эха: {reply!r}")
        print("OK: отправленные и принятые байты совпали")
except (serial.SerialException, OSError, RuntimeError) as error:
    print(f"Ошибка: {error}", file=sys.stderr)
    sys.exit(1)

Полный скрипт для указанной USB-схемы. API сверено с pySerial 3.5; на оборудовании не запускалось. Если порт не открывается, проверьте кабель, имя устройства, права доступа и занятость порта.

Проекты с этим компонентом

Все проекты

Связанные проекты пока не опубликованы.

Связанные материалы и компоненты