Уменьшение тактовой частоты увеличивает размер эскиза?
Я только что снизил тактовую частоту моего arduino promini 3.3v - 328p с 8 МГц до 1 МГц на внешнем тактовом сигнале, отключив обнаружение выхода из строя, и когда я скомпилировал свой старый скетч, он больше не загружался, потому что его размер внезапно увеличился с 31 КБ до 35 КБ.
Кто-нибудь знает, почему это могло произойти? Я не вносил никаких изменений в код, и он по-прежнему загружается в 8-мегагерцовый Arduino без каких-либо проблем.
Я использовал эти файлы конфигурации с низким энергопотреблением: https://github.com/joe-speedboat/Arduino-LowPower
@designDemon, 👍0
Обсуждение1 ответ
В вашем коде есть задержки? Если вы изменили тактовую частоту, то скомпилированная сборка для задержек может потребовать больше инструкций NOP или чего-то подобного для достижения той же задержки в реальном времени. В результате размер скомпилированного скетча может увеличиться.
Задержки реализуются с помощью циклов, а не длинных строк или nop
., @Edgar Bonet
- Самый компактный способ питания Arduino от розетки
- Как заставить Arduino взаимодействовать с тремя другими Ардуино?
- avrdude: stk500_getsync(): not in sync: resp=0x00
- Ошибка "avrdude:stk500_recv(): programmer is not responding" при загрузке скетча в Arduino Pro Mini
- Как остановить SoftwareSerial от получения данных и повторно включить его в какой-то другой момент?
- Сторожевой таймер застрял в цикле перезапуска? (мигает зеленый светодиод)
- Arduino Pro Mini (версия 3.3 V) диапазон входного напряжения / допуск
- Arduino 16 МГц только с 3,3 В?
Сравните platform.txt из Arduino IDE с файлом в файлах конфигурации низкого энергопотребления выше. Существует существенная разница в настройках компилятора/линкера., @Mikael Patel
@MikaelPatel: Ты имеешь в виду
-flto
?, @Edgar Bonet