Микросхема Winbond W25Q128JVSQ встречается в роутерах, материнских платах, телевизорах, видеорегистраторах и ТВ-приставках, и именно её слетевшая прошивка часто становится причиной «кирпича» — устройство не включается, не реагирует на кнопки или зависает на заставке. Восстановление сводится к считыванию или записи дампа через SPI-программатор, и эта задача вполне выполнима в домашних условиях при наличии недорогого программатора и аккуратности.
Маркировка расшифровывается так: W25Q128 — серия SPI Flash объёмом 128 Мбит (16 Мбайт), JV — версия с питанием 3,3 В (в отличие от серии FW на 1,8 В), S — корпус SOIC-8, Q — температурный диапазон и упаковка. Перед прошивкой обязательно сверьте полную маркировку на корпусе чипа: путать версии JV и FW нельзя, так как у них разное напряжение питания.
Что понадобится для прошивки
Минимальный набор — SPI-программатор и софт к нему. Самый доступный вариант — CH341A (чёрная плата с USB), который поддерживается программами AsProgrammer, CH341A Programmer и NeoProgrammer. Более продвинутые варианты — RT809F, TL866II Plus, но для разовой задачи они избыточны.
- 🔌 Программатор CH341A (убедитесь, что он работает в режиме 3,3 В — на некоторых платах есть перемычка выбора напряжения)
- 📎 Прищепка SOP-8/SOIC-8 с кабелем — позволяет прошить чип без выпаивания
- 💻 Компьютер с Windows и установленным драйвером CH341
- 🗂 Файл дампа (дамп родной прошивки, считанный заранее, либо рабочий дамп от аналогичного устройства)
- 🔦 Паяльник — на случай, если прошивка в прищепке не пойдёт и чип придётся выпаять
⚠️ Внимание: на платах CH341A встречается дефект, при котором на линии данных подаётся 5 В вместо 3,3 В. Перед первым подключением к чипу проверьте мультиметром напряжение между выводами VCC и GND колодки. Подача 5 В на микросхему 25Q128JV может вывести её из строя.
Распиновка и подключение
Корпус SOIC-8 имеет восемь выводов, ключ — точка или выемка возле первой ноги. Распиновка стандартна для всей серии 25Q:
| Вывод | Обозначение | Назначение |
|---|---|---|
| 1 | CS# | Выбор кристалла (chip select) |
| 2 | DO (IO1) | Данные из чипа (MISO) |
| 3 | WP# (IO2) | Защита от записи |
| 4 | GND | Общий провод |
| 5 | DI (IO0) | Данные в чип (MOSI) |
| 6 | CLK | Тактовый сигнал |
| 7 | HOLD# (IO3) | Приостановка обмена |
| 8 | VCC | Питание 3,3 В |
Прищепка одевается сверху на чип: красный провод кабеля совмещается с первым выводом (метка-точка на корпусе). На стороне программатора кабель вставляется в колодку SPI согласно шелкографии — обычно положение указано на плате или в инструкции к конкретной ревизии CH341A. Перепутанная ориентация — самая частая причина того, что чип не определяется.
Сделайте фото платы и микросхемы до подключения прищепки — при сомнениях в ориентации вы всегда сможете свериться с исходным положением ключа.
Чтение и сохранение родного дампа
Первое действие при любой работе с прошивкой — считать и сохранить текущее содержимое чипа, даже если оно повреждено. Родной дамп может содержать уникальные данные: MAC-адреса, серийные номера, калибровки, заводские ключи. Их потеря иногда критичнее самой слетевшей прошивки.
Порядок действий в программе AsProgrammer или аналогичной: подключите программатор, запустите софт, нажмите кнопку определения чипа (иконка лупы). Если автодетект не сработал, выберите тип вручную: SPI → 25 серия → W25Q128BV/JV. Затем выполните чтение («Read») и сохраните файл. Рекомендуется считать дамп дважды и сравнить файлы по размеру и контрольной сумме — совпадение говорит о стабильном контакте.
☑️ Проверка перед записью дампа
Запись прошивки: пошаговая инструкция
Запись выполняется в три этапа, и пропускать их нельзя. Сначала — стирание (Erase): чип переводится в состояние, заполненное байтами FF. Затем — запись (Write/Program) нового файла. Финальный обязательный этап — верификация (Verify): программа перечитывает чип и сравнивает содержимое с файлом. Только успешная верификация подтверждает, что прошивка записана корректно.
Многие программы объединяют всё в одну кнопку «Авто» (Auto), которая выполняет стирание, запись и верификацию последовательно. Это удобно, но если на каком-то этапе возникла ошибка — повторяйте шаги по отдельности, чтобы локализовать проблему. Время записи 16 Мбайт через CH341A занимает несколько минут, набирайтесь терпения и не трогайте прищепку в процессе.
⚠️ Внимание: при прошивке в прищепке питание на чип может «подтягиваться» от всей платы устройства, и программатор не всегда справляется с нагрузкой. Если чип не определяется или читается с ошибками — отключите устройство от сети, подождите разряда конденсаторов и попробуйте снова. Не помогло — чип придётся выпаять и прошить отдельно в ZIF-колодке.
Типичные проблемы и их решение
Чип не определяется вообще — проверьте ориентацию прищепки, качество контакта (подвигайте её слегка при повторном детекте), правильность выбора типа микросхемы в софте. Окислы на выводах убираются лёгкой зачисткой ластиком или протиркой спиртом.
Чип определяется, но читается мусор или верификация не проходит — вероятная причина в питании: плата устройства «просаживает» линию 3,3 В. Решения: укоротить провода прищепки, попробовать другой USB-порт, а в запущенных случаях — выпаять микросхему. Ещё одна возможная причина — активированная защита от записи (биты защиты блоков в статус-регистре); в AsProgrammer есть функция снятия защиты (Unprotect).
Устройство прошилось успешно, но не запускается — скорее всего, дамп не подходит конкретно этой ревизии платы. Дампы от «похожих» моделей несовместимы: различаются загрузчики, разметка памяти и калибровочные области. Ищите дамп именно от вашей модели и ревизии платы либо восстанавливайте родной, редактируя только повреждённые участки.
Почему дамп от «такой же» модели может не подойти
Производители меняют ревизии плат внутри одной модели: другой загрузчик, иная разбивка флеш-памяти, другие калибровки радиотракта. Внешне устройства идентичны, но прошивки несовместимы. Всегда сверяйте маркировку платы (обычно нанесена шелкографией) и сохраняйте родной дамп до любых экспериментов.
Прошивка без программатора: возможно ли
Иногда SPI Flash можно перезаписать программно — через интерфейс самого устройства (веб-обновление, recovery-режим, UART-консоль с загрузчиком). Это работает, только если загрузчик в чипе жив. Если устройство полностью «мёртвое», программные способы бесполезны: обновление идёт через тот самый загрузчик, который и оказался повреждён.
Для роутеров и приставок с открытым UART иногда доступна заливка образа через TFTP или команду загрузчика — но команды и адреса памяти специфичны для каждой платформы, их нужно искать в документации именно к вашему устройству. Универсальной инструкции здесь нет, а неверный адрес записи способен окончательно затереть загрузочную область.
Золотое правило работы с 25Q128JVSQ: сначала считай и сохрани родной дамп в двух экземплярах — и только потом стирай и записывай. Обратного пути после стирания без бэкапа нет.
FAQ: частые вопросы
Чем отличается W25Q128JVSQ от W25Q128FVSQ?
Ключевое отличие — напряжение питания: серия JV рассчитана на 3,3 В, серия FW — на 1,8 В. Подавать 3,3 В на чип версии FW нельзя — он может выйти из строя. Всегда сверяйте полную маркировку на корпусе.
Можно ли прошить чип, не выпаивая его из платы?
Да, с помощью прищепки SOIC-8 — в большинстве случаев это работает. Но если схема устройства нагружает линии питания или данных, чип может не определяться или прошиваться с ошибками. Тогда остаётся только выпаивание и прошивка в колодке программатора.
Где взять дамп прошивки для моего устройства?
Лучший источник — родной дамп, считанный до поломки. Также дампы выкладывают на профильных форумах по ремонту электроники. Ищите файл строго под вашу модель и ревизию платы, а не просто «похожую» модель.
Программа пишет «ошибка верификации» — что делать?
Проверьте контакт прищепки и длину проводов, убедитесь в стабильных 3,3 В, снимите защиту от записи (Unprotect), повторите цикл «стирание → запись → верификация». Если ошибка сохраняется — возможно, чип физически неисправен и требует замены.
Подойдёт ли чип большего объёма вместо 25Q128?
Замена возможна только при полной совместимости по напряжению, корпусу и поддержке со стороны загрузчика устройства. На практике надёжнее ставить аналог того же объёма — 128 Мбит (16 Мбайт), поскольку разметка прошивки рассчитана именно на этот размер.