ESP8266 -- lua开发学习之路 二 (操作GPIO和定时器)

     

 

 

lua开发8266API手册:https://nodemcu.readthedocs.io/en/master/​​​​​​​

 

ESP8266模块使用lua开发操作GPIO时并不是直接操作的GPIO引脚而是通过索引号去操作GPIO在lua开发手册中提供相关GPIO的索引号
ESP8266模块GPIO索引号
索引号        ESP8266-Pin
 0      --------  GPIO16
 1      --------  GPIO5
 2      --------  GPIO4
 3      --------  GPIO0
 4      --------  GPIO2
 5      --------  GPIO14
 6      --------  GPIO12
 7      --------  GPIO13
 8      --------  GPIO15
 9      --------  GPIO3
 10    --------  GPIO1
 11    --------  GPIO9
 12    --------  GPIO10

要操作GPIO首先设置GPIO的工作模式,我想要GPIO控制一个LED 则需要设置相应的GPIO为输出模式,然后控制GPIO输出是高电平还是低电平 

买了块ESP8266小板通过低电平控制LED亮的程序只需要2个函数即可确实很方便

gpio.mode(2,gpio.OUTPUT) -- 设置GPIO工作为输出模式
gpio.write(2,0)    --控制GPIO输出低电平 此处的GPIO的索引号为2 也就是操作的GPIO4

在使用ESPlorer开发esp8266时不要使用中文注释!!!!  其实注释是自己测试完后期加的方便理解

当需要读取GPIO引脚状态时也只需要一个函数: gpio.read()   其参数也是GPIO索引号.

如下控制一个LED闪烁:

gpio.mode(2,gpio.OUTPUT) --设置为输出模式

--写一个局部函数 local表示局部函数
local function LED() 
        gpio.write(2,1-gpio.read(2)) --通过读取GPIO的状态取反后再设置输出
end
--[[
第一个参数 1 表示定时器1,
第二个参数 2000 表示 每2s 进入一次 定时器1ms进入一次
第三个参数 1 表示的以表示循环执行,当为0时则表示只执行一次
第四个是这个定时器1满足2s定时条件时执行的函数 --- 仍在理解中...
]]
tmr.alarm(1,2000,1,LED) --定时器2s执行一次LED函数就可以实现LED的闪烁

 

  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值