Я думаю данная тема будет многим интересна, создавая проект GSM сигнализации столкнулся с проблемой неадекватной работы ардуины при превышении использования динамической памяти более 40%. Хотя думаешь всего-то 40%. Ан нет.
Погуглив немного понял что если неправильно работать со строками, то строковая переменная может динамически "расширятся" и занимать уже другое место в динамичесой памяти, и так несколько раз пока она не кончится, а кончится она быстро и полезут артефакты.
Из своих наблюдений при конструкции вида
Артефакты появляются очень быстро
Более оптимальная такого вида
-
Ну и видимо при передаче переменной от одного блока к другому создается ее копия, т.е. место в памяти занимается в два раза больше.
Хочется услышать (увидеть) от знатоков, как оптимизировать работу со строками в FLPROG, если это возможно конечно...