Осциллограф DSO138 построен на микроконтроллере STM32F103C8, поэтому его прошивка выполняется стандартными средствами для чипов STM32 — через отладчик ST-Link или через встроенный загрузчик по UART. Поводом для перепрошивки обычно становится желание обновить версию ПО, восстановить устройство после сбоя или залить альтернативную прошивку, разработанную сообществом энтузиастов.
Ниже разберём, какие версии прошивок существуют, как подготовить плату к обновлению, какими инструментами пользоваться и что делать, если после прошивки прибор не включается или показывает белый экран. Материал подходит как для готовых устройств, так и для самостоятельно собранных наборов DSO138.
Зачем обновлять прошивку DSO138
Заводская версия ПО во многих экземплярах устарела: она может содержать ошибки в обработке сигнала, неудобное меню или ограниченные настройки развёртки. Сторонние разработчики выпустили альтернативные прошивки, которые расширяют функциональность прибора и исправляют ряд недочётов оригинального ПО.
Типичные причины перепрошивки:
- 🔧 устранение зависаний и сбоев в работе меню;
- 📈 получение дополнительных функций в альтернативных прошивках;
- 🛠️ восстановление устройства после неудачного обновления или «окирпичивания»;
- 🧪 эксперименты с открытым исходным кодом и доработка прибора под свои задачи.
Отдельный сценарий — самостоятельная сборка набора: после монтажа платы микроконтроллер иногда оказывается пустым, и без загрузки прошивки прибор просто не запустится. В этом случае прошивка — обязательный этап ввода устройства в эксплуатацию.
Какие прошивки существуют для DSO138
Официальную прошивку распространяет производитель набора (JYETech) — файлы публикуются на странице продукта. Помимо неё, сообществом разработаны альтернативные варианты с открытым кодом, наиболее известные из них основаны на доработках оригинального ПО с улучшенным интерфейсом.
| Тип прошивки | Источник | Особенности | Риски |
|---|---|---|---|
| Официальная заводская | Сайт производителя | Стабильная, проверенная совместимость | Минимальные |
| Альтернативная (open-source) | Репозитории сообщества | Расширенные функции, доработанный интерфейс | Возможны несовместимости с ревизией платы |
| Восстановительная | Официальная, залитая через ST-Link | Возврат к рабочему состоянию после сбоя | Требует аккуратного подключения |
Перед выбором версии проверьте ревизию платы — она указана на шелкографии. Прошивки для разных аппаратных версий могут быть несовместимы, и это одна из самых частых причин «белого экрана» после обновления.
Что понадобится для прошивки
Для работы потребуется минимальный набор инструментов. Главный вопрос — каким способом вы будете заливать прошивку: через отладчик SWD или через последовательный порт с использованием встроенного загрузчика STM32.
- 💻 компьютер с Windows, Linux или macOS;
- 🔌 программатор ST-Link V2 (клоны тоже подходят) либо USB-UART адаптер на 3,3 В;
- 📥 файл прошивки в формате
.hexили.bin; - 🧰 программа для загрузки: STM32CubeProgrammer, ST-LINK Utility или аналогичная;
- 🔍 припой и паяльник — если на плате не распаяны контактные площадки для программирования.
⚠️ Внимание: питание платы и логические уровни DSO138 рассчитаны на 3,3 В. Подключение USB-UART адаптера с уровнями 5 В к выводам микроконтроллера может повредить чип. Перед подключением убедитесь, что адаптер работает в режиме 3,3 В.
Перед прошивкой сфотографируйте плату и запишите текущую версию ПО из меню прибора — это упростит откат, если новая прошивка не подойдёт.
Прошивка через ST-Link: пошаговая инструкция
Способ через ST-Link — самый надёжный: он работает даже если устройство «окирпичено», потому что обращается к микроконтроллеру напрямую через интерфейс SWD, минуя любое программное состояние чипа.
На плате DSO138 предусмотрены контакты для программирования — ищите группу площадок с сигналами SWDIO, SWCLK, GND и питанием 3,3 В (на некоторых ревизиях подпись может отличаться, сверьтесь со схемой вашей платы). Порядок действий:
Сначала соедините программатор с платой четырьмя проводами, соблюдая распиновку. Затем подключите ST-Link к USB-порту компьютера и запустите программу для прошивки. В STM32CubeProgrammer выберите интерфейс ST-LINK, нажмите Connect — при корректном подключении программа определит чип STM32F103. После этого укажите файл прошивки и запустите загрузку, дождитесь сообщения об успешной верификации.
☑️ Проверка перед прошивкой через ST-Link
Если чип не определяется, проверьте качество контактов, попробуйте в настройках программы снизить скорость SWD и включить режим подключения Under Reset — он помогает, когда прошивка в чипе блокирует отладочный интерфейс.
Прошивка через ST-Link работает всегда, даже на полностью «убитом» программно устройстве — это основной способ восстановления DSO138.
Прошивка через UART-загрузчик
Микроконтроллеры STM32 имеют встроенный заводской загрузчик, активируемый состоянием выводов BOOT0 и BOOT1 при включении. Для входа в режим загрузчика вывод BOOT0 нужно подтянуть к высокому уровню (через перемычку или джампер, если он предусмотрен на плате), после чего подать питание.
Далее к выводам последовательного порта микроконтроллера (обычно PA9/PA10 для первого USART) подключается USB-UART адаптер с уровнями 3,3 В: TX адаптера — к RX чипа, RX — к TX, плюс общий провод GND. Прошивка загружается через ту же STM32CubeProgrammer с выбором интерфейса UART либо через специализированные утилиты для STM32.
После завершения загрузки верните BOOT0 в исходное состояние и перезапустите прибор. Этот способ удобен, когда под рукой нет ST-Link, но он требует аккуратности: ошибка в подключении или уровнях сигналов чревата повреждением портов микроконтроллера.
Где взять файл прошивки
Официальные версии публикуются производителем набора на странице продукта. Альтернативные прошивки ищите в репозиториях на GitHub по запросу «DSO138 firmware». Перед скачиванием проверяйте, для какой ревизии платы предназначен файл, и читайте описание изменений.
Типичные проблемы после прошивки и их решение
Самая частая жалоба — белый экран после обновления. Возможные причины: прошивка не соответствует ревизии платы, файл был повреждён при скачивании или загрузка прервалась. Решение — повторная прошивка через ST-Link заведомо подходящей версией.
Вторая типичная ситуация — прибор включается, но изображение искажено или калибровка сбита. В этом случае выполните процедуру калибровки, предусмотренную прошивкой (обычно она запускается из меню прибора или комбинацией кнопок при включении — точный способ указан в описании конкретной версии ПО).
⚠️ Внимание: не подавайте на вход осциллографа напряжение выше допустимого для вашей версии прибора, особенно во время экспериментов с прошивкой и калибровкой. Повреждение входного каскада прошивкой не исправить — потребуется ремонт аналоговой части.
Если после всех попыток устройство не оживает, проверьте напряжения питания на плате и целостность стабилизаторов — проблема может быть аппаратной, а не программной. Программный сбой прошивки никогда не повреждает железо, поэтому «неубиваемый» через ST-Link чип почти всегда удаётся восстановить.
Резервная копия и откат прошивки
Перед любыми экспериментами имеет смысл сохранить текущее содержимое флеш-памяти. В STM32CubeProgrammer для этого есть функция чтения памяти: подключитесь к чипу и сохраните дамп в файл. Если новая прошивка не понравится, вы сможете вернуть исходное состояние за пару минут.
Учтите нюанс: на некоторых устройствах включена защита от чтения (RDP). В этом случае считать прошивку не получится без полного стирания чипа, поэтому заранее найдите в открытых источниках подходящую версию файла для вашей ревизии платы — она станет вашей «страховкой».
Храните файлы прошивок с пометкой версии и ревизии платы в имени файла, например dso138_v2.4_board-B.hex — это избавит от путаницы при повторной прошивке.
Часто задаваемые вопросы
Можно ли «убить» DSO138 неправильной прошивкой?
Программно — практически нет. Даже если залить несовместимую прошивку, микроконтроллер восстанавливается через ST-Link. Реальный риск связан с аппаратными ошибками: неправильным подключением программатора, подачей 5 В на выводы 3,3 В или замыканием при пайке.
Нужно ли паять для подключения программатора?
Зависит от ревизии платы. На некоторых платах контакты программирования выведены на штыревой разъём, на других — только площадки под пайку. Если разъёма нет, потребуется аккуратно припаять провода или использовать пружинные контакты.
Чем альтернативная прошивка лучше заводской?
Альтернативные версии обычно добавляют функции, которых нет в оригинале: улучшенный интерфейс, дополнительные режимы измерения, исправление ошибок. Однако совместимость с конкретной ревизией платы нужно проверять в описании проекта — универсальной прошивки не существует.
Программатор не видит чип STM32. Что делать?
Проверьте распиновку и качество контактов, снизьте скорость SWD в настройках программы, попробуйте режим подключения Under Reset. Также убедитесь, что на плату подано питание — некоторые клоны ST-Link не запитывают целевую плату.
Как узнать версию текущей прошивки?
Обычно версия отображается на экране при включении прибора или в одном из пунктов меню. Если прибор не запускается, версию определить не получится — в этом случае просто прошейте актуальную версию для вашей ревизии платы.