ESP8266_WIFI_led控制

本代码主要基于简单的lua代码实现联网发送指令从而控制led的亮灭

print("set up wifi mode")
wifi.setmode(wifi.STATION)
wifi.sta.config{ssid="ghj",pwd="12345678"}     --wifi模块连接到网络
wifi.sta.connect()
tmr.alarm(1,1000,1,function()
if wifi.sta.getip()==nil then
print("connecting ...")
else
tmr.stop(1)
print("ip is "..wifi.sta.getip())
end
end)

pin=4                                                   --控制pin4引脚
gpio.mode(pin,gpio.OUTPUT)

srv=net.createServer(net.TCP,28800)                     --wifi模块建立服务器
srv:listen(8888,function(conn)                          --8888为端口号,可自定义但与tcp连接时应保持一致
conn:on("receive",function(conn,payload)

if(payload>='20') then                                 --发送的字符大于20则开灯  
gpio.write(pin,gpio.LOW)
print(1)
elseif (payload<'20') then
gpio.write(pin,gpio.HIGH)
print(0)
else
print(3)

end
print(payload)

end)


end)

注意事项:

wifi连接时有网上例程代码为

wifi.sta.config("lalalala","12341234") --手机热点的名称和密码

但部分机器不支持,所以应该改成

wifi.sta.config{ssid="ghj",pwd="12345678"}

其次注意比较的标准之一是字符为单引号,而不是字符串的双引号,因为在c语言中(lua代码为c语言的删减版)字符是可以直接比较大小的,而字符串则需要比较函数才可以。

发布了48 篇原创文章 · 获赞 129 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/qqGHJ/article/details/82961017