写在前面的话:个人学习笔记,抛砖引玉,希望有兴趣的人加入QQ群415469069一起讨论,欢迎有共同爱好的人。
本教程以ESP-12N,CP2102开发板为例进行讲解。
- 代码。
--wifi_light.lua wifi.setmode(wifi.STATION) wifi.sta.config("YOUR_NETWORK_NAME","YOUR_NETWORK_PASSWORD") print(wifi.sta.getip()) led1 = 0 gpio.mode(led1, gpio.OUTPUT) srv=net.createServer(net.TCP) srv:listen(80,function(conn) conn:on("receive", function(client,request) local buf = ""; local _, _, method, path, vars = string.find(request, "([A-Z]+) (.+)?(.+) HTTP"); if(method == nil)then _, _, method, path = string.find(request, "([A-Z]+) (.+) HTTP"); end local _GET = {} if (vars ~= nil)then for k, v in string.gmatch(vars, "(%w+)=(%w+)&*") do _GET[k] = v end end buf = buf.."<h1> ESP8266 Web Server</h1>"; buf = buf.."<p>GPIO16 <a href=\"?pin=ON1\"><button>ON</button></a> <a href=\"?pin=OFF1\"><button>OFF</button></a></p>"; if(_GET.pin == "ON1")then gpio.write(led1, gpio.LOW); elseif(_GET.pin == "OFF1")then gpio.write(led1, gpio.HIGH); end client:send(buf); client:close(); collectgarbage(); end) end) |
二、说明:
- ,wifi模式为station,输入wifi名和密码进行配置。
句法:wifi.setmode(mode[, save]) 作用:配置WiFi模式使用 参数: mode 价值应该是其中之一 wifi.STATION:当设备连接到WiFi路由器时。这通常是为了让设备访问互联网。 wifi.SOFTAP: 因为当设备只作为一个接入点。这将允许您在WiFi网络列表中查看设备(当然,除非您隐藏SSID)。在这种模式下,您的计算机可以连接到设备,创建一个局域网。除非您更改该值,否则NodeMCU设备将被分配一个本地IP地址192.168.4.1,并为您的计算机分配下一个可用的IP地址,例如192.168.4.2。 wifi.STATIONAP:是的组合wifi.STATION和wifi.SOFTAP。它允许您创建本地WiFi连接并连接到另一个WiFi路由器。 wifi.NULLMODE:将WiFi模式更改为NULL_MODE将使wifi进入与MODEM_SLEEP类似的低功耗状态,但未提供wifi.nullmodesleep(false)。 save 选择是否将wifi模式保存到闪存 true:WiFi模式配置将在电源周期中保留。(默认) false:WiFi模式配置将不会通过重新启动进行 |