2.3-Air302(NB-IOT)-基础外设-GPIO输入检测,中断

<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/Learn-NB-IOT-Air302-ForLua" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>

 

配置引脚为输入模式,检测引脚电平状态

1. BOOT按键是GPIO1,使用这个按键测试

 

 

-- LuaTools需要PROJECT和VERSION这两个信息
PROJECT = "gpio"
VERSION = "1.0.0"

-- sys库是标配
_G.sys = require("sys")



local key_gpio = gpio.setup(1, nil) -- GPIO1 输入模式
local state=0;
sys.taskInit(function()
    while 1 do
        sys.wait(1000);
        state = key_gpio(); --获取GPIO状态高低电平
        log.info("gpio state is", state);--打印
    end
end)

-- 用户代码已结束---------------------------------------------
-- 结尾总是这一句
sys.run()
-- sys.run()之后后面不要加任何语句!!!!!

 

 

2.按下和松开按键

 

 

 

 

 

 

 

配置引脚为中断模式

 

 

-- LuaTools需要PROJECT和VERSION这两个信息
PROJECT = "gpio"
VERSION = "1.0.0"

-- sys库是标配
_G.sys = require("sys")


local function gpio_interrupt()
    log.info("gpio1", "FALLING");
end

--配置GOIO1引脚为中断模式
gpio.setup(
    1, --GPIO1
    gpio_interrupt ,--中断函数
    gpio.PULLUP, --上拉
    gpio.FALLING --下降沿触发
)

-- 用户代码已结束---------------------------------------------
-- 结尾总是这一句
sys.run()
-- sys.run()之后后面不要加任何语句!!!!!

 

 

按下和松开按键

 

 

 

posted on 2020-10-11 04:43  广源时代  阅读(599)  评论(0编辑  收藏  举报

导航

支付宝 QQ群