В настоящее время я пишу приложения на луа в nodeMCU и не имею никаких ограничений в памяти.
Попробую и Вас научить этому.
—————
Сначала пару слов без протокола.
———————
1) почему LUA?
потому,
что ничего не надо,
кроме редактора текста, платы devkit и кабеля USB-microUSB
—————————
потому, что самый короткий код программы.
————————-
потому, что когда все отладите и очень захочется ускорить работу, то перепишите готовый алгоритм с помощью API C в маленькую функцию на СИ.
————————-
2) почему devkit ?
потому что имеем 4Мбайт памяти , готовую плату с 10 пинов на ввод и вывод и кабель для подключения к любому компу.
Паяльник не треба.
———————
Теперь перейдем к правилам.
—————————
ПРАВИЛО 1:
любой проект состоит из главной программы,
которую называем main и модулей,
которые называем по вкусу(т е как нравится)
———————————
ПРАВИЛО 2:
(есть исключение, но о нем позже)
программа main.lc (или main.lua) имеет следующий вид:
—————————-
dofile(«start.lc»)
———————
function cb()
collectgarbage()
dofile(‘modul_1.lc’);
dofile(‘modul_2.lc’);
…
dofile(‘modul_n.lc’);
end
————————-
tmr.alarm(1,2000,1,cb)
————————-
где:
start.lc, modul_1.lc,
modul_2.lc,
…
modul_n.lc — модули ( у меня они автоматом грузятся в ESP в бинарном коде, поэтому у них расширение lc)
если Вы грузите текстовые то будет расширение .lua и ПОТЕРЯ примерно половины свободной памяти.
наглядный пример: