Создаем отдельно init и main файл, работаем с таймерами на языке программирования Lua.

Страница на этапе разработки

В данном уроке мы с Вами изучим работу таймеров для улучшения программы с предыдущего урока. Для начала мы сделаем два файла. Первый у нас так и останется init.lua, а вторым файлом сделаем main.lua. В первом файле мы опишем все переменные и сделаем инициализацию нашей периферии.  Таким образом мы получим привычную систему где у нас есть отдельно инициализация и не посредственно сама программа.
Для запуска нового файла нам нужна команда dofile («name.lua») в качестве аргумента которой мы указываем имя запускаемого файла.
И так у нас теперь есть отдельно инициализация и выполняющая программа. Теперь нам нужно, что бы вместо символов «*» при подключении к интернету у нас моргал светодиод используя таймер, а после подключения таймер останавливался и уничтожался. Таким образом мы освободим ресурсы микроконтроллера для других задач.
Для начала мы рассмотрим один из вариантов уничтожения таймера:

data = 0
flag = true

mytimer = tmr.create()
function askedbytimer(t)
       if not flag then
           t:stop()
           t:unregister()
           t, mytimer = nil, nil
           return
       end
       print(«timer work»)
       print (data)
       data = data + 1
       if data == 5 then
           print(‘Timer kill’)
           flag = false
           return
       end
end
mytimer:alarm(5000, tmr.ALARM_AUTO, askedbytimer)


https://habr.com/ru/post/566756/