Программатор CH341A: как прошить микросхему памяти без пайки

Программатор CH341A: как прошить микросхему памяти без пайки

Инженерам-электронщикам, радиолюбителям, — каждому, кто занимается эксплуатацией, обслуживанием, ремонтом электроники, необходим программатор в принципе. Починка телевизоров, компьютеров, спутниковых ресиверов и многой другой аппаратуры, как правило, требует прошить микросхему памяти без выпаивания из платы. Так вот для этих целей разработан программатор CH341A микросхем памяти универсальный. Небольшой по размерам электронный прибор подключается к порту USB компьютера и позволяет быстро программировать микросхемы памяти 24хх, 25хх серий и аналогичных. Рассмотрим это устройство для лучшего представления, понимания, применения на практике.

Программатор микросхем памяти еепром/флеш — CH341A

Напомним: микросхемы памяти серий 24хх (eeprom), 25хх (serial flash) используются в схемах электронной техники достаточно часто. Такого рода чипы присутствуют в составе практически любой конструкции современной бытовой / промышленной аппаратуры, управляемой через микроконтроллеры.

Для электронщиков, работающих с такой аппаратурой нужным инструментом является программатор, в частности, модель CH341A, позволяющая выполнять программирование чипов памяти без выпаивания из состава печатной платы.

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

Универсальный программатор ch341a
Универсальный программатор CH341A для работы с широко распространёнными микросхемами памяти типа EEPROM и FLASH. Обзавестись таким девайсом обязан каждый уважающий себя электронщик

Сборка устройства выполнена на базе микроконтроллера «USB Bus Convert Chip» серии CH341A. Программатор рассчитан на физическое подключение к порту USB компьютеров, работающих под управлением современных ОС Windows. Модуль программирования микросхем памяти собран на печатной плате размерами 45х25 мм (см. картинку ниже).

Программатор ch341a для микросхем памяти
Внешний вид монтажной платы программатора с нижней стороны. На площади размерами 45х25 мм расположился сам микропроцессор и сопутствующая обвязка электронными микроэлементами

На одной стороне печатной платы размещены электронные компоненты программатора CH341A. На второй стороне электронной платы установлена механическая панель (ZIF) под временное крепление программируемых микросхем. ZIF-панель поддерживает чипы в корпусах DIP, обеспечивает удобства работы пользователя, когда выполняется считывание или «прошивка» чипов памяти.

Универсальный программатор CH341A — применение в работе

Подключение микросхем флэш-памяти 25хх серии с корпусным исполнением SOP8/SOP16 на программаторе осуществляется через соответствующие контактные площадки. Две таких площадки располагаются непосредственно на монтажной плате программатора CH341A рядом с ZIF-панелью.

ch341a программатор в комплекте
Программатор универсальный CH431A и комплект дополнительных элементов. Миниатюрная плата с отверстиями для штырьков, на обратной стороне имеет площадки под чипы SOP

Также в комплекте с программатором CH341A поставляется дополнительная монтажная печатная плата. Этот аксессуар применяется на случай программирования микросхем памяти с архитектурным исполнением корпусов SOP8/SOP16.

Под внутрисхемное программирование на печатной плате программатора CH341A выведены контакт питания под напряжение 3.3 вольта и соответствующие контакты ISP интерфейса:

  • MOSI;
  • MISO;
  • CLK;
  • CS;
  • GND.

Вместе с тем есть возможность работать с периферией по интерфейсу RS232 (выводы на плате RX, TX, GND). Схема программатора CH341A рассчитана под питание постоянным напряжением 5 вольт от внешнего источника. Это напряжение, при подключении программатора к персональному компьютеру, поступает по шине USB.

Связь ch341a с компьютером через usb
Подключенный к USB порту компьютера программатор CH341A для микросхем памяти . Свечение красного индикатора свидетельствует о наличии питания в схеме устройства

