Зачем конвертировать HEX в EXE?
Intel HEX, представленный в 1973 году, - это текстовая кодировка ASCII скомпилированной прошивки для встроенных процессоров. Windows .exe - это Portable Executable, содержащий машинный код x86 или x64, таблицы импорта DLL и ссылки на Windows API - совершенно другая архитектура процессора и среда выполнения. Байты прошивки для микроконтроллера написаны для чипа, который Windows не может запустить, и не имеют понятия о процессах Windows, файловой системе или API.
Способы конвертации HEX в EXE
Arduino IDE FREE
Используйте «Скетч» > «Загрузить через программатор» в Arduino IDE, чтобы прошить .hex в целевой микроконтроллер - это и есть предназначение файла Intel HEX, а не конвертация в исполняемый файл.
avr-objcopy OPEN-SOURCE
Если вам нужны необработанные байты в виде плоского бинарного файла, выполните команду avr-objcopy -I ihex -O binary firmware.hex firmware.bin - конвертация в .bin является единственным стандартным и полезным преобразованием формата из Intel HEX.
Об этих форматах
Файл .hex - это файл Intel HEX: скомпилированная прошивка для микроконтроллера, такого как Arduino, AVR или PIC, хранящаяся в виде текстовых записей. Вы не запускаете его на ПК - вы…
Открыть детали .HEX →Файл EXE - это исполняемая программа для Windows. В Windows дважды щелкните по нему, чтобы запустить. На Mac или Linux используйте CrossOver или Wine - EXE не запускаются нативно вне…
Открыть детали .EXE →Качество и на что обратить внимание
- Ни один легальный инструмент не может конвертировать
.hexв.exe- прошивка нацелена на другую архитектуру процессора без заголовка Windows PE, таблиц импорта или инструкций x86. - Файлы Intel HEX являются текстовыми; откройте
.hexв любом текстовом редакторе, чтобы изучить записи - каждая строка начинается с:за которым следуют шестнадцатеричные цифры. - Любой онлайн-инструмент, заявляющий о выполнении такой конвертации, либо не работает, либо потенциально опасен.
Часто задаваемые вопросы
Существует ли онлайн-инструмент для конвертации HEX в EXE?
У меня есть файл .hex, который мне прислали - как его использовать?
Можно ли посмотреть, какой код находится внутри файла .hex?
.bin с помощью avr-objcopy -I ihex -O binary и изучите в HEX-редакторе.