Программатор микросхем 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. Из за особенностей некоторых материнских плат, не все микросхемы удается программировать не выпаивая из материнской платы. В некоторых случаях без выпаивания не обойтись.
Если вы уверены, что все подключили правильно и все контакты имеются, а микросхема не поддается программированию, попробуйте выпаять микросхему, возможно ее программированию мешают другие элементы материнской платы.
На текущий момент на рынке очень много программаторов, различных модификаций и исполнение, более того один и тот же программатор может выпускаться в разных корпусах, в разной комплектации, ещё больше программаторов сейчас уже не актуально, так как либо применяются для старых типов микросхем, либо уступили место более лучшим(цена, доступность) конкурентам. Одним из таких «дедушек» является программатор «PONYPROG», который является на мой взгляд самым распространенным и простым программатором, о котором должен знать почти каждый мастер. Поддерживает он работу не только с микросхемами памяти ПЗУ, но и микроконтроллерам Atmega, по таким шинам как I2C, SPI и Microwire(разновидность SPI для 93cxx EEPROM)
Схема программатора понипрог
VD1=VD2=VD3=1N4148
DA1=LM2936Z-5
VT1=BC547
VD4=VD5=5V1
Микросхема ch341
К сожалению, как мы видим из схемы, для работы этого программатора требуется наличие COM порта, что большая раскаш для современных компьютеров и ноутбуков, в которых все чаще стали даже USB порты пропадать или «трансформироваться», как в истории с новым макбук. Существует много переходников USB-COM, но очень часто они либо вообще не работают, либо очень часто дают сбои, поэтому для работы с современными устройствами нужно искать более подходящий программатор и один из таких программаторов стал CH341а, по названию ключевой микросхемы из которой он состоит.
CH341 – это не программатор, а конвертер (преобразователь) USB шины в синхронный последовательный интерфейс, такие как двух(I2C) или четырехпроводную(SPI) шину.
На рынке существует множество разновидностей данного программатора, которые выпускаются в разных корпусах, без корпусов или вообще зип набором.
Шины программатора ch341
Данный программатор подходит для программирования по шинам I2C или SPI, именно так мне бы хотелось доносить информацию, не так чтобы говорить что он поддерживает EVO2 или не поддерживает EVO1, а именно по шинам, потому как по данным шинам могут работать микросхемы на разных устройствах, не только на стиральных машинах, но и на телевизорах и магнитолах, нужно понимать что существует понятие шины(см. Урок выше) и относительно ее уже подбирают программатор.
I2C – это SCL(контакт 24) и SDA(контакт 23)
SPI – это CLK(контакт 18), MOSI(контакт 20), MISO(контакт 22) и CS(контакт 15)
Как видно из схемы, программатор очень простой и при желание его можно собрать самому, имея на руках только одну микросхему CH341а, но не стоит забывать что существует еще и CH341H и её «распиновка» отличается от CH341А, стоит это учитывать и внимательно изучать сервисную информации (даташит) для данной микросхемы.
Установка драйверов
Драйвер устройства — это по сути инструкция для операционный системы, с набором команд которые поддерживает это устройство, стандартные устройства, такие как мышь или клавиатура, не нуждается в отдельной установки драйвера, так как это уже было предусмотрено, разработчиками операционной системы, но редко применяемые устройства, такие как программаторы, всегда нуждаются в установки драйверов и об этом процессе, мы сейчас и поговорим.
Для установки драйверов необходимо открыть диспетчер устройств, подключить программатор в USB разъем и найти его в списке, скорее всего он определиться как «неопознанное устройство», после чего кликаем правой кнопкой и устанавливаем драйвер, указав место на компьютере, где он расположен.
Желательно после каждой подобной процедуры перезагружать компьютер.
После перезагрузки, опять открываем наш диспетчер устройство и убеждаемся что программатор определился и никаких знаков восклицания рядом с ним нет.
Отключение проверки цифровой подписи
Если У Вас OC Windows 8 и старше, то могут возникнуть проблемы с не подписанными драйверами для этого или другого программатора, для решение этой проблемы нужно
1: Введите в поисковой строке вашей системы «gpedit.msc» и нажмите OK(запуститься редактор для групповой политики)
2: Перейтите по User Configuration > Administrator Templates > System -Конфигурация пользователя> Административные шаблоны > Система и кликните дважды на «Driver Installation»
3: В подменю настроек, отображаемых в правой панели, щелкните правой кнопкой мыши на «Code signing for device drivers» и нажмите Edit(Изменить)
4: Изменить значение параметра на ВКЛ (Enabled) и выберите в выпадающем окне «блокированить»
5: Применить и OK
Порядок работы с программатором
После установки драйверов, нужно запустить программы, которые идут на диске с данным программатором, в каждой программе есть идентификатор подключения программатора и хоть это и не правильно, но я проверяю работу связки программа-программатор с помощью передергивания программатора из гнезда, повторюсь что это не правильно, но я так делаю.
После того как мы определились что программа видит наш программатор, если не видит см. пункт «Установка драйверов» или удаляйте драйвер(диспетчер устройств > удалить драйвер) и пробуйте установить другой, выбираем нашу микросхему и нажимаем СЧИТАТЬ (READ)
Я рекомендую всегда считывать прошивки, перед тем как записывать, что бы у Вас оставалась возможность вернуться к тому что было, это очень хорошая привычка и в отдельных моментах может спасти ситуацию.
Что может и не может ch341
Программатор пзу позволяет прошивать микросхемы памяти, но в стиральных машинах они встречаются все реже потому что производитель размещает всю информацию непосредственно в микроконтроллер, но многие микроконтроллеры, например те же RENESAS позволяют с собой общаться по шине i2c или spi которые как раз поддерживает данный программатор, но когда микроконтроллер общается с программатором по этой шине и них существует протокол общения:
петя это саша — пришли мне пицце
саша это петя — пиццы нет, на пирожок с картошкой
Как Вы понимаете пицца это прошивка, петя и саша это программатор и микроконтроллер и для их работы нужно, чтобы проц был запущен, т.е. нельзя общаться с микроконтроллером как «с тушкой», при этом ПЗУ даже и лучше когда с ней так общаются, т.е. полностью обесточивают и подключаются напрямую, считывая и записывая все без разбора.
При работе же с микроконтроллером нужны чтобы он сам отдал данные и если не выполнить ритаул протокола обмена, он этого не сделает
Сегодня рассмотрим простой но очень функциональный программатор на микросхеме CH341A (MinProgramment), который программирует микросхемы 24 и 25 серии используемые в материнских платах, роутеров, ноутбуков, маршрутизаторов и так далее.
► Напряжение питания: 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
В статье мы рассмотрим программатор 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 можно по ссылкам в конце статьи.
Это не совсем обзор программатора, потому что мои познания в данной области, мягко скажем, ограничены моими умственными способностями. Но это повествование о том, как будучи полным «чайником» в данной теме, тем не менее, немножко разобравшись, можно справиться, на первый взгляд, с абсолютно безнадёжным делом.
Понимаю, что многие наши гуру электроники с Мусек, починили бы эту камеру, возможно, просто силой мысли. Но тут особый случай, потому что за дело берётся человек не особо в этом разбирающийся и обладающий минимальными знаниями в том, что собирается делать.
И если это сделал я, то могут сделать и другие, не шарящие люди. Возможно этот недообзор, кому-то пригодится. Если вы например убили китайскую камеру неудачной прошивкой.
В общем это очередное моё ОНО — обзор не обзорщика. Подробности под катом.
Предыстория
История этого обзора уходит своими корнями в далёкий 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
Всем спасибо за внимание