首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在NodeMCU复位后立即自动启动Lua程序

如何在NodeMCU复位后立即自动启动Lua程序
EN

Stack Overflow用户
提问于 2016-08-20 19:49:49
回答 1查看 2.2K关注 0票数 0

我想在NodeMCU内存上保存一个Lua程序。当NodeMCU在重置后启动并准备接收命令时,该脚本应该开始自动执行,而无需将NodeMCU附加到任何外部计算机(通过ESPlorer等)。我仍然可以通过ESPlorer终止执行。最好能举个好例子。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-20 20:27:39

init.lua是你的朋友。请参阅https://nodemcu.readthedocs.io/en/latest/en/upload/#initlua上的完整文档。

代码语言:javascript
复制
-- load credentials, 'SSID' and 'PASSWORD' declared and initialize in there
dofile("credentials.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

print("Connecting to WiFi access point...")
wifi.setmode(wifi.STATION)
wifi.sta.config(SSID, PASSWORD)
-- wifi.sta.connect() not necessary because config() uses auto-connect=true by default
tmr.alarm(1, 1000, 1, function()
    if wifi.sta.getip() == nil then
        print("Waiting for IP address...")
    else
        tmr.stop(1)
        print("WiFi connection established, IP address: " .. wifi.sta.getip())
        print("You have 3 seconds to abort")
        print("Waiting...")
        tmr.alarm(0, 3000, 0, startup)
    end
end)

更新

wifi.sta.config的当前语法如下:

代码语言:javascript
复制
station_cfg={}
station_cfg.ssid=SSID
station_cfg.pwd=PASSWORD
wifi.sta.config(station_cfg)
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39058106

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档