ESP8266基于Lua开发点灯示例
- ✨基于
ESPlorer IDE
:https://github.com/4refr0nt/ESPlorer/releases
- 🔧固件烧录工具:
NodeMCU-PyFlasher
- 🌿esp8266烧录工具下载:
https://github.com/marcelstoer/nodemcu-pyflasher/releases/tag/v5.0.0
🛠在线生成固件
- 📍固件生成网址:
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 do
gpio.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 then
gpio.write(4, gpio.HIGH)
else
gpio.write(4, gpio.LOW)
end
end
if not tmr.create():alarm(1000, tmr.ALARM_AUTO, function()
print("hey there")
blink()
end)
then
print("whoopsie")
blink()
end