На печатной плате программатора встроен индикатор наличия питания – светодиод красного цвета. Режим внешнего или внутреннего программирования включается съёмом или установкой перемычки на контактах S/P (serial/parallel), также внедрённых в схему программатора CH341A. По умолчанию перемычка установлена.

Положению установленной перемычки на контактах S/P (serial/parallel) программатора CH341A соответствует режим внутреннего программирования. В этом случае:

  • чтение,
  • верификация,
  • запись чипов памяти,

осуществляются непосредственно через ZIF-панель программатора CH341A. Между тем на плате программатора универсального CH341A перемычка может быть снята с контактов S/P (serial/parallel). Программирование в таком режиме допускает непосредственное подключение к программируемой микросхеме памяти без выпаивания из платы.

Программатор CH341A — программное обеспечение прошивки/считывания

Действие универсального физического модуля CH341A на программном уровне поддерживается «родительским» программным обеспечением — «CH341A Programmer». Софт свободно (бесплатно) распространяется по сети Интернет (можно скачать здесь).

Интерфейс рабочего программного окна прост для восприятия и понимания как начинающим электронщикам, так и профессионалам. Все основные обозначения программного интерфейса переведены на русский язык. В целом программой поддерживается несколько региональных языков интерфейса.

PROGRAMM

Окно программного обеспечения под ch341a
Таким выглядит окно программного обеспечения для программатора CH341A. Удобный лёгкий для восприятия и понимания интерфейс, поддерживающий обозначения на русском языке

Конечно же, чтобы программное обеспечение удачно состыковать с устройством, корректно и эффективно программировать, требуется установка системных драйверов. Это компоненты, дополняющие ПО, как правило, включены в установочный пакет программного софта.

При подключении программатора на порт USB, система автоматически выдаёт сообщение о необходимости установки драйверов устройства. Нужно просто указать путь к папке, где находятся требуемые файлы. Правда, последними версиями «Windows» запрашивается цифровая подпись. Но это не проблема для пользователей.

Тонкости программирования микросхем памяти через интерфейс CH341A

Логичный вопрос начинающих электронщиков: как прошить микросхему памяти eeprom в корпусе DIP с помощью этого устройства? Так вот, работа с чипами памяти EEPROM (24хх, 25хх) в корпусном исполнении DIP, осуществляется, примерно, следующим образом:

  1. На ZIF-панели рукоятку установить перпендикулярно корпусу.
  2. Вставить микросхему в ячейку согласно обозначению на плате 24хх или 25хх (1 ножка ближе к рукоятке).
  3. Опустить рукоятку в положение параллельно корпусу панели.
  4. Подключить программатор CH341A на USB порт.
  5. Запустить Programmer и выполнить требуемые действия (считывание, прошивка, сравнение контрольных сумм и т.д.).

Программирование чипов из серии флэш-памяти 25хх с корпусным исполнением SOP делается несколько иначе. Контактная ZIF-панель в этом случае может также использоваться, но при условии, если микросхема монтируется на дополнительной печатной плате.

BLASTER

Вид программатора сверху
Верхний — рабочий вид программатора, где расположена ZIF-панель. Указанное положение вставленной микросхемы неверное. Ключ микросхемы должен располагаться ближе к рукоятке. К тому же серия памяти 93C не поддерживается программатором CH341A

Дополнительную печатную плату необходимо оснастить контактными электродами, впаяв электроды в соответствующие отверстия платы. Операционную (программируемую) микросхему также придётся подпаивать на контактные площадки.

Между тем существует упрощённый способ коммуникации. На основной плате программатора CH341A имеются площадки под конфигурацию SOP. На такую площадку аккуратно накладывают программируемый чип с тем расчётом, чтобы ножки микросхемы точно попадали на контактные дорожки.

RT809F

Площадки под размещение чипов SOP
Контактные площадки под размещение микросхем памяти в корпусном исполнении типа SOP. Две площадки под серию 25хх и одна под серию 24хх

Следует проконтролировать соответствие расположения микросхемы по ключу на корпусе и на плате. Там есть указатель контакта первой ножки чипа. Затем чип аккуратно прижимают миниатюрной прищепкой. Дальше всё делается стандартным образом – подключение к порту компьютера и программирование микросхемы.

Программатор CH341A: где купить и какая цена

Купить устройство выгоднее на известном портале Aliexpress. Цена, заявленная китайскими продавцами, чисто символическая (не более 200 руб. вместе с пересылкой). Быстрее и проще покупка производится через федеральный Маркет Яндекса. Предложения ниже:

 

Единственное неудобство для покупателя в случае запроса через китайский shop-портал AliExpress – приходится ожидать прибытия посылки в Россию примерно месяц-полтора. Но если учитывать открывающиеся возможности с приобретением этого товара, можно подождать и 3 месяца.

CH341A

Программатор на aliexpress
Страница одного из продавцов Aliexpress, предлагающего программатор CH341A купить за 112 руб. Это предложение проверено — можно смело покупать, к примеру, за яндекс-деньги

Читать и «шить» программатором CH341A доступно чипы памяти следующих производителей:

  • Atmel;
  • Amic;
  • EON;
  • ST;
  • Excel Semiconductor Inc;
  • NexFlash;
  • MXIC;
  • Chingis Technology Corporation;
  • WINBOND;
  • Saifun Semiconductors.

Таблица поддерживаемых микросхем программатором CH341A

ATMEL AT25DF041A, AT25DF321, AT25F004, AT25F512A, AT25F2048, AT25F4096, AT25F1024A, AT25FS010, AT25FS040, AT26DF081A,AT26DF161A, AT26DF321, AT26F004
AMIC A25L05P, A25L10P, A25L20P, A25L40P, A25L80P, A25L16P
EON EN25B05, EN25P05, EN25B10, EN25P10, EN25BF20, EN25P20, EN25F20, EN25B40, EN25P40, EN25F40, EN25B80, EN25P80, EN25F80, EN25T80, EN25B16, EN25P16, EN25B32, EN25P32, EN25B64, EN25P64
ST M25P05A, M25P10A, M25P20, M25P40, M25P80, M25P16, M25P32, M25P64, M25PE10, M25PE20, M25PE40, M25PE80, M25PE16, M25PE32, M45PE10, M45PE20, M45PE40, M45PE80, M45PE16, M45PE32
EXCEL SEMICONDUCTOR INC ES25P10, ES25P20, ES25P40, ES25P80, ES25P16, ES25P32
NEXFLASH NX25P80, NX25P16, NX25P32
MXIC MX25L512, MX25L1005, MX25L2005, MX25L4005, MX25L8005, MX25L1605, MX25L3205, MX25L6405, MX25L6445, MX25L6405
CHINGIS TECHNOLOGY CORPORATION Pm25LV512, Pm25LV010, Pm25LV020, Pm25LV040, Pm25LV080, Pm25LV016, Pm25LV032, Pm25LV064
WINBOND W25P10, W25X10, W25Q10, W25P20, W25X20, W25Q20, W25P40, W25X40, W25Q40, W25P80, W25X80, W25Q80, W25P16, W25X16, W25Q16, W25P32, W25X32, W25Q32, W25P64, W25X64, W25Q64
SAIFUN SA25F005, SA25F010, SA25F020, SA25F040, SA25F080, SA25F160, SA25F320

Таблица выше представляет далеко не полный список фирм, микросхемы памяти которых доступны для чтения и записи кода программатором CH341A.

После чтения содержимого чипа устройством, программа сохраняет файлы в указанную папку с присвоением расширения *.bin (бинарный). Этот момент процесса программирования нужно учитывать. Например, когда для новой прошивки микросхемы используются файлы дампов, полученные из других источников, наделённые другими типами расширения. Перед загрузкой программатором таким файлам нужно заменить расширение на используемое по умолчанию (*.bin).

Как прошить микросхему памяти без выпаивания

