NodeMcu Web RBG!

NodeMcu部分

1.init.lua

该部分使用到了httpServer,了解具体内容点击项目地址下载httpServer.lua即可。
station_cfg={} 
station_cfg.ssid="wifi"
station_cfg.pwd="xiaog123"
local color = {r = 0, b = 0, g = 0}
num = 12  --灯珠数量
ws2812.init()
wifi.setmode(wifi.STATION)  
wifi.sta.config(station_cfg)
wifi.sta.connect()

tmr.alarm(1, 2000, tmr.ALARM_AUTO, function()
    if wifi.sta.getip() == nil then
        print('Waiting for IP ...')
    else
        print('IP is ' .. wifi.sta.getip())
        tmr.stop(1)
    end
end)
--写出rbg的值
function ws2812Config(v)
    buffer = ws2812.newBuffer(num, 3)
    buffer:fill(v.b, v.r, v.g)
    ws2812.write(buffer)
end

ws2812Config(color)
wifi.sta.autoconnect(1)
dofile('httpServer.lua')
httpServer:listen(80)
-- 从请求中取出rbg写出
httpServer:use('/config',function(req, res)
    color.r = req.query.r
    color.b = req.query.b
    color.g = req.query.g
    ws2812Config(color)
    print(buffer:get(1))
    res:send('{"status": "ok"}')
end)

2.Html

由于NodeMcu内存比较小故第三方cdn加速的js和css


    ColorLight
    
    


    

上传部分

1.将html代码保存为index.html
2.保存lua代码为init.lua
3.下载httpServer.lua
将以上文件上传至NodeMcu

硬件部分

1.NodeMcu x1
2.ws2812 x1

软件部分

ESPlorer

演示地址

https://gss3.baidu.com/6LZ0ej3k1Qd3ote6lo7D0j9wehsv/tieba-smallvideo-transcode/57_d4994902465bae00ff78c285014f680b_3.mp4

你可能感兴趣的:(NodeMcu Web RBG!)