• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Нужна помощь Программирование для "чайника"

amurka

New member
Вопросы "чайника".
На высокоуровневых языках никогда раньше не программировал. Доки почитал, легче не стало
Обращаюсь за помощью. Плата Nodemcu c прошивкой LUA.
Подключил к ней датчик dht22. Написал простенькую программку по опросу датчика и отображения значений на web морде. Заработало. Теперь пытаюсь прикрутить интерфейс по настройке
Что хочу сделать: при включении вычитать из файла инициализации параметры сети (параметры 1)и подключиться к ней. Если подключиться не удалось - сделать точку доступа с параметрами сети 2. Если файла нет (или он пустой) открыть новую страничку, с которой внести настройки обоих сетей, и по завершению рестартануть с новыми параметрами.
Вопросы:
1. открываю файл и считываю переменные
file.open("init.cfg")
modest=(file.readline()) --какой режим работы установить sta, ap, sta+ap кодирую значением 0,1, 2
ssidst=(file.readline()) -- имя сети
keyst=(file.readline()) -- ключ
file.close()
дальше проверка режима:
else modestr == 0 then - такая запись не работает(точнее возвращает что условие не верно)
Если выполнять команду
wifi.sta.config({ssid=ssidst,pwd=keyst}) , команда выполняется, однако к сети подключения нет
Если делать print(modest,ssidst,keyst) то выводятся значения, как прописано в файле инициализации
Если прописать вместо ssidst и keyst те-же значения руками - подключение есть
Есть смутные подозрения, что дело в форматах - но как сделать эти записи правильно - непонимаю

2 й вопрос обратен 1му - как организовать запись строки, введенной на страничке, в файл
допустим некоей переменной абв как-то строку присвоили, а вот как ее записать?
file.writeline( а вот тут как записать? На "абв" - пишется то, что в кавычках, на ..абв.. ругается на точки) :(
3. по механизму запуска и выполнения скриптов
с init.lua пошел старт
в нем прописано
некие действия (например помигать светодиодом)
dofile("setup.lua")
dofile("main.lua")


в setup.lua
некие действия и, например
if a=1 then
dofile("aaa.lua")
else
dofile("bbb.lua")
end

при переходе из setup в ааа скрипт setup остановится или будет в памяти болтаться?
можно ли как-то вызывать скрипты как подпрограммы?
т.е. нужно к примеру моргнуть светодиодом.
надо каждый раз последовательность моргания прописывать или можно один раз написать процедуру и как-то вызывать как подпрограмму?


Понимаю, что вопросы глупые, но прочтение api на nodemcu и найденые доки по lua на эти вопросы света не пролили.

Помогите плиз....
 
Сверху Снизу