Программатор микросхем памяти проверялся на чтении дампа eeprom-памяти контроллера Pixel (2 шт. ATMLH132). Результат впечатляющий. Работа на чтение информации, которую не удавалось сделать с помощью других конструкций программаторов, потребовала не более 3-4 секунд времени. При этом читаемые микросхемы памяти из платы контроллера не выпаивались.

На интерфейс программатора CH341A подключался непосредственно модуль памяти контроллера Pixel, состоящий из двух чипов памяти 24 серии. Подключение производилось через стандартный 4-контактный разъём.  Опыт — как читать дамп с микросхемы серии 24С04 без выпаивания чипа из платы, описан далее.

Чтение дампа микросхем памяти программатором CH341A 

Чтобы иметь возможность подключаться к микросхемам в DIP корпусах непосредственно на плате, нужно обзавестись контактной «прищепкой». Этот инструмент также можно купить недорого на упомянутом ранее сайте.

USB Willem

Прищепка для микросхем dip
Набор аксессуаров для программатора, куда входит прищепка-контактор под микросхемы в корпусе DIP и переходная плата, с помощью которой осуществляется контакт с ZIF-панелью

Прищепка устанавливается на корпус микросхемы с таким расчётом, чтобы все контакты точно «сели» на ножки программируемого чипа. Первая контактная ножка рабочей микросхемы должна соответствовать контакту «прищепки» с подведённым красным проводом.

Следует помнить: плата с рабочим чипом, на который пишется или с которого снимается дамп, должна отключаться от любых источников питания, включая литий-ионные батареи (актуально для компьютерных материнских плат). На программаторе CH341A перемычка на контактах «S/P» снимается.

AVR Prog

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

Ответный конец кабеля с «прищепкой» подключается на переходник (мини-плата) через штыревое соединение, и далее к ZIF-панели программатора CH341A. В зависимости от типа программируемой микросхемы, плата-переходник устанавливается в контактные гнёзда для чипов серии 24хх или 25хх.

Дальше останется только включить программатор CH341A в USB порт, запустить сопровождающую программу на компьютере и можно начинать работать с дампом микросхем памяти. К примеру, для указанной серии микросхем 24С04 потребовалось времени на считывание дампа не более 3 секунд:

Дамп микросхемы памяти 24c04
Результат работы с микросхемой памяти в условиях её полного контакта с платой устройства. Съём дампа осуществлялся без выпаивания микросхемы из платы устройства

Некоторые микросхемы памяти, рассчитанные под напряжение питания 5 вольт, иногда не реагируют на действия программатора CH341A. Выражается это результатом, когда дамп не считывается и не пишется.

Причина отсутствия чтения/записи на программаторе CH341A

Объясняется причина отсутствия рабочего эффекта просто: по умолчанию схемой программатора CH341A используется рабочее напряжение (стабилизированное от USB) равное 3.3 вольтам. При таком малом уровне напряжения и токе не превышающем 500 мА, некоторые серии чипов попросту «не входят» в режим программирования.

Принципиальная схема программатора ch341a для микросхем памяти
Принципиальная схема программатора CH341A, предназначенного для программирования микросхем памяти серий 24хх (eeprom) и 25хх (флеш память)

К тому же следует учитывать потери тока через ёмкости электронной платы, где установлен операционный чип. Для подобных случаев необходим достаточный рабочий уровень напряжения программирования, а также достаточно высокий токовый потенциал.

Соответственно, устранение причины – подача напряжения программирования непосредственно от более мощного внешнего источника питания. Для этого используется 7-контактный разъём, присутствующий на плате программатора CH341A. Обозначение контактов разъёма есть на принципиальной схеме (см. выше).

Программирование микросхем памяти: видеоролик-инструкция

Видеороликом ниже представлена своего рода инструкция на программирование микросхем памяти. Материал позволяет в режиме визуального обучения получить соответствующие навыки, что рекомендуется начинающим электронщикам: