Файл с расширением .hex чаще всего оказывается либо прошивкой микроконтроллера в формате Intel HEX, либо дампом данных в шестнадцатеричном виде — и от назначения файла зависит, чем его открывать. Если двойной клик не срабатывает, Windows просто не знает, какая программа ассоциирована с этим расширением: ассоциацию придётся задать вручную или открыть файл изнутри подходящего редактора.
В этой статье разберём, что представляет собой формат HEX, какие программы подходят для просмотра и редактирования, и как выбрать инструмент под конкретную задачу — от простого просмотра содержимого до загрузки прошивки в микроконтроллер.
Что такое HEX-файл
Под расширением .hex скрываются два разных типа содержимого. Первый и самый распространённый — Intel HEX: текстовый формат, в котором бинарные данные (обычно прошивка) записаны в виде ASCII-строк с шестнадцатеричными числами, адресами и контрольными суммами. Такой файл можно открыть даже в «Блокноте» — внутри будут строки, начинающиеся с двоеточия.
Второй вариант — произвольный бинарный файл, которому автор просто присвоил расширение .hex. Определить тип помогает простая проверка: откройте файл в любом текстовом редакторе. Если видны читаемые строки вида :100000000C943... — это Intel HEX. Если набор нечитаемых символов — перед вами бинарные данные, и работать с ним нужно через hex-редактор.
Чем открыть HEX для обычного просмотра
Для быстрого просмотра содержимого подойдут инструменты, которые уже есть в системе или устанавливаются за минуту:
- 📝 Блокнот Windows — откроет текстовый Intel HEX как есть, без подсветки и структуры.
- 📝 Notepad++ — покажет текстовый HEX с подсветкой, нумерацией строк и поиском; удобен для изучения больших файлов.
- 🔍 Visual Studio Code — с расширениями для hex-просмотра отображает и текстовый, и бинарный вариант.
- 📂 Total Commander — встроенный просмотрщик (клавиша F3) умеет показывать файл в шестнадцатеричном виде.
Если файл нужно просто посмотреть, а не менять, этого достаточно. Выбирайте Notepad++ — он корректно работает с файлами большого размера и не «зависает» на прошивках в несколько сотен килобайт.
Hex-редакторы для просмотра и редактирования
Когда требуется не просто посмотреть, а изменить отдельные байты, нужен специализированный hex-редактор. Он показывает данные в двух панелях: слева — шестнадцатеричные значения, справа — их текстовое представление. Изменения можно вносить в любой из панелей.
| Программа | Платформа | Лицензия | Особенности |
|---|---|---|---|
| HxD | Windows | Бесплатная | Простой интерфейс, сравнение файлов, работа с дисками и RAM |
| 010 Editor | Windows, macOS, Linux | Платная (пробный период) | Шаблоны парсинга структур, мощный анализ бинарных данных |
| WinHex | Windows | Платная | Инструменты для компьютерной криминалистики, восстановление данных |
| Frhed | Windows | Бесплатная, open source | Лёгкий редактор, частичная загрузка больших файлов |
| Hex Editor Neo | Windows | Бесплатная версия + платная | Работа с файлами большого размера, история изменений |
Для большинства задач хватит бесплатного HxD: он открывает файлы любого размера, умеет сравнивать два файла побайтово и экспортировать данные. Профессиональные инструменты вроде 010 Editor оправданы, когда нужно разбирать сложные бинарные структуры по шаблонам.
Открытие HEX-прошивки для микроконтроллеров
Если HEX-файл — это прошивка для AVR, STM32, PIC или платы Arduino, «открывать» его обычно означает «загрузить в контроллер». Для этого используются программаторы и фирменные утилиты, а не редакторы.
- ⚙️ Arduino IDE — компилирует скетч в HEX и загружает его в плату; готовый HEX можно прошить через связку с
avrdude. - ⚙️ AVRDUDE — консольная утилита для прошивки AVR-контроллеров через программатор.
- ⚙️ STM32CubeProgrammer — официальная утилита STMicroelectronics для загрузки прошивок в STM32.
- ⚙️ MPLAB X IPE — среда Microchip для прошивки PIC-контроллеров.
Пример команды загрузки прошивки в AVR через avrdude (параметры программатора и порта зависят от вашего оборудования):
avrdude -c usbasp -p atmega328p -U flash:w:firmware.hex:i
Конкретные ключи и тип программатора смотрите в документации к вашей плате и программатору — неверные параметры могут привести к ошибке записи или некорректной работе контроллера.
⚠️ Внимание: перед прошивкой микроконтроллера убедитесь, что HEX-файл собран именно под вашу модель чипа. Прошивка от другого контроллера может вывести устройство из строя или потребовать полного стирания и восстановления через специальный программатор.
☑️ Проверка перед прошивкой HEX-файла
Чем открыть HEX на Android
На смартфоне задача решается приложениями из категории hex-редакторов. В Google Play доступны бесплатные варианты — например, Hex Editor от First Row или аналогичные инструменты с похожим названием. Они показывают файл в шестнадцатеричном виде и позволяют редактировать байты.
Для простого просмотра текстового Intel HEX подойдёт любой текстовый редактор на Android или файловый менеджер со встроенным просмотрщиком — например, X-plore File Manager или MiXplorer. Учтите: редактирование системных файлов через hex-редактор на Android часто требует root-доступа и может нарушить работу системы.
Как конвертировать HEX в другие форматы
Иногда требуется преобразовать Intel HEX в чистый бинарный файл (.bin) или наоборот — например, когда программатор принимает только один формат. Для этого существуют специальные утилиты.
Кроссплатформенный инструмент — srec_cat из пакета SRecord. Пример конвертации HEX в BIN:
srec_cat firmware.hex -Intel -o firmware.bin -Binary
Также конвертацию умеют некоторые графические hex-редакторы и среды прошивки — например, STM32CubeProgrammer позволяет открыть HEX и сохранить данные в другом формате. Перед конвертацией сохраните копию исходного файла.
Структура строки Intel HEX
Каждая строка формата Intel HEX начинается с двоеточия, затем идут: количество байт данных (2 символа), адрес (4 символа), тип записи (2 символа), сами данные и контрольная сумма (2 символа). Тип записи 00 означает данные, 01 — конец файла. Благодаря контрольным суммам повреждённая строка прошивки обычно выявляется ещё на этапе загрузки в программатор.
Частые проблемы при открытии HEX-файлов
⚠️ Внимание: редактируя HEX-файл прошивки вручную, помните, что контрольные суммы строк станут неверными, и программатор может отказаться записывать файл. После правок в текстовом виде пересчитайте контрольные суммы специальной утилитой или редактируйте файл в hex-редакторе, который делает это автоматически.
Разберём типичные ситуации. Файл открывается пустым или с ошибкой — чаще всего он недокачан или повреждён при передаче; скачайте его заново и сравните размер с указанным на источнике. Если Windows спрашивает, какой программой открыть файл, — это нормально: расширение .hex не привязано к приложениям по умолчанию, выберите редактор через пункт «Выбрать другое приложение».
Ещё одна ситуация — программатор не принимает файл. Проверьте, что формат действительно Intel HEX, а не переименованный BIN, и что утилита прошивки обновлена до актуальной версии. Ошибки записи на этапе верификации обычно указывают на проблемы с подключением программатора или питанием платы, а не на сам файл.
FAQ: частые вопросы о HEX-файлах
Можно ли открыть HEX-файл обычным Блокнотом?
Да, если это текстовый формат Intel HEX — вы увидите строки с шестнадцатеричными данными. Бинарный файл с расширением .hex откроется как набор нечитаемых символов; для него нужен hex-редактор вроде HxD.
Чем HEX отличается от BIN?
HEX (Intel HEX) — текстовый формат, где бинарные данные записаны в ASCII-виде вместе с адресами и контрольными суммами. BIN — чистые бинарные данные без служебной информации. Конвертировать один формат в другой можно утилитой srec_cat или средой прошивки.
Какой бесплатный hex-редактор выбрать для Windows?
Оптимальный вариант для большинства задач — HxD: он бесплатен, открывает большие файлы, умеет сравнивать файлы и редактировать данные дисков. Из альтернатив — Frhed и бесплатная версия Hex Editor Neo.
Как прошить HEX-файл в Arduino?
Если у вас скетч — Arduino IDE сама скомпилирует и загрузит его. Готовый HEX-файл прошивается через утилиту avrdude с указанием программатора, модели контроллера и порта. Точные параметры зависят от вашей платы и программатора — сверяйтесь с их документацией.
Опасно ли редактировать HEX-файл прошивки?
Само редактирование файла безопасно, но запись изменённой прошивки в устройство — рискованна: неверные данные могут нарушить работу контроллера. Всегда сохраняйте копию исходного файла и, если возможно, дамп текущей прошивки устройства перед записью.