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

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

print(‘Ok’)
dofile(«main.lua»)

И так у нас теперь есть отдельно инициализация и выполняющая программа. Теперь нам нужно, что бы вместо символов «*» при подключении к интернету у нас моргал светодиод используя таймер, а после подключения таймер останавливался и уничтожался. Таким образом мы освободим ресурсы микроконтроллера для других задач.
Для начала мы рассмотрим один из вариантов уничтожения таймера:

 

data=0
flag=0
mytimer=tmr.create()
function asktimer(t)
          if flag==1 then
              t:stop()
              t:unregister()
              t,mytimer=nil,nil
          end
         print(«timer work»)
        data=data+1
        print(data)
        if data==5 then
            print(«Timer kill»)
           flag=1
      end
end
mytimer:alarm(1000,tmr.ALARM_AUTO,asktimer)