В статье мы рассмотрим программатор CH341A и работу с ним на примере программирования микросхемы ПЗУ 25L8005.
Для проекта нам понадобятся:
- программатор CH341A;
- микросхемы памяти EEPROM.
1Обзор программатораCH341A
Как следует из названия программатора, его основная часть – это микросхема CH341A. Рядом с ней располагается кварцевый резонатор на 12 МГц, а также стабилизатор напряжения AMS1117, который выдаёт 3,3 вольта. По бокам от USB разъёма, которым программатор подключается к компьютеру, располагаются светодиодные индикаторы: сверху (на фото) – индикатор питания (POWER), а снизу – индикатор обмена данными между ПК и программатором (RUN). Он включается, когда программатор считывает данные из программируемой микросхемы и когда происходит запись.
Для подключения программируемых микросхем установлена 16-контактная DIP панель с нулевым усилием (ZIF), которая промаркирована TFXTDOL. С обеих сторон панели располагаются две группы контактов. Их назначение описано на нижней стороне программатора и приводится на фото ниже:
По названиям выводов понятно, что верхняя (на фото) гребёнка предназначена для обмена по интерфейсу SPI, а нижняя – по UART. Также тут имеется площадка для пайки, на которую можно припаять программируемую микросхему.
Лучше использовать переходные панели с нулевым усилением (т.н. ZIF панели), которые позволяют подключать микросхемы к программатору без пайки посредством DIP панели на верхней стороне.
С помощью перемычки, которая по умолчанию установлена между контактами 1 и 2, можно менять режим работы программатора. Так, если перемычка установлена между контактами 1 и 2, программатор работает в параллельном режиме и определяется в диспетчере устройств Windows как параллельный порт (USB-EPP/I2C), а если между контактами 2 и 3 – в последовательном режиме и определяется в диспетчере устройств как COM-порт.
Программатор предназначен для чтения и записи данных в микросхемы flash-памяти серий 24 и 25. На шелкографии на нижней стороне программатора CH341A указано, каким образом нужно подключать программируемую микросхему каждой из серий. Приобрести программатор можно на Али-Экспресс, например, здесь, а подходящие микросхемы памяти здесь.
2Софт для работы с программатором CH341A
Программатор CH341A поставляется с программой, которая, к сожалению, давно прекратила своё развитие. Последняя версия программы 1.30 датируется 2009 годом. Программа имеет предельно простой и интуитивно понятный интерфейс, который мы подробней рассмотрим чуть далее. Скачать программу можно в приложении в конце статьи.
Также существует альтернативное программное обеспечение (например, Программатор SPI, I2C, Microwire FLASH/EEPROM v1.4.0), которое, к сожалению, также не отличается дружелюбным интерфейсом и на сегодняшний день более не поддерживается.
Однако, со своей основной задачей программатор вполне успешно справляется даже со штатным программным обеспечением. В чём мы сейчас и убедимся.
3Чтение и запись ПЗУ с помощью программатора CH341A
Установим программируемую микросхему в DIP-панель и зажмём с помощью специального рычага. Первая ножка микросхемы flash-памяти обозначена на корпусе точкой.
На нижней стороне программатора, как мы уже видели, отмечено, как необходимо располагать программируемую микросхему.
Будьте предельно внимательны при установке программируемой микросхемы. Если её неправильно (и неудачно) подключить, можно вывести из строя или микросхему, или сам программатор. Явным признаком неправильного подключения микросхемы может служить сильный разогрев частей программатора или программируемой микросхемы.
Подключим программатор к компьютеру, перемычка установлена между контактами 1 и 2. При первом запуске программатора необходимо установить драйверы. Скачать драйверы для программатора CH341A можно по ссылке в конце статьи.
После установки драйвера запустим программу CH341A Programmer. Программа автоматически определит, что программатор подключён. В правом нижнем углу в статусной строке программы появится надпись, оповещающая о том, что программа нашла программатор: Состояние: Подключено
Если программа не определила программатор, статусная строка отобразит соответствующее предупреждение.
Нажмите кнопку «Определить» (в разных версиях программы встречаются разные варианты перевода, а изначально интерфейс программы на китайском языке). Программа, если сможет, покажет наиболее подходящие варианты. Также вы можете выбрать тип микросхемы вручную, нажав кнопку «Поиск чипов».
После того, как чип выбран, нажмите кнопку «Чтение». Программа прочитает и отобразит содержимое чипа в шестнадцатеричном формате (а также в виде текстовых символов в кодировке ASCII).
Кстати, в программе отображается подсказка в виде изображения, как должна быть расположена микросхема при программировании. Так вот, не смотрите на неё. Правильное положение указано на самом программаторе CH341A, как мы видели ранее, и оно не совпадает с нарисованным в программе.
Для записи данных в ПЗУ нужно ввести в поле представления данных в 16-ном формате необходимый массив байтов, а затем нажать кнопку «Запись». Программа начнёт запись данных в микросхему флеш-памяти. Светодиодный индикатор RUN на программаторе загорится оранжевым цветом. По завершении записи программа проверит успешность записи, сверив переданный массив с содержимым в памяти микросхемы, а индикатор погаснет.
Можно убедиться в том, что данные успешно записаны, отключив программатор от компьютера, а затем подключив его и заново считав содержимое ПЗУ.
Можно сохранить считанный из ПЗУ массив данных в файл. Для этого нужно нажать кнопку «Сохранить» и указать желаемое имя файла. А можно, наоборот, загрузить в память данные из файла, нажав кнопку «Открыть».
Как правило, расширения файлов для хранения данных ПЗУ – *.bin, *.hex и *.rom. Но по сути расширение файла в данном случае не имеет никакого значения.
Скачать программу CH341 Programmer и драйверы для программатора CH341A можно по ссылкам в конце статьи.
Программатор микросхем BIOS 24 и 25 серии CH341A Pro
Программатор CH341A Pro используется для программирования микросхем BIOS компьютеров, ноутбуков, видеокарт, мультимедийных плееров, памяти телевизоров, ЖК-дисплеев, маршрутизаторов, игровых приставок, спутниковых ресиверов и др.
Как пользоваться программатором CH341A Pro:
Для начала использования программатора необходимо установить драйвер и программное обеспечение:
Скачайте ПО (CH341A Programmer версии 1.3) и драйвер по ссылке
Системные требования ПО:
OC: Win98, WinME, WIN2K, WinXP, Vista, Win7, Win8, Win10 (32-64 bit)
Распакуйте скачанный архив и запустите программу CH341A_130.exe
Подключите программатор к компьютеру (должен загореться светодиод POWER).
Драйвер к программатору может установится автоматически. Если Windows не удалось установить драйвер, найдите в скаченном архиве папку CH341Parallel_driver_support WIN7 и установите драйвер из нее.
После того как программа и драйвер будут установлены можно приступить к программированию.
Чтобы запрограммировать необходимую микросхему на ZIF панели устройства, нужно открыть пазы для её установки, подняв фиксаторную ручку. Установить микросхему согласно ключу нарисованному на программаторе. Зажать фиксаторной ручкой микросхему в пазах. Cм. рисунок 1.1 (правильная установка микросхемы BIOS 25 серии)
Рис. 1.1 (правильная установка микросхемы BIOS 25 серии)
Если нужно прошить микросхемы 25-й серии, в корпусе SOP8 или SOP16, на плате программатора предусмотрены контактные площадки для микросхем в таких корпусах. Можно припаять микросхему к контактной площадке (см рисунок 1.2.) или просто прижать прищепкой к контактам. Так же можно воспользоваться дополнительной платой (идет в комплекте с программатором) и устанавливать/припаять микросхему на нее (см. рисунок. 1.3.)
Рис. 1.2. |
Рис. 1.3 |
Запрограммировать микросхему 25-й серии, в корпусе SOP8 можно прямо на материнской плате без выпаивания. Для этого можно воспользоваться прищепкой-переходником (в комплекте не идет. приобретается отдельно) (см. рисунок 1.4.) Красный провод на шлейфе прищепки — контакт который должен соответствовать первой ножке микросхемы (на самой микросхеме обычно обозначена точкой). При таком способе прошивки, плату нужно обязательно обесточить и вынуть батарейку BIOS.
Рис. 1.4
В программаторе есть возможность внутрисхемного программирования с помощью ISP интерфейса (этот метод программирования описываться здесь не будет, информацию можно найти на форумах в интернете)
Перемычку для переключения режимов программирования не трогаем! Даже когда программируем без выпаивания через прищепку. Она должна соединять 1 и 2 контакты. Убираем перемычку только в случае если используем ISP интерфейс.
Итак приступаем непосредственно к программированию:
ПОСЛЕ!!! установки/подключения микросхемы — подключите программатор к USB порту (возможно при подключении потребуется подождать пока Windows установит драйвер на устройство) и запустите программу CH341A Programmer. Интерфейс программы можно переключить на русский язык.
Если микросхема подключена правильно — все кнопки в программе будут активны.
Далее нужно будет выбрать название микросхемы, для чего можно нажать кнопку «ДЕТЕКТ» (программа сама предложит наиболее подходящие микросхемы) или выполнить поиск вручную через кнопку «ПОИСК».
Когда название микросхемы будет выбрано в программе, можно производить все необходимые действия с вашей микросхемой — считать, сохранить дамп, очистить, записать и т. д.
Интерфейс программы интуитивно понятен и прост:
Поддерживаемые программатором CH341A Pro микросхемы 25 серии
AMIC
A25L512 A25L05P A25L10P A25L010 A25L020 A25L20P A25L40P A25L040 A25L080 A25L80P A25L016 A25L16P A25L032
ATMEL
AT25F512 AT25F512B AT25F512A AT25FS010 AT25F1024 AT25F1024A AT25F2048 AT25DF021 AT25F4096 AT25FS040 AT25DF041A AT25DF321A AT26DF321 AT25DF321 AT25DF641
COMMON
25X005 25X05 25X10 25X20 25X40 25X80 25X16 25X32 25X64 25X128 25X256 25X512 25X1024 25X2048
EON
EN25F05 EN25P05 EN25LF05 EN25F10 EN25LF10 EN25D10 EN25P10 EN25F20 EN25D20 EN25LF20 EN25F40 EN25D40 EN25LF40 EN25Q80 EN25D80 EN25F80 EN25P80 EN25T80 EN25B16T EN25T16 EN25B16 EN25D16 EN25F16 EN25Q16 EN25P32 EN25Q32 EN25F32 EN25B32 EN25B32T EN25Q64 EN25B64 EN25F64 EN25B64T EN25F128 EN25Q128
ES
ES25P10 ES25P20 ES25M40A ES25M40 ES25P40 ES25M80 ES25P16 ES25M80A ES25P32 ES25P80 ES25M16 ES25M16A
ESMT (только чтение)
F25L04UA F25L16PA F25L004A F25L32QA F25L08PA F25L32PA F25L008A F25L016A
GIGADEVICE
GD25Q512 GD25Q10 GD25Q20 GD25F40 GD25D40 GD25Q80 GD25D80 GD25T80 GD25F80 GD25Q16 GD25Q32 GD25Q64 GD25Q128
KH
25L8036D
MXIC
MX25V512 MX25L4005A MX25L1635D MX25L3237D MX25L6455E MX25L12845E MX25L512 MX25V4035 MX25L1605D MX25L3225D MX25L6408D MX25L1005 MX25V4005 MX25L1608D MX25L3205D MX25L6406E MX25L2005 MX25V8005 MX25L3235D MX25L3206E MX25L6445E MX25L8035 MX25L8005 MX25L3208D MX25L6405D MX25L12805D
NEXFLASH
NX25P10 NX25P20 NX25P40 NX25P80 NX25P16 NX25P32
NSHINE
MS25X05 MS25X16 MS25X10 MS25X32 NS25X20 MS25X64 NS25X40 MS25X128 MS25X80
PMC
PM25LV512A PM25LV016B PM25LV010A PM25LV020 PM25LV040 PM25LV080B
SAIFUN
SA25F005 SA25F160 SA25F010 SA25F320 SA25F020 SA25F040 SA25F080
SPANSION
S25FL004A S25FL032A S25FL040A S25FL064A S25FL008A S25FL128P S25FL160 S25FL129P S25FL016A S25FL128A
SST (только чтение)
SST25VF512A SST25VF512 SST25VF010 SST25VF010A SST25 SST25VF020 SST25VF040B SST25VF040A SST25VF040 SST25′ SST25VF016B SST25VF032B SST25VF064C
ST
M25P05A M25PE10 M25P10A M25P20 M25PE20 M25PE40 M25P40 M25PE80 M25P80 M25PX80 M25PX16 M25P16 M25PE16 M25P32 M25PE32 M25PX32 M25PX64 M25P64 M25PE64 M25P128
WINBOND
W25X10 W25X10L W25P10 W25X10AL W25X10A W25P20 W25X20AL W25X20A W25X20 W25X20L W25X40A W25P40 W25Q40BV W25X40L W25X40 W25X40AL W25Q80BV W25Q80V W25X80 W25P80 W25X80A W25X80L W25X80AL W25P16 W25Q16BV W25Q16V W25X16 W25Q32BV W25Q32V W25X32 W25P32 W25Q64BV W25X64 W25Q128BV
Поддерживаемые программатором CH341A Pro микросхемы 24 серии
ATMEL
AT24C01B AT24C01 AT24C01A AT24C02 AT24C02A AT24C02B AT24C04B AT24C04 AT24C04A AT24C08A AT24C08B AT24C08 AT24C16 AT24C16A AT24C16B AT24C32B AT24C32A AT24C32 AT24C64 AT24C64A AT24C64B AT24C128 AT24C128A AT24C128B AT24C256B AT24C256 AT24C256A AT24C512B AT24C512A AT24C512 AT24C1024 AT24C1024A AT24C1024B
CATALYST
CAT24C01 CAT24WC01 CAT24WC02 CAT24C02 CAT24C04 CAT24WC04 CAT24WC08 CAT24C08 CAT24WC16 CAT24C16 CAT24WC32 CAT24C32 CAT24WC64 CAT24C64 CAT24WC128 CAT24C128 CAT24WC256 CAT24C256 CAT24C512 CAT24WC512 CAT24C1024 CAT24WC1024
COMMON
24C01 3V 24C01 5V 24C02 3V 24C02 5V 24C04 5V 24C04 3V 24C08 3V 24C08 5V 24C16 5V 2406 3V 24C32 5V 24C32 3V 24C64 5V 24C64 3V 24028 5V 24C128 3V 24C256 5V 24C256 3V 24C512 5V 24C512 3V 240024 3V 24C1024 5V 24C2048 5V 24C2048 3V 24C4096 5V 24C4096 3V
FAIRCHILD
FM24C01L FM24C02L FM24C03L FM24C04L FM24C05L FM24C08L FM24C09L FM24C17L FM24C16L FM24C32L FM24C64L FM24C128L FM24C256L FM24C512L FM
HOLTEK
HT24C01 HT24LC01 HT24CD2 HT24LC02 HT24C04 HT24LC04 HT24C08 HT24LC08 HT24C16 HT24LC16 HT24LC32 HT24C32 HT24LC64 HT24C64 HT24C128 HT24LC128 HT24C256 HT24LC256 HT24LC512 HT24C512 HT24C1024 HT24LC1024
ISSI
IS24O01 IS24C02 IS24C04 IS24C08 IS24C16 IS24C32 IS24C64 IS24C128 IS24C256 IS24C512 IS24C1024
MICROCHIP
MIC24LC014 MIC24AA01 MIC24AA014 MIC24LC01B MIC24LC02B MIC24AA02 MIC24C02C MIC24AA025 MIC24AA04 MIC24LC04B MIC24LC024 MIC24AA024 MIC24LC025 MIC24LC08B MIC24AA08 MIC24LC16B MIC24AA16 MIC24LC32 MIC24AA32 MIC24LC64 MIC24FC64 MIC24AA64 MIC24FC128 MIC24AA128 MIC24LC128 MIC24AA256 MIC24LC256 MIC24FC256 MIC24AA512 MIC24LC512 MIC24FC512 MIC24AA1024
NSC
NSC24C02L NSC24C02 N5C24C64
RAMTRON
FM24CL04 FM24C04A FM24CL16 FM24C16A FM24CL64 FM24C64 FM24C256 FM24CL256 FM24C512
ROHM
BR24L01 BR24C01 BR24L02 BR24C02 BR24L04 BR24C04 BR24L08 BR24C08 BR24L16 BR24C16 BR24L32 BR24C32 BR24C64 BR24L64
ST
ST24C01 ST24C32 ST24C02 ST24C64 ST24C04 ST24C08 ST24C16
XICOR
X24O01 X24C02 X24C04 X24C08 X24C16
Подключение CH341A Pro к микросхеме в корпусе SOP8 без выпаивания через прищепку — переходник.
Прищепка — переходник для программатора CH341A Pro позволяет программировать микросхемы в корпусе SOP8 8pin без выпаивания.
1. Подсоедините переходник к программатору, согласно ключу нарисованному на программаторе. Первая ножка микросхемы обозначена на рисунке (на программаторе) точкой. На переходнике от прищепки к программатору ножки пронумерованы. См. рисунок 2.1 (правильное подключение переходника прищепки для программирования микросхемы 25 серии)
Рис. 2.1. Правильное подключение переходника прищепки для программирования микросхемы 25 серии
2. Подключите шлейф прищепки к переходнику. Красный провод должен соответствовать 1 ножке переходника.
Перед подключением прищепки к микросхеме на плате, ножки микросхемы желательно почистить, например ножом, скальпелем или чем захотите. Плату нужно обязательно обесточить и вынуть батарейку BIOS.
3. Подсоедините прищепку к микросхеме так, чтобы красный провод был на первой ножке микросхемы. см рисунок 2.2. На самой микросхеме первая ножка обычно обозначена точкой.
ТОЛЬКО ПОСЛЕ!!! подсоединения к микросхеме и убедившись, что все соединено правильно, подключите программатор к USB порту компьютера.
Если все контакты между прищепкой и микросхемой имеются и все подключено правильно — при запуске программы все кнопки интерфейса будут активными и можно приступать к выбору названия микросхемы и программированию.
P.S. Из за особенностей некоторых материнских плат, не все микросхемы удается программировать не выпаивая из материнской платы. В некоторых случаях без выпаивания не обойтись.
Если вы уверены, что все подключили правильно и все контакты имеются, а микросхема не поддается программированию, попробуйте выпаять микросхему, возможно ее программированию мешают другие элементы материнской платы.
Сотрудники различных сервисных центров, а также многие потребители оргтехники, часто используют программатор CH341A EEPROM/SPI для перепрошивки чипа картриджа и микросхем прочих изделий. Тем не менее, даже у опытных пользователей нередко возникают трудности с поиском и установкой специального ПО и драйвера для CH341A. К тому же некоторые новички часто испытывают первоначальные трудности в эксплуатации данного программатора. В связи с этим, мы решили предоставить небольшую инструкцию по прошивке чипа картриджа для принтера Samsung SCX-4200. Кроме того, здесь Вы сможете скачать необходимое программное обеспечение, а также драйвер CH341A для Windows 10.
Краткий обзор программатора CH341A
Программатор CH341A EEPROM/SPI – это специальное изделие, основная функция которого заключается в перепрограммировании микросхем различной компьютерной, периферийной, цифровой, аудио и видео техники. Имеет два различных режима использования: программирования и серийного порта (USB-SERIAL TTL). Применять программатор не сложно, но требуется хоть немного разбираться в данной сфере деятельности. Стоит это устройство очень дешево. Купить CH341A можно за 120-300 рублей. Цена зависит от комплектации. Рекомендуем приобретать набор, в который входит специальная контактная прищепка.
Чтобы прошить чип картриджа (как пример), его необходимо подсоединить к контактной площадке программатора (поддерживается большинство микросхем 24 и 25 серии), а само устройство подключить к USB-порту персонального компьютера. Совместим CH341A с любой операционной системой Windows. Однако на последних версиях ОС Windows (8, 8.1 и 10) регулярно возникают проблемы с установкой совместимого ПО и драйвера для программатора CH341A.
Установка ПО и драйвера CH341A
После того, как выполните подключение программатора к компьютеру, последний, определит CH341A, как неизвестное устройство. Поэтому без драйверов он работать не будет. Естественно, можно попробовать установить/обновить драйвера CH341A через диспетчер устройств компьютера. Но, как правило, это действие не приносит положительного результата. В связи с этим, самый оптимальный вариант – это скачать драйвер программатора CH341A. Но для разных режимов использования необходимо скачивать определенную версию драйвера:
Скачать драйвер CH341A для режима программирования
Скачать драйвер CH341A для режима серийного порта
Как только скачаете архив драйвера CH341A, разархивируйте его в любую удобную папку. Теперь необходимо запустить файл setup.exe (лучше от лица администратора). В открывшемся окне нажмите на кнопку «Install» и дождитесь установки драйвера. После успешной инсталляции ПО нажмите кнопку «Ок». В случае возникновения ошибки, пробуйте установить еще раз, только предварительно отключите на ПК проверку цифровой подписи драйверов (особенно актуально для операционной системы Windows 8, 8.1 и 10). Сделать это можно следующим образом:
- запустите компьютер в безопасном режиме (для Windows 10 зажмите «Shift», откройте «Пуск» -> «Выключение» -> «Перезагрузка»);
- дождитесь перезагрузки ПК и в появившемся окне выберите «Поиск/устранение неисправностей»;
- откройте «Параметры загрузки» и нажмите «Перезагрузить».
Вам предложит несколько вариантов загрузки операционной системы Виндовс 10. Нужно нажать ту кнопку, которой соответствует параметр отключения обязательной проверки подписи драйверов (обычно, это F7). Дождитесь загрузки системы и еще раз попытайте установить драйвер программатора для прошивки чипов. Если проблему так и не удалось побороть, то можно еще раз попытаться установить драйвер устройства, но на чистую ОС компьютера. Иными словами, предварительно переустановить операционную систему ПК (можно сменить на более старую версию Windows 7 или XP).
Кроме того, для полноценной работы программатора, нужно дополнительно установить специальную программу для чтения и записи данных прошивки микросхем. Лучше всего подойдет оригинальное ПО CH341A Programmer. Так как официальный сайт на иностранном языке, предоставляем прямые ссылки на скачивание данной программы разных версий:
Скачать CH341A Programmer 1.29
Скачать CH341A Programmer 1.30
Скачать CH341A Programmer 1.34
ПО не нуждается в установке, достаточно разархивировать архив и выполнить запуск экзешного файла. В качестве альтернативы можно скачать программу NeoProgrammer 2.1.0.19.
Пример прошивки чипа картриджа Samsung SCX-4200 программатором CH341A
Во многих случаях для прошивки микросхем требуется не только работать с программатором, но и с паяльником (выпаивать схемы, делать различные распайки и т.д.). В случае прошивки Samsung SCX-4200, потребуется припаять проводки к контактам чипа картриджа (либо подсоединить при помощи специальных прищепок). Другой конец проводков подсоединяется к контактной площадке программатора по схеме:
- VCC.
- GND.
- CLK.
- DATA.
Теперь подключаем программатор к ПК и запускаем программу CH341A Programmer. В левой части окна ПО обязательно стоит указать тип, производителя и наименование чипа. Далее нажмите кнопку «Читать» на верхней панели программы.
После считывания данных чипа картриджа SCX-D4200A, в основной части программы появится несколько рядов парных символов. Их нужно слегка отредактировать:
- 3 ряд 00000020 – первая пара чисел соответствует ресурсу картриджа. В данном случае необходимо установить значение «03», так как ресурс картриджа составляет 3000 страниц (больше ставить не рекомендуется, так как принтер может выдать ошибку чтения картриджа).
- 4 ряд 00000030 – последние 5 числовых пар соответствуют серийному номеру чипа картриджа (CRUM). Нужно сменить одну любую цифру.
- 5-8 ряд 00000040-00000070 – группа различных парных значений. Для прошивки следует все символы перевести к формату «00».
Как только все отредактируете, нажмите на «Записать Чип», а также на кнопку «Проверка», чтобы убедится в правильности прошивки чипа картриджа Samsung SCX-D4200A. Если все хорошо, то прикрепите чип к расходнику и установите изделие в печатающий аппарат.
Ваше Имя:
Ваш вопрос:
Внимание: HTML не поддерживается! Используйте обычный текст.
Оценка:
Плохо
Хорошо
Введите код, указанный на картинке:
Сегодня рассмотрим простой но очень функциональный программатор на микросхеме CH341A (MinProgramment), который программирует микросхемы 24 и 25 серии используемые в материнских платах, роутеров, ноутбуков, маршрутизаторов и так далее.
Технические параметры CH341A
► Напряжение питания: 5 В, DC
► Интерфейс: USB 2.0
► Программирование/ чтение: FLASH и EEPROM 24-25 серий
► Габариты: 85 мм x 27 мм x 15 мм
► Поддержка ОС: Windows Vista, Windows 7, Windows 8.1, Windows 10
Общие сведения
CH341A Programment, это программатор начального уровня, изготовлена на черном стеклотекстолите (существует вариант на зеленом текстолите) с серебристой окантовкой. В комплект входит зеленая печатная плата и два штыревых разъема 1х4 (шаг 2.54 мм), данный комплект, позволит прошивать микросхемы SMD исполнении, очень удобно, если необходимо прошить пару микросхем, но если планируете использовать программатор постоянно, советую приобрести, так называемые ZIF переходники на 150 mil и 200 mil, позволяющие устанавливать SMD микросхемы без пайки.
На верхней части программатора, установлена микросхема CH341А, рядом располагается кварцевый резонатор на 12 МГц, стабилизатор напряжения AMS1117-3.3 который выдает 3.3В, а так же электрическая обвязка всех этих компонентов (резисторы, конденсатора). Для программирования микросхем, установлена 16 контактная DIP панель с нулевым усилием с маркировкой TFXTDOL. С двух стороны DIP панели, располагается две группы дополнительных контактов, назначение каждого можно посмотреть на обратной стороне платы.
На другой стороне платы, дополнительно добавлено место для установки SMD микросхем (150 mil и 200 mil) и нарисована шёлкография.
Назначение группы контактов 1:
► 1,2,3 – выбор режима работы (1-2 режим Paralell (внутренней) и 2-3 режим Serial (внешней)
► TX – передаваемые данные
► RX – принимаемые данные
► GND – питание земля
► 5V – питание +5 В
Назначение группы контактов 2:
► CLK – линия тактирования (Serial CLock)
► CS – режим работы
► MOSI – прием данных
► MISO – передача данных
► GND – питание земля
► 3.3V – питание +3.3 В
► 5V – питание +5 В
Подключение программатора MinProgramment
Подключаем программатор к порту USB на компьютере, если все нормально, на плате загорится красный светодиод. Далее операционная система начнет поиск драйвера, если драйвера в системе нету, необходимо самостоятельно скачать его CH341SER.ZIP (при ошибки 43 необходимо посмотреть эту статью). Распаковываем архив и запускаем установочный файл «setup.exe», в открытом окне жмем «INSTALL» (драйвер подходит и для CH340).
При включенном, режиме Paralell (1 — 2) в разделе «Интерфейсы» появится новое устройство «USB-EEP/I2C… CH341A», а при включенном режиме Serial (2 — 3) в разделе «Порты (COM и LPT)» появится новое устройство «USB-SERIAL CH341A».
Теперь необходимо установить программное обеспечение для работы с программатором, в примере использую русифицированную «CH341A — USB Programmer 1.30». Скачиваем и разархивируем архив, запускаем установочный файл, процесс установки не сложный и состоит из четырех этапрв.
Программатор готов к прошивке микросхем.
Инструкция по прошивке
Теперь приступим к программированию (режим Paralell). Если программировать микросхемы в SMD корпусе, то необходимо использовать ZIF-панель или адаптер (что идет в комплекте). Припеваем или устанавливаем микросхему и с помощью прижимного рычага, зажимаем адаптер в программаторе. Очень важно, устанавливать микросхему по ключу, в противном случаи можно испортить микросхему.
► Запускаем программу CH341A — USB Programmer 1.3, при приключением и в режиме Paralell, программа автоматически найдет программатор.
► В примере использую микросхему «24C04», нажимаем «Поиск Чипа», выбираем нужный чип 24C04 и жмем «Читать», если все правильно подключено, программатор скачает прошивку.
► Для прошивки микросхемы, необходимо нажать кнопку «Открыть», затем выбираем файл прошивки, и жмем «Авто» микросхема прошита.
► Также есть, программатор позволяет прошивать по ISP интерфейсу (внутрисхемному) и может работать как COM порт (аналогично, адаптеру PL2303HA).
Список поддерживаемых микросхем CH341A (602 шт)
25/26 SPI FLASH
AMIC: A25L05P, A25L512, A25L010, A25L10P, A25L020, A25L20P, A25L040, A25L40P, A25L080, A25L80P, A25L016, A25L16P, A25L032;
ATMEL: AT25F512, AT25F512A, AT25F512B, AT25F1024, AT25F1024A, AT25FS010, AT25DF021, AT25F2048, AT25DF041A, AT25F4096, AT25FS040, AT26DF041A, AT26F004, AT25DF081A 1.8V, AT25DL081 1.8V, AT26DF081A, AT25DF161, AT26DF161, AT26DF161A, AT25DF321, AT25DF321A, AT26DF321, AT25DF641;
COMMON: 25X005, 25X05, 25X10, 25X20, 25X40, 25X80, 25X16, 25X32, 25X64, 25X128, 25X256, 25X512, 25X1024, 25X2048;
EON: EN25B05, EN25B05T, EN25F05, EN25LF05, EN25P05, EN25D10, EN25LF10, EN25P10, EN25D20, EN25F20, EN25LF20, EN25D40, EN25F40, EN25LF40, EN25D80, EN25F80, EN25P80, EN25Q80, EN25QH80, EN25T80, EN25B16, EN25B16T, EN25D16, EN25F16, EN25H16, EN25Q16, EN25QH16, EN25T16, EN25B32, EN25B32T, EN25F32, EN25P32, EN25Q32, EN25QH32, EN25B64, EN25B64T, EN25F64, EN25Q64, EN25QH64, EN25F128, EN25Q128, EN25QH128;
ES: ES25P10, ES25P20, ES25M40, ES25M40A, ES25P40, ES25M80, ES25M80A, ES25P80, ES25M16, ES25M16A, ES25P16A, ES25P32;
ESMT: F25L004A, AF25L04UA, F25L008A, F25L08PA, F25L016PA, F25L16PA, F25L32PA, F25L32QA, F25L64PA;
KH: KH25L4006E, KH25L80360, KH25L8006E(OTP), KH25L1606E(OTP);
FUDAN MICRO: FM25F005, FM25F01, FM25F02, FM25F04, FM25Q08, FM25Q16, FM25Q32;
GIGADEVICE: GD25D05, GD25Q512, GD25D10, GD25Q10, GD25Q20, GD25Q21, GD25D40, GD25F40, GD25LQ40 1.8V, GD25Q41, GD25D80, GD25F80, GD25LQ80 1.8V, GD25Q80, GD25T80, GD25LQ16 1.8V, GD25Q16, GD25LQ32 1.8V, GD25Q32, GD25LQ64 1.8V, GD25Q64, GD25LQ128 1.8V, GD25Q128, GD25LQ256 1.8V;
INTEL: 25F160A33B, 25F320S33B, 25F640S33B;
KH: KH25L4006E, KH25L8006E, KH25L8036D, KH25L1606E;
MICRON: N25Q64A;
MSHINE: MS25X05, MS25X10, MS25X20, MS25X40, MS25X80, MS25X16, MS25X32, MS25X64, M525X128;
MXIC: MX25V512, MX25V512 2.5V, MX25L1005, MX25V1006 2.5V, MX25V1035 2.5V, MX25L2005, MX25L2026, MX25V2006 2.5V, MX25V2035 2.5V, MX25L4005A, MX25U4035 1.8V, MX25V4005 2.5V, MX25V4006 2.5V, MX25V4035 2.5V, MX25L8005, MX25L8006E, MX25L8035E, MX25L8036E, MX25U8033E 1.8V, MX25U8035 1.8V, MX25V8005 2.5V, MX25V8006E 2.5V, MX25V8035 2.5V, MX25L1605D, MX25L1606E, MX25L1608D, MX25L1608E, MX25L1633E, MX25L1635E, MX25L1636D, MX25L1636E, MX25U1635E 1.8V, MX25L3205D, MX25L3206E, MX25L3028D, MX25L3208E, MX25L3225D, MX25L3233F, MX25L3235D, MX25L3235E, MX25L3236D, MX25L3236F, MX25L3237D, MX25L3239E, MX25L3273E, MX25L3273F, MX25U3235E 1.8V, MX25L6405D, MX25L6406E, MX25L6408D, MX25L6408E, MX25L6433F, MX25L6435E, MX25L6436E, MX25L6436F, MX25L6439E, MX25L6445E, MX25L6455E, MX25L6465E, MX25L6473E, MX25L6473F, MX25L6475E, MX25U6435E 1.8V, MX25L12805D, MX25L12835E, MX25L12835F, MX25L12836E, MX25L12839F, MX25L12845E, MX25L12855E, MX25L12865E, MX25L12873F, MX25U12835F 1.8V, MX25L25635E, MX25L25635F, MX25L25639F, MX25L25645G, MX25L25735E, MX25U25635F 1.8V, MX25U25645G 1.8V, MX25L51245G, MX25U51245G 1.8V, MX66L51235F, MX66U51235F 1.8V, MX66L1G45G, MX66U1G45G 1.8V, MX66L2G45G, MX66U2G45G 1.8V;
NEXFLASH: NX25P10, NX25P20, NX25P40, NX25P80, NX25P16, NX25P32;
PMC: PM25LVS12A, PM25LV010A, PM25LV020, PM25LV040, PM25LV080B, PM25LV016B;
SAIFUN: SA2SF005, SA25F010, SA25F020, SA25F040, SA25F080, SA25F160, SA25F320;
SANYO: LE25FU106 2.5V, LE25FU206 2.5V, LE25FS406 1.8V, LE25FU406 2.5V;
SPANSION: S25FL001, S25FL001, S25FL004, S25FL040, S25FL008, S25FL016, S25FL160, S25FL032, S25FL064, S25FL128, 25FL129, S25FL256, S25FL512;
SST: SST25VF512, SST25VF512A, SST25VF010, SST25VF010A, SST25LF020A, SST25VF020, SST25VF020A, SST25VF040, SST25VF040A, SST25VF040B, SST25VF080B, SST25VF016B, SST25VF032B, SST25VF064C;
ST: M25P05A, M25P10A, M25PE10, M25P20, M25PE20, M25P40, M25PE40, M25P80, M25PE80, M25PX80, M25P16, M25PE16, M25PX16, M25P32, M25PE32, M25PX32, M25P64, M25PE64, M25PX64, M25P128;
WINBOND: W25P10, W25X10, W25X10A, W25X10AL, W25X10L, W25P20, W25Q20BW, W25X20, W25X20A, W25X20AL, W25X20L, W25P40, W25Q40BV, W25Q40BW, W25X40, W25X40A, W25X40AL, W25X40L, W25P80, W25Q80BV, W25Q80BW, W25Q80V, W25X80, W25X80A, W25X80AL, W25X80L, W25P16, W25Q16BV, W25Q16CV, W25Q16DW, W25Q16V, W25X16,W25P32, W25Q32BV, W25Q32CV, W25QDW, W25Q32FV, W25Q32V, W25X32, W25P64, W25Q64BV, W25Q64CV, W25Q64DW, W25Q64FV, W25Q64FW, W25X64, W25Q128BV, W25Q128CV, W25Q128DW, W25Q128FV, W25Q128FW, W25Q256BV, W25Q256FV;
24 EEPROM
ATMEL: AT24C01B, AT24C01, AT24C01A, AT24C02, AT24C02A, AT24C02B, AT24C04B, AT24C04, AT24C04A, AT24C08A, AT24C08B, AT24C08, AT24C16, AT24C16A, AT24C16B, AT24C32B, AT24C32A, AT24C32, AT24C64, AT24C64A, AT24C64B, AT24C128, AT24C128A, AT24C128B, AT24C256A, AT24C256, AT24C256B, AT24C512B, AT24C512A, AT24C512, AT24C1024, AT24C1024A, AT24C1024B;
CATALYST: CAT24C01, CAT24WC01, CAT24C02, CAT24WC02, CAT24C04, CAT24WC04, CAT24WC08, CAT24C08, CAT24WC16, CAT24C16, CAT24WC32, CAT24C32, CAT24WC64, CAT24C64, CAT24C128, CAT24WC128, CAT24C256, CAT24WC2S6, CAT24C512, CAT24WC512, CAT24C1024, CAT24WC1024;
COMMON: 24C01 3V, 24C01 5V, 24C02 3V, 24C02 5V, 24C04 3V, 24C04 5V, 24C08 3V, 24C08 5V, 24C16 5V, 24C16 3V, 24C32 5V, 24C32 3V, 24C64 5V, 24C64 3V, 24C128 SV, 24C128 3V, 24C256 5V, 24C256 3V, 24C512 5V, 24C512 3V, 24C1024 3V, 24C1024 5V, 24C2048 5V, 24C2048 3V, 24C4096 5V, 24C4096 3V;
FAIRCHILD: FM24C01L, FM24C02L, FM24C03L, FM24C05L, FM24C04L, FM24C08L, FM24C09L, FM24C17L, FM24C16L, FM24C32L, FM24C64L, FM24C128L, FM24C256L, FM24C512L, FM24C512L, FM24C1024L;
HOLTEK: HT24C01, HT24LC01, HT24LC02, HT24C02, HT24C04, HT24LC04, HT24C08, HT24LC08, HT24C16, HT24LC16, HT24LC32, HT24C32, HT24LC64, HT24C64, HT24C128, HT24LC128, HT24LC256, HT24C256, HT24LC512, HT24C512, HT24C1024, HT24LC1024;
ISSI: IS24C01, IS24C02, IS24C04, IS24C08, IS24C16, IS24C32, IS24C64, IS24C128, IS24C256, IS24C512, IS24C1024;
MICROCHIP: MIC24LC014, MIC24AA01, MIC24AA014, MIC24LC01B, MIC24LC02B, MIC24AA02, MIC24C02C, MIC24AA024, MIC24LC025, MIC24LC024, MIC24LC04B, MIC24AA04, MIC24AA025, MIC24LC088, MIC24AA08, MIC24LC16B, MIC24AA16, MIC24LC32, MIC24AA32, MIC24LC64, MIC24AA64, MIC24FC64, MIC24FC128, MIC24AA128, MIC24LC128, MIC24AA256, MIC24LC256, MIC24FC2S6, MIC24AA512, MIC24LC512, MIC24FC512, MIC24AA1024;
NSC: NSC24C02L, NSC24C02, NSC24C64;
RAMTRON: FM24CL04, FM24C04A, FM24CL16, FM24C16A, FM24CL64, FM24C64, FM24C256, FM24CL256, FM24C512;
ROHM: BR24L01, BR24C01, BR24L02, BR24C02, BR24L04, BR24C04, BR24L08, BR24C08, BR24L16, BR24C16, BR24L32, BR24C32, BR24C64, BR24L64.
ST: ST24C01, ST24C02, ST24C04, ST24C08, ST24C16, ST24C32, ST24C64;
XICOR: X24C01, X24C02, X24C04, X24C08, X24C16;
25 SPI EEPROM
ATMEL: AT25010, AT25020, AT25040, AT25080, AT25160, AT25360, AT25640, AT25128, AT25256, AT25512;
MICROCHIP: 25AA080C, 25AA080D, 25C080 5V, 25LC080C, 25LC080D, 25AA160, 25C160 5V, 25LC160, 25AA320, 25C320 5V, 25LC320, 25AA640, 25C640 5V, 25LC640, 25AA256, 25LC256, 25AA512, 25LC512, 25AA1024, 25LC1024
Ссылки
Скачать драйвер для CH341A (Windows)
Скачать программу CH341A USB Programmer v.1.30
Скачать программу CH341A USB Programmer v.1.34
Купить на Aliexpress
Программатор для FLASH и EEPROM на CH341
Адаптер SOP8 (150mil и 200mil)
Клипса-адаптер SOIC8
Купить в Самаре и области
Программатор для FLASH и EEPROM на CH341
Адаптер SOP8 150mil
Адаптер SOP8 200mil
Клипса-адаптер SOIC8
Адаптер на 1.8v для программатора CH341A
EEPROM CH341A 24 25 Series Flash BIOS USB программатор
Особенности:
- Основное назначение программатора CH341A — резервное копирование, стирание, программирование, калибровка и другие действия с различным программным обеспечением.
- Скорость стирания/программирования, наверное, 2-3Мбит, проверка каждую минуту.
- Поддерживает EEPROM 24 серии ST, WINB IND, AMIC, MXIC, SST, SPANSION, EON, PMC и т. д., а также чипы серии 25.
- Поддержка большинства чипов EEPROM BIOS SOP24 SOP25 серии 8/16 на рынке. (Примечание. Из-за характеристик микросхемы CH341A микросхема ESMT SST класса 25 может только считываться и не может быть записана).
- Поддержка 3 режимов питания: внешний источник питания 5 В; внешний источник питания 3.3 В; внешний источник питания (требуется 3.3 В-5 В).
- Оригинальный чип CH341A со стабильной производительностью. Чип CH341A используется для связи по USB, что быстрее, чем у обычного ATMEGA8.
Детали продукта:

Инструкции по использованию:
- Земля: подключение к земле
- RXD: подключение к MCU.TX (поток сигнала: MCU.TX >> FT232 >> PC.RX)
- TXD: подключение к MCU.RX (поток сигнала: MCU.RX << FT232 << PC.TX)
- 3V3/5V: выход 3.3 В или 5 В (модуль питается от USB, перемычка должна быть установлена на 3.3 В или 5 В)
- RTS: подключение к MCU.CTS (поток сигнала: MCU.CTS << FT232 << PC.RTS)
- CTS: подключение к MCU.RTS (поток сигнала: MCU.RTS >> FT232 >> PC.CTS)
Габаритные размеры: 
Документы / Ресурсы
Это не совсем обзор программатора, потому что мои познания в данной области, мягко скажем, ограничены моими умственными способностями. Но это повествование о том, как будучи полным «чайником» в данной теме, тем не менее, немножко разобравшись, можно справиться, на первый взгляд, с абсолютно безнадёжным делом.
Понимаю, что многие наши гуру электроники с Мусек, починили бы эту камеру, возможно, просто силой мысли. Но тут особый случай, потому что за дело берётся человек не особо в этом разбирающийся и обладающий минимальными знаниями в том, что собирается делать.
И если это сделал я, то могут сделать и другие, не шарящие люди. Возможно этот недообзор, кому-то пригодится. Если вы например убили китайскую камеру неудачной прошивкой.
В общем это очередное моё ОНО — обзор не обзорщика. Подробности под катом.
Предыстория
История этого обзора уходит своими корнями в далёкий 2019 год, как раз в то время, когда только-только в наши страны начинал проникать короновирус. И к делу это никакого отношения не имеет.
Заказал мой друг себе комплект видеонаблюдения на Али. Взял регистратор на 8 каналов и несколько уличных видеокамер. Заказывал он в магазине Besder. Я несколько раз брал там камеры и регистраторы, и проблем не было. В общем получили мы посылочки, всё подключили (на столе разумеется) и начали прописывать камеры в регистраторе. И одна камера не завелась. То есть она была вообще мёртвая. Регистратор её не определял, утилиты, которые ищут IP камеры в сети по Onvif или другому протоколу, тоже её не находили. На фишке RJ45 у камеры есть светодиод «пинга», и он тоже не светился и не моргал. В общем кирпич.
Мы отсняли подробное видео для китайца, в качестве доказательства и китаец ответил, что нет проблем, пришлю другую камеру. И собственно прислал. Нормальную и работающую.
Камеру мы конечно разбирали и долго тупили глядя на печатную плату. Визуально с ней было всё ок. Подкидывали провода от другой камеры. Не помогло. Так эта камера и лежала мёртвым грузом. Периодически мы возвращались к идее её оживления. Одним из явных вариантов было заказать на Али плату с матрицей и всем остальным. Но плата со схожими характеристиками стоит около 80% стоимости от камеры. Есть варианты и подешевле, но с более слабыми параметрами. Но это всё были размышления моего товарища. У меня же мысли шли в другом направлении. Я был уверен, что проблема в прошивке камеры. И я предлагал более авантюрный вариант. Выпаять микросхему флеш памяти из работающей камеры, считать с неё прошивку, и залить в флеш память неработающей камеры. И таким образом, ушатать ещё и рабочую камеру)))
Подкреплялась моя уверенность в успехе ещё и тем, что камера, как мы выяснили, пингуется через командную строку по своему стандартному из коробки IP адресу, 192.168.1.10. А это значит, что часть прошивки, которая не меняется при обновлении, живая. Да и светодиоды подсветки в камере включались без проблем, если закрыть датчик. То есть проблема, явно программного характера.
Периодически я возвращался к этой теме и вот в один из таких моментов, когда захотелось оживить, по сути, бесплатную камеру, я наткнулся на пост на 4pda, где человек, на много и во много раз умнее меня, восстановил видеоглазок. Который он «окирпичил» неудачной прошивкой. Симптомы в результате он получил схожие. Камера пингуется, но web-интерфейс, а с ним и всё остальное недоступны. Так вот, этот умный товарищ смог оживить свою камеру, примерно таким же методом, над которым я размышлял в теории. Только он не клонировал чип с другой камеры, а собрал вручную дамп прошивки. Звучит всё это дико сложно, для человека, который в этом не разбирается. То есть для меня. Теоретически, в общих словах, мне понятно что он сделал. Но вот применить на практике — это совсем другое дело. К тому же он использовал там программатор, который стоил около полусотни баксов. Что тоже ставило под сомнение и без того сложное, для меня, дело.
Но потом, он дополнил свой пост, что эти микросхемы можно прошивать и дешёвым программатором, если его чуть-чуть допилить. А дешёвый программатор стоил 5$, что на фоне камеры и программатора за 50 это просто пыль на сапогах, поэтому я его не задумываясь сразу же и заказал.
Программатор был заказан и пришёл на удивление очень быстро. Менее чем за две недели. Вот собственно и он
Я заказывал полную комплектацию, с адаптером и прищепкой. Как вы уже могли догадаться фундаментального обзора от меня на программатор ждать не стоит. Только применение на практике, для своей задачи. В конце обзора я выложу ссылки на инструкцию на программатор и весь необходимый софт.
Итак, в чём собственно состоит суть оживление камеры. Объясню «колхозным» языком, как умею. У камеры есть флеш память. Это микросхема XT25F6B-S. Их можно купить на Алике, десять баксов за десяток. Туда записывается прошивка камеры. И когда вы прошивку обновляете она записывается поверх старой, но есть одна область, которая при этом не перезаписывается. В этой области хранится MAC-адрес камеры, сетевые и другие настройки. А также серийный номер камеры, по которому она регистрируется на облачном сервере. В нашем случае это облако Xmeye. И если бы я перезалил прошивку с другой камеры, то у нас бы получился полный клон. И я не знаю смог бы он работать в одной сети или нет. Понятное дело, что одинаковые IP адреса конфликтуют. Но адрес можно сменить. А МАС-адрес нельзя. И конфликтуют ли одинаковые МАС-адреса в одной сети, я если честно точно не знаю, но по идее проблемы могут возникнуть. Но нам собственно это и не нужно. Мы же будем собирать дамп прошивки вручную.
Так вот, если предположить, что в нерабочей камере, вот эта область прошивки живая, то её можно взять и вставить в рабочую прошивку, которыми обычно и прошиваются камеры. И такая прошивка у нас есть. Продавец присылал её моему товарищу, когда у него лагала одна из камер. Звучит сложно, но на самом деле всё не так страшно. Если немножко вникнуть и разобраться. Начнём.
Итак, вот наша камера
Уличная камера на 3Мп, в алюминиевом кожухе, с ИК подсветкой и вариофокальным объективом 2.8-12 мм. С очень удобной регулировкой. Не нужно откручивать «морду» камеры, всё регулируется винтиками прямо на кожухе.
Вот плата камеры
Наша флеш память, это маленькая микросхема слева на 8 ножках
Её нужно выпаять и вставить в прищепку. Без выпаивания считать-записать не получится. Поскольку я раздолбай, то не сфоткал микросхему в прищепке. Поэтому это иллюстрационное фото, взятое в инструкции
Оставим пока микросхему в покое и вернёмся к программатору. Его нужно немного доработать. По словам умных людей с 4pda программатор не работает с микросхемами на 3.3В. И в официальном софте нашей микросхемы нет. Зато она есть в софте NEOPROGRAMMER. А для того что бы всё работало прекрасным образом, нужно 28 ножку микросхемы на программаторе, перекинуть на проходящую рядом дорожку. Вот эта дорожка уже зачищенная
Ножку разумеется нужно припаять
Получилось так себе, но проверка мультиметром показала, что всё ок. Со старым контактом ножка не коротит и контакт доходит куда надо.
Подключаем программатор к компьютеру и заходим в диспетчер устройств
Автопоиск драйверов в сети тут не поможет. Нужно вручную указать путь к папке с драйверами. Весь необходимый софт и драйвера, будут по ссылкам в конце обзора.
После установки драйверов имеем следующее устройство
Теперь нужно подключить прищепку с микросхемой к программатору. И тут нужно соблюсти ряд правил, что бы не напутать куда идут какие контакты. На программаторе есть два слота. Для микросхем 25-й серии и 24-й. Нам нужен для 25-й, он ближе к USB. Устанавливаем туда комплектный адаптер, как на фото
Обратите внимание на нумерацию клемм. 1 это первая ножка микросхемы. На шлейфе это красный провод. Соответственно втыкаем шлейф в адаптер так, что бы красный провод был на 1-й клемме
Микросхему тоже нужно вставить правильно в прищепку. На микросхеме первая ножка обозначена точкой на корпусе
Эта ножка должна совпадать с красным проводом со стороны прищепки. Теперь перейдём к программной части. Запускаем NEOPROGRAMMER
Нажимаем кнопку Поиск
Выбираем нашу микросхему
И нажимаем на пиктограмму «Читать чип», на панели справа от кнопки сохранить. Начинается считывание прошивки
Если прошло всё хорошо, а у меня прошло без проблем, получаем такой результат
Сохраняем скачанную прошивку на жёсткий диск. Далее нам нужно собрать дамп. Запускаем программу Dump builder, указываем там размер флешки 8 Мб и нажимаем Create dump и указываем путь и имя файла для сохранения
Далее нам нужно добавить рабочую прошивку для камеры (полученную в нашем случае от китайца). Нажимаем Open frimware и выбираем файл прошивки
Нажимаем добавить и все компоненты прошивки добавляются в наш дамп и он автоматически сохраняется
Закрываем Dump builder. Далее нам нужен любой HEX редактор. Я взял Free Hex Editor Neo. Он условно бесплатный. Работает 14 дней. Но прежде чем в нём что-то изменять в дампе, нужно подтвердить пробный период. Например открыть файл прошивки (любой), повыделять там, покопировать и повставлять, пока не выскочит окно в котором нужно будет подтвердить или купить. После этого закрыть редактор и открыть заново два раза. Ну лично я делал так. На одном мониторе открыл одно окно на втором другое. Он без проблем запускается параллельно. В одном редакторе мы открываем созданный нами в программе Dump builder дамп
Во втором открываем скачанную в NEOPROGRAMMER и сохранённую прошивку с микросхемы. В сохранённой прошивке мы выбираем «крипту», это как раз тот раздел, в котором прописан МАС-адрес и прочее. Находится этот раздел по адресу 0002fc00 — 0002fff0. Выделяем его полностью. Нажимаем правой кнопкой мыши и выбираем копировать
Возвращаемся к первому окну, где открыт наш дамп, и находим там этот же адрес строки 0002fc00. Кликаем правой кнопкой по первой ячейке и выбираем Вставить
Скопированная часть прошивки переносится в наш дамп
Далее сохраняем нашу сборку на диск. Запускаем NEOPROGRAMMER и опять находим нашу микросхему. Здесь же кликаем на пиктограмму Открыть и выбираем только что сохранённую сборку. И находим пиктограмму Записать
Нажимаем на треугольник рядом с ней
Здесь нужно поставить галочки
Снять защиту
Стереть
Проверка на чистоту
Записать
Сравнить содержимое — галочку убрать. Далее нажать на саму пиктограмму Записать. Начнётся процесс записи на флеш память. По окончанию записи будет выглядеть так
После всей проделанной работы, мы впаяли микросхему обратно на плату
Да, выглядит корявенько, но это паял не я, а мой товарищ. Его же камера. Так что с меня взятки гладки. Закончив с пайкой и собрав камеру, мы подали на неё напряжение и подкинули патч-кордом к ноутбуку. Приятным для нас сигналом был светящийся диод на разъёме RJ45 на шнуре камеры. Первым делом я пинганул камеру через командную строку
Камера пингуется. Потом запустил утилиту от Geovision и она определила камеру по Onvif
Ну а далее ввёл адрес в IE и с радостью увидел до боли знакомую картину
Камера заработала
Мы пожали руки и поздравили друг друга с удачей.
Ну, а если, у кого то после прочтения, закрались мысли, что автор, а это я, шибко-больно умный, раз раскидывается тут разными мудрёными понятиями и прочим непонятным. То я спешу вас успокоить. Я просто начитался в этих ваших интернетах всякого, на умных форумах. А с языка этих слов уже не снимешь, поэтому и выпендриваюсь тут перед вами.
Итог. Мой друг получил абсолютно бесплатную рабочую камеру (за программатор платил я), а она на скидках стоила больше тридцатки. Я получил программатор, который возможно пригодится мне в будущем, скилл в прошивке микросхем и сборке дампа, а так же материал для дилетантского обзора. На этой позитивной ноте, пожалуй, и закончим.
Ссылки:
Тема посвящённая программатору CH341A на 4pda
Ссылка на пост автора со схожей проблемой (с которой я собственно и начинал)
Инструкция к программатору (на русском)
Драйвера для программатора
Официальный софт для программатора
Не официальный софт NeoProgrammer 2.2.0.7
Dump builder
Free hex editor
Всем спасибо за внимание
Неисправности связанные со «слетом прошивки» EEPROM или FLASH- памяти встречаются довольно часто, и тогда без перепрограммирования не обойтись…
Представляю Вашему вниманию не дорогой и очень удобный программатор CH341. Подключается он через USB порт, прост в обращении и способен программировать распространенные микросхемы памяти серии 24C и 25Q.
Выглядит он вот так:
Лично я его приобретал в магазине, но гораздо дешевле будет приобрести его ЗДЕСЬ.
Так как он имеет разъем рассчитанный под микросхемы в корпусе DIP8, также рекомендую сразу-же приобрести и адаптер под микросхемы в корпусе SO-8. Вот такой:
Как пользоваться программатором CH341
В первую очередь, конечно-же, необходимо установить все драйвера. Вы найдете их в конце этой статьи.
После того как драйвера будут установлены, на рабочем столе появится вот такой ярлык
Кликаем по нему, открывается диалоговое окно
Теперь нам необходимо выбрать марку программируемого чипа. Лучше всего это сделать автоматически- на панели имеется кнопочка «определить», кликаем на нее и проггер должен сам увидеть микросхему.
Зачем это нужно- микросхема вполне может оказаться неисправной, и тогда перепрограммировать ее не получится.
Если мы собираемся перепрограммировать «родную» флешку, снятую с аппарата, то желательно сначала прочесть и сохранить имеющуюся на ней прошивку. Кликаем на кнопочку «прочесть»
Начинается процесс чтения, он будет отображаться в виде шкалы в нижней левой части диалогового окна
После того как процесс чтения закончен, сохраняем прошивку в любом удобном месте.
Сохранять прошивку необходимо в формате .bin
Все, теперь можно приступать к программированию…
Если мы имеем дело с новой флешкой, то можно сразу вливать в нее дамп, если- мы перепрограммируем старую- то желательно ее сначала стереть. Для этого на панели имеется специальная кнопочка.
Шаг следующий- выбираем нужный нам дамп. В качестве примера я выбрал прошивку для DVB-T2 приемника
Кликаем на кнопочку «программировать», начинается процесс. Он также будет отображаться в виде шкалы в левом нижнем углу диалогового окна.
После того как процесс программирования будет закончен, кликаем на кнопочку «проверить»
Это очень важно- если все прошло нормально, то должно появиться сообщение
данные чипа и буфера одинаковые если-же выскочит сообщение что-то вроде данные не подходят для чипа— пробуйте еще раз, или ставьте другой чип.
Где взять прошивки? Да конечно-же на просторах инета!!! Лично я могу порекомендовать еще один свой сайт все для ремонта электроники.
Надеюсь эта статья была Вам полезной…
Как обещал- прикладываю драйвера для проггера. Вирусов там нет (проверено!!!), все совершенно бесплатно- просто кликните по ссылке ниже
Инженерам-электронщикам, радиолюбителям, — каждому, кто занимается эксплуатацией, обслуживанием, ремонтом электроники, необходим программатор в принципе. Починка телевизоров, компьютеров, спутниковых ресиверов и прочей аппаратуры, как правило, требует прошить микросхему памяти без выпаивания из платы. Так вот для этих целей разработан программатор CH341A микросхем памяти универсальный.
СОДЕРЖИМОЕ ПУБЛИКАЦИИ :
- 1 Программатор микросхем памяти еепром/флеш — CH341A
- 2 Универсальный программатор CH341A — применение в работе
- 2.1 Программатор CH341A — программное обеспечение прошивки/считывания
- 2.2 Тонкости программирования микросхем памяти через интерфейс CH341A
- 2.3 Программатор CH341A: где купить и какая цена
- 2.4 Таблица поддерживаемых микросхем программатором CH341A
- 2.5 Как прошить микросхему памяти без выпаивания
- 2.6 Чтение дампа микросхем памяти программатором CH341A
- 2.7 Причина отсутствия чтения/записи на программаторе CH341A
- 2.7.1 Видеоролик обзор + установка драйверов Windows 10
Небольшой по размерам электронный прибор для прошивки подключается к порту USB компьютера. Прошивальщик позволяет быстро программировать микросхемы памяти 24хх, 25хх серий и аналогичных. Рассмотрим электронику для лучшего представления, понимания, применения на практике.
Микросхемы памяти серий 24хх (eeprom), 25хх (serial flash) используются в схемах электронной техники повсеместно.
Такого рода чипы присутствуют в составе практически любой конструкции современной бытовой / промышленной аппаратуры, управляемой через микроконтроллеры.
Для электронщиков, работающих с такой аппаратурой нужным инструментом является программатор, в частности, модель CH341A, позволяющая выполнять программирование чипов памяти без выпаивания из состава печатной платы.
Полное представления на программатор CH341A даёт описание (datasheet), дополненное стандартными техническими характеристиками. Тем не менее, рассмотрим девайс электронщика глазами обывателя, что часто воспринимается потенциальным пользователем проще и легче официальных документов.
232miniUSB
Сборка устройства выполнена на базе микроконтроллера «USB Bus Convert Chip» серии CH341A. Программатор рассчитан на физическое подключение к порту USB компьютеров, работающих под управлением современных ОС Windows. Модуль программирования микросхем памяти собран на печатной плате размерами 45х25 мм (см. картинку ниже).
ПЕРЕХОДНИК
На одной стороне печатной платы размещены электронные компоненты программатора CH341A. На второй стороне электронной платы установлена механическая панель (ZIF) под временное крепление программируемых микросхем.
Механическая ZIF-панель прошивальщика поддерживает чипы в корпусах DIP. Обеспечивает удобство работы пользователя, когда выполняется считывание или «прошивка» чипов памяти.
Универсальный программатор CH341A — применение в работе
Подключение микросхем флэш-памяти 25хх серии с корпусным исполнением SOP8/SOP16 на программаторе осуществляется через соответствующие контактные площадки. Две таких площадки располагаются непосредственно на монтажной плате программатора CH341A рядом с ZIF-панелью.
USB-UART
Также в комплекте с программатором CH341A поставляется дополнительная монтажная печатная плата. Этот аксессуар применяется на случай программирования микросхем памяти с архитектурным исполнением корпусов SOP8/SOP16. Под внутрисхемное программирование на печатной плате программатора CH341A выведены контакт питания под напряжение 3.3 вольта и соответствующие контакты ISP интерфейса:
- MOSI;
- MISO;
- CLK;
- CS;
- GND.
Вместе с тем есть возможность работать с периферией по интерфейсу RS232 (выводы на плате RX, TX, GND). Схема программатора CH341A рассчитана под питание постоянным напряжением 5 вольт от внешнего источника. Это напряжение, при подключении программатора к персональному компьютеру, поступает по шине USB.
USB-TTL-UART
На печатной плате программатора встроен индикатор наличия питания – светодиод красного цвета. Режим внешнего или внутреннего программирования включается съёмом или установкой перемычки на контактах P/S (parallel/serial), также внедрённых в схему программатора CH341A. По умолчанию перемычка установлена.
Положению установленной перемычки на контактах P/S (parallel/serial) программатора CH341A соответствует режим внутреннего программирования. В этом случае:
- чтение,
- верификация,
- запись чипов памяти,
осуществляются непосредственно через ZIF-панель программатора CH341A. Между тем на плате программатора универсального CH341A перемычка может быть снята с контактов P/S (parallel/serial). Программирование в таком режиме допускает непосредственное подключение к программируемой микросхеме памяти без выпаивания из платы.
Программатор CH341A — программное обеспечение прошивки/считывания
Действие универсального физического модуля CH341A на программном уровне поддерживается «родительским» программным обеспечением — «CH341A Programmer» (здесь версия 1.4).
Используемые драйверы для операционных систем и интерфейсов:
- под Windows 10 и ранее на IIC / I2C, SPI и другие;
- под Windows 10 и ранние на последовательный интерфейс;
- под Linux;
- под Mac;
бесплатно распространяется по сети Интернет.
Интерфейс рабочего программного окна ПО версии 1.30 прост для восприятия и понимания как начинающим электронщикам, так и профессионалам. Все основные обозначения программного интерфейса версии 1.30 переведены на русский язык. В целом программой поддерживается несколько региональных языков интерфейса. Однако выше представлена также версия 1.4 (английский интерфейс).
АДАПТЕР SATA
Конечно же, чтобы программное обеспечение удачно состыковать с устройством, корректно и эффективно программировать, требуется установка системных драйверов. Это компоненты, дополняющие ПО, как правило, включены в установочный пакет программного софта.
При подключении программатора на порт USB, система автоматически выдаёт (только старые версии Windows) сообщение о необходимости установки драйверов устройства. Нужно просто указать путь к папке, где находятся требуемые файлы. Последние версии (например, Windows 10) требуют файлы с цифровой подписью. Здесь выше можно скачать официальные драйверы, наделённые цифровой подписью.
Тонкости программирования микросхем памяти через интерфейс CH341A
Логичный вопрос начинающих электронщиков: как прошить микросхему памяти eeprom в корпусе DIP с помощью этого устройства? Так вот, работа с чипами памяти EEPROM (24хх, 25хх) в корпусном исполнении DIP, осуществляется, примерно, следующим образом (при условии предварительно установленных драйверов):
- На ZIF-панели рукоятку установить перпендикулярно корпусу.
- Вставить микросхему в ячейку согласно обозначению на плате 24хх или 25хх (1 ножка ближе к рукоятке).
- Опустить рукоятку в положение параллельно корпусу панели.
- Подключить программатор CH341A на USB порт.
- Подключить устройство в диспетчере Windows.
- Запустить Programmer и выполнить требуемые действия (считывание, прошивка, сравнение контрольных сумм и т.д.).
ПЛАТА NANO
Видеоролик выше показывает последовательность работы с микросхемами памяти через программную среду сопровождения. В частности, показаны примеры работы с ПО «Programmer CH341A» двух версий (1.30 и 1.4, соответственно).После завершения работы с ПО, устройство в списке диспетчера Windows рекомендуется отключать (не удалять, но деактивировать).
Программирование чипов из серии флэш-памяти 25хх с корпусным исполнением SOP делается несколько иначе. Контактная ZIF-панель в этом случае может также использоваться, но при условии, если микросхема монтируется на дополнительной печатной плате.
Дополнительную печатную плату необходимо оснастить контактными электродами, впаяв электроды в соответствующие отверстия платы. Операционную (программируемую) микросхему также придётся подпаивать на контактные площадки.
Между тем существует упрощённый способ коммуникации. На основной плате программатора CH341A имеются площадки под конфигурацию SOP. На такую площадку аккуратно накладывают программируемый чип с тем расчётом, чтобы ножки микросхемы точно попадали на контактные дорожки.
ESP8266
Следует проконтролировать соответствие расположения микросхемы по ключу на корпусе и на плате. Там есть указатель контакта первой ножки чипа. Затем чип аккуратно прижимают миниатюрной прищепкой. Дальше всё делается стандартным образом – подключение к порту компьютера и программирование микросхемы.
Программатор CH341A: где купить и какая цена
Купить устройство выгоднее на известном портале Aliexpress. Цена, заявленная китайскими продавцами, чисто символическая (не более 200 руб. вместе с пересылкой). Быстрее и проще покупка производится через федеральный Маркет Яндекса. Предложения ниже:
Единственное неудобство для покупателя в случае запроса через китайский shop-портал AliExpress – приходится ожидать прибытия посылки в Россию примерно месяц-полтора. Но если учитывать открывающиеся возможности с приобретением этого товара, можно подождать и 3 месяца. Однако немного доплатив, проще купить в России.
АДАПТЕР GSM
Читать и «шить» программатором 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 корпусах непосредственно на плате, нужно обзавестись контактной «прищепкой». Этот инструмент также можно купить недорого на упомянутом ранее сайте.
NANO V 3.0
Прищепка устанавливается на корпус микросхемы с таким расчётом, чтобы все контакты точно «сели» на ножки программируемого чипа. Первая контактная ножка рабочей микросхемы должна соответствовать контакту «прищепки» с подведённым красным проводом.
Плата с рабочим чипом, на который пишется или с которого снимается дамп, должна отключаться от любых источников питания,
включая литий-ионные батареи (актуально для компьютерных материнских плат). На программаторе CH341A перемычка на контактах «P/S» снимается.
ПЛАТА UNO
Ответный конец кабеля с «прищепкой» подключается на переходник (мини-плата) через штыревое соединение, и далее к ZIF-панели программатора CH341A. В зависимости от типа программируемой микросхемы, плата-переходник устанавливается в контактные гнёзда для чипов серии 24хх или 25хх.
Дальше останется только включить программатор CH341A в USB порт, запустить сопровождающую программу на компьютере и можно начинать работать с дампом микросхем памяти. К примеру, для указанной серии микросхем 24С04 потребовалось времени на считывание дампа не более 3 секунд:
МОДУЛЬ WIFI
Некоторые микросхемы памяти, рассчитанные под напряжение питания 5 вольт, иногда не реагируют на действия программатора CH341A. Выражается это результатом, когда дамп не считывается и не пишется.
Причина отсутствия чтения/записи на программаторе CH341A
Объясняется причина отсутствия рабочего эффекта просто: по умолчанию схемой программатора CH341A используется рабочее напряжение (стабилизированное от USB) равное 3.3 вольтам. При таком малом уровне напряжения и токе не превышающем 500 мА, некоторые серии чипов попросту «не входят» в режим программирования.
DIGISPARK
К тому же следует учитывать потери тока через ёмкости электронной платы, где установлен операционный чип. Для подобных случаев необходим достаточный рабочий уровень напряжения программирования, а также достаточно высокий токовый потенциал.
Соответственно, устранение причины – подача напряжения программирования непосредственно от более мощного внешнего источника питания. Для этого используется 7-контактный разъём, присутствующий на плате программатора CH341A. Обозначение контактов разъёма есть на принципиальной схеме (см. выше).
Видеоролик обзор + установка драйверов Windows 10
Видеороликом ниже представлен краткий обзор устройства программирования микросхем памяти — программатора CH341A. Дополнительно показана установка драйверов устройства в операционной системе Windows 10 версия 32 бит (для 64-битной версии установка аналогичная):