Создание своего скомпилированного образа прошивки (hex файла) для 3Д принтера

Всем привет! На этот раз представляю Вам последнюю статью из трилогии посвященной прошивке 3Д принтеров. Как вы помните, в предыдущих статьях мы рассматривали варианты прошивки принтера с помощью Arduino IDE и исходного кода прошивки, а так же с помощью слайсера Cura и скомпилированного образа прошивки. Вполне логичным продолжением этой истории будет рассказ о том, как создать этот самый файл с образом прошивки (hex файл). Об этом и поговорим.

Прежде чем мы продолжим, предлагаю Вашему вниманию ссылки на предыдущие статьи:

Зачем же нужен скомпилированный вариант прошивки? На самом деле, в таком варианте ее удобнее хранить, передавать и прошивать. Вам не нужно ставить и настраивать не всегда стабильно работающую Arduino IDE, искать необходимые библиотеки. кроме того, в таком выде вы точно не отредактируете файл и точно будете знать что в нем содержится. Хранить такие файлы тоже удобно. Обозвал понятно и готово. С исходниками все сложнее. Да и в конце концов, прошивать из файла образа бастрее и ничего лишнего не требуется.

Кстати, данная статья будет полезна не только владельцам 3Д принтеров, но и разработчикам различных программ для различных микроконтроллеров. Это же очень удобно. Разработал схему, разработал прошивку. Все отладил и проверил. Платы заказал, прошивку собрал и ты уже уверен, что не ошибешься при изготовлении устройства. Да и при желании таким образом можно защитить код от кривых ручек чайника :)

Но что-то мы удалились от темы. Давайте разберемся, как же создать этот самый hex файл.

Для этого нам понадобится любой скетч (хоть простенький Blynk, хоть сам Marlin) и среда Arduino IDE со всеми необходимыми библиотеками.

Если в общих чартах рассмотреть процесс прошивки с помощью Arduino IDE, то можно выделить следующие этапы:

  1. Мы нажимаем кнопку Загрузка
  2. Arduino IDE проверяет скетч
  3. Arduino IDE Компилирует скетч в соответствии с заданными параметрами (с использованием указанных библиотек и с учетом конфигурации платы, которую вы выбрали)
  4. Arduino IDE Указанным способом загружает скомпилированный скетч в микроконтроллер
  5. Arduino IDE при наличии возможности перезагружает микроконтроллер

Укрупненно процесс работает именно так. Как видно, на одном из этапов Arduino IDE осуществляет компиляцию скетча. При этом среда размещает файл во временном каталоге, а потом записывает в микроконтроллер.

При желании, можно отловит этот файлик и забрать себе, однако это не наш метод, т.к. есть пункт по проще.

Рассмотрим это на примере прошивки для 3Д принтера Anycubic 4max.

Для этого нам понадобятся готовые и сконфигурированные исходники прошивки. Предполагается, что исходники уже готовы для прошивки в принтер.

Среда Arduino IDE с необходимыми библиотеками (подробнее об этом можно прочесть в статье “Устанавливаем прошивку Marlin на 3D принтер с помощью Arduino IDE

Пускай, корневая папка с исходниками прошивки marlin расположена по пути C:\TEMP\TEST\MARLIN_1.1.9_4MAX_RU\anycubic-4max

Заходим в указанный каталог и двойным кликом открываем файл anycubic-4max.ino

Создание своего скомпилированного образа прошивки (hex файла) для 3Д принтера

В процессе открытия файла автоматически запустится среда и отобразится содержимое файла anycubic-4max.ino

Создание своего скомпилированного образа прошивки (hex файла) для 3Д принтера

Теперь необходимо выбрать плату, для которой будет компилироваться прошивка, в моем случае это “Arduino / Genuino Mega or Mega 2560

Создание своего скомпилированного образа прошивки (hex файла) для 3Д принтера

Необходимо выбрать микроконтроллер (процессор) нашей платы, в моем случае это “ATmega 2560 (Mega 2560)

Все готово. Теперь начнется магия компиляции. Для получения hex файла необходимо выбрать пункт меню “Скетч” -> “Экспорт бинарного файла Ctrl + Alt + S

Создание своего скомпилированного образа прошивки (hex файла) для 3Д принтера

После этого начнется магия компиляции. Среда осуществит проверку и сборку прошивки в бинарный (hex) файл.

Создание своего скомпилированного образа прошивки (hex файла) для 3Д принтера

Ждем окончания компиляции.

Создание своего скомпилированного образа прошивки (hex файла) для 3Д принтера

После завершения процесса, в каталоге со скетчем (в нашем случае это C:\TEMP\TEST\MARLIN_1.1.9_4MAX_RU\anycubic-4max ) появится 2 файла:

  1. anycubic-4max.ino.mega.hex
  2. anycubic-4max.ino.with_bootloader.mega.hex

Создание своего скомпилированного образа прошивки (hex файла) для 3Д принтера

anycubic-4max.ino.mega.hex – содержит непосредственно саму скомпилированную прошивку

anycubic-4max.ino.with_bootloader.mega.hex – содержит прошивку + загрузчик

Поскольку во многих принтерах загрузчик уже прописан и перезаписывать его крайне нежелательно, то второй файл можно удалять. Он нам не нужен.

Ну вот и все. Как видите, ничего сложного.

А что дальше? Ну а дальше действовать по инструкции, описанной в статье “Устанавливаем прошивку Marlin на 3D принтер с помощью слайсера Cura или что делать с hex файлом?

Надеюсь, что материал оказался для Вас полезен.

Если вы еще не обзавелись 3Д принтером и думаете какую модель выбрать, могу порекомендовать следующие модели:

3д принтер Anycubic i3 Mega

3д принтер Anycubic Mega-S (Anycubic S)

3Д принтер Anycubic 4MAX Pro

Если вам понравилась статья и вы хотите поддержать сайт, получать уведомления о новых материалах, вступите в нашу группу Вконтакте: https://vk.com/ionline_by

Если вы хотите оперативно получать уведомления о выходе новых статей, подключите себе PUSH уведомления по ссылке: https://ionlineby.pushassist.com/

Поделись с друзьями!
Мои проекты на GITHUB


Мои проекты на GitHub

Реклама




iOnline в социальных сетях
IOnLine.by в социальной сети Вконтакте (vk.com)


Мы в Facebook


Ionline.by в Instagram


Мы в Twitter