ESP8266基于Lua开发点灯示例
- ✨基于
ESPlorer IDE
:https://github.com/4refr0nt/ESPlorer/releases
- 🔧固件烧录工具:
NodeMCU-PyFlasher
- 🌿esp8266烧录工具下载:
https://github.com/marcelstoer/nodemcu-pyflasher/releases/tag/v5.0.0
注意事项
- ✨运行
ESPlorer IDE
是基于安装了JDK环境。
🛠在线生成固件
- 📍固件生成网址:
https://nodemcu-build.com/
- 🌿根据需求选择对应的组件:(这个和合宙的Lua云编译类似)
- 🔖提交后,一般1-3分钟就可以完成云编译。
- 🌿会生成两个版本的固件:一个整数型的和一个浮点型的。(针对调试信息输出)
- 🌿使用
NodeMCU-PyFlasher
工具进行烧录
ESPlorer IDE使用
-
🌿运行
ESPlorer
-
🌿esp8266连接电脑上,打开对应的串口号。
-
🌿Lua ESP8266引脚定义
-- GPIO0
gpio0 = 3-- GPIO2
gpio2 = 4-- GPIO4
gpio4 = 2-- GPIO5
gpio5 = 1-- GPIO9
gpio9 = 11-- GPIO10
gpio10 = 12-- GPIO12
gpio12 = 6-- GPIO13
gpio13 = 7-- GPIO14
gpio14 = 5-- GPIO15
gpio15 = 8
📝点灯程序
- ⚡需要注意的是这里的4号引脚对应的esp8266上面的
GPIO2
,也就是nodemcu
上面的板子led灯。延时函数形参单位是微秒。
-- 设置D2为输出模式
pin = 4
gpio.mode(pin, gpio.OUTPUT,gpio.PULLUP)-- 定义循环函数
local function blink()while true dogpio.write(pin, gpio.HIGH)tmr.delay(200000)gpio.write(pin, gpio.LOW)tmr.delay(200000)end
end-- 开始循环
blink()
- 📋利用定时器控制led闪烁程序
-- 设置D2为输出
gpio.mode(4, gpio.OUTPUT)-- 闪烁函数
function blink()if gpio.read(4) == gpio.LOW thengpio.write(4, gpio.HIGH)elsegpio.write(4, gpio.LOW)end
endif not tmr.create():alarm(1000, tmr.ALARM_AUTO, function()print("hey there")blink()
end)
thenprint("whoopsie")blink()
end