Компиляция скетча без загрузчика

chernykh986
Идет загрузка
Загрузка
16.06.2019
187
11
печатает на Prusa i3
Вопросы и ответы
Приветствую всех!

Компилирую Marlin 1.1.9 (с автоуровнем) для Melzi V2_05.

Не хватает памяти. Если задаю AUTO_BED_LEVELING_BILINEAR, то приходится отключать ПИД-регулирование стола, THERMAL_PROTECTION стола и экструдера, и Linear Advance тоже. Приходится включать AUTO_BED_LEVELING_3POINT. Тогда код помещается в память.

Есть возможность скомпилировать без загрузчика? Тогда памяти будет доступно немножко больше. А загрузить можно программатором.

Пробовал ли кто-нибудь компилировать проекты Arduino альтернативными компиляторами? Возможно объем кода будет меньше?

P.S. Понимаю, что проще всего заменить плату. Но на этом принтере я тренируюсь. Планирую позже начать сборку другого.

Спасибо.
Ответы на вопросы

Ответы

16.06.2019 в 18:20
1

А смьісл из жигуля лепить мерседес?

16.06.2019 в 19:03
0

Можно освободить немного памяти, раздокументировав строку #define DISABLE_M503.

17.06.2019 в 06:55
0

Спасибо.
Удалось включить AUTO_BED_LEVELING_BILINEAR,  ПИД-регулирование стола и Linear Advance.

17.06.2019 в 00:27
1

Русский язык отключите и на все хватит

17.06.2019 в 05:06
0

Отключен - дисплей не поддерживает.

17.06.2019 в 04:26
0

Во-первых, от Arduino IDE не только можно, но и нужно избавиться. Во-вторых, к советам выше, советую включить оптимизацию у компилятора по размеру кода, для gcc это будет:

gcc -Os

https://stackoverflow.com/questions/19689014/gcc-difference-between-o3-and-os

17.06.2019 в 07:09
0

Включил в настройках 'Show verbose output during compilation'. Увидел:

avr-g++' -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega1284p -DF_CPU=16000000L -DARDUINO=10809 -DARDUINO_AVR_SANGUINO -DARDUINO_ARCH_AVR '-IC:\Program Files (x86)\Arduino_Melzi\hardware\arduino\avr\cores\arduino' '-IC:\Program Files (x86)\Arduino_Melzi\hardware\arduino\avr\variants\sanguino' 'C:\Users\ILya\AppData\Local\Temp\arduino_build_417468\sketch\emergency_parser.cpp' -o nul

Оптимизация уже включена?

18.06.2019 в 02:50
0

Да, теперь удалить оттуда -g

18.06.2019 в 06:06
0

Пробовал. Размер не меняется.

17.06.2019 в 07:48
0

Выяснил, что если загружать через программатор, то загружаться будет без загрузчика:
https://www.arduino.cc/en/Hacking/Programmer

17.06.2019 в 15:57
0

Вообщем, отключил использование EEPROM:
//#define EEPROM_SETTINGS // Enable for M500 and M501 commands
//#define EEPROM_CHITCHAT
Размер скомпилированного файла уменьшился на 4%. Все влезло.

Для написания комментариев, пожалуйста, авторизуйтесь.

Читайте в блогах

Печать фигурок из фотополимера

Venom

Туфли 45 размера

Вебинар: Перезагрузка | Подписка на 3D принтер Hercules и расходные материалы за 9990 ₽ в месяц

Сушилка филамента

Шок - цены на ESUN!