zoukankan      html  css  js  c++  java
  • ESP8266 的几个代码 加深对LUA的理解

    --some functions
    dofile("functions.lua")
    lighton1=0
    lighton2=0
    lighton3=0
    lighton4=0
    
    pin1 = 0
    pin2 = 1
    pin3 = 4
    pin4 = 5
    gpio.mode(pin1,gpio.OUTPUT)
    gpio.mode(pin2,gpio.OUTPUT)
    gpio.mode(pin3,gpio.OUTPUT)
    gpio.mode(pin4,gpio.OUTPUT)
    
    --pin1
    tmr.alarm(0,1000,1,function()
    if lighton1==0 then 
        lighton1=1 
        gpio.write(pin1,gpio.LOW)
        -- 512/1024, 50% duty cycle
    else 
        lighton1=0 
        gpio.write(pin1,gpio.HIGH)
    end 
    end)
    --pin2
    tmr.alarm(1,1000,1,function()
    if lighton2==0 then 
        lighton2=1 
        gpio.write(pin2,gpio.LOW)
        -- 512/1024, 50% duty cycle
    else 
        lighton2=0 
        gpio.write(pin2,gpio.HIGH)
    end 
    end)
    --pin3
    tmr.alarm(2,1000,1,function()
    if lighton3==0 then 
        lighton3=1 
        gpio.write(pin3,gpio.LOW)
        -- 512/1024, 50% duty cycle
    else 
        lighton3=0 
        gpio.write(pin3,gpio.HIGH)
    end 
    end)
    --pin4
    tmr.alarm(3,1000,1,function()
    if lighton4==0 then 
        lighton4=1 
        gpio.write(pin4,gpio.LOW)
        -- 512/1024, 50% duty cycle
    else 
        lighton4=0 
        gpio.write(pin4,gpio.HIGH)
    end 
    end)
    dofile("sjson.lua")
    --inti.lua
    --sjson.lua
    name = "lxx" print("Hello world!") print(name .. ",nihao!")
    --functions.lua
    function
    startup() if file.open("init.lua") == nil then print("init.lua deleted or renamed") else print("Running") file.close("init.lua") -- the actual application is stored in 'application.lua' -- dofile("application.lua") end end -- Define WiFi station event callbacks wifi_connect_event = function(T) print("Connection to AP("..T.SSID..") established!") print("Waiting for IP address...") if disconnect_ct ~= nil then disconnect_ct = nil end end wifi_got_ip_event = function(T) -- Note: Having an IP address does not mean there is internet access! -- Internet connectivity can be determined with net.dns.resolve(). print("Wifi connection is ready! IP address is: "..T.IP) print("Startup will resume momentarily, you have 3 seconds to abort.") print("Waiting...") tmr.create():alarm(3000, tmr.ALARM_SINGLE, startup) end wifi_disconnect_event = function(T) if T.reason == wifi.eventmon.reason.ASSOC_LEAVE then --the station has disassociated from a previously connected AP return end -- total_tries: how many times the station will attempt to connect to the AP. Should consider AP reboot duration. local total_tries = 75 print(" WiFi connection to AP("..T.SSID..") has failed!") --There are many possible disconnect reasons, the following iterates through --the list and returns the string corresponding to the disconnect reason. for key,val in pairs(wifi.eventmon.reason) do if val == T.reason then print("Disconnect reason: "..val.."("..key..")") break end end if disconnect_ct == nil then disconnect_ct = 1 else disconnect_ct = disconnect_ct + 1 end if disconnect_ct < total_tries then print("Retrying connection...(attempt "..(disconnect_ct+1).." of "..total_tries..")") else wifi.sta.disconnect() print("Aborting connection to AP!") disconnect_ct = nil end end
  • 相关阅读:
    Python 操作Redis 转载篇
    Django运行SQL语句
    将博客搬至CSDN
    MySQL学习(三)函数
    MySQL学习(二)数据类型
    MySQL学习(一) 数据表基本操作
    Django聚合函数
    windows平台上编译mongdb-cxx-driver
    小程序登陆遇到 ERR_REQUEST_PARAM
    Opengrok服务器搭建step by step
  • 原文地址:https://www.cnblogs.com/polar-lights/p/8664293.html
Copyright © 2011-2022 走看看