首页 > 其他 > 详细

GPRS(Air202) Lua开发: GPIO输入检测

时间:2020-05-24 10:24:56      阅读:53      评论:0      收藏:0      [点我收藏+]

 

 

 

 

1.控制继电器输出高低电平,检测继电器引脚输出高低电平状态

技术分享图片

 

 

 

module(...,package.seeall)  --固定写法,具体百度lua文件加载(初学者不需要考虑,直接写上这句话即可),这些只是规定的语法而已

require"pins" --加载官方提供的pins文件

--DEMO1  控制继电器输出高低电平,检测继电器引脚输出高低电平状态
--调用pins文件里面的函数控制GPIO2输出高电平
pins.setup(pio.P0_2,1)
Relay_Pin_P02 = pio.P0_2


if(pio.pin.getval(Relay_Pin_P02))  then --获取GPIO输出状态
    log.info("1111111111111111111111111111111111")
end

 

 

 

下载测试

技术分享图片

 

 

技术分享图片

 

 

 

 

 

2.配置GPIO输出高电平,检测按钮输入状态

原理图: GPIO5外接一个按钮

技术分享图片

 

 

技术分享图片

 

 

 

--DEMO2
--配置GPIO输出高电平,检测按钮输入状态
pins.setup(pio.P0_5,1) --输出高电平:GPIO5
Key_Pin_P05 = pio.P0_5

if(pio.pin.getval(Key_Pin_P05))  then --获取GPIO5状态
    log.info("GPIO5 Input 1")
else
    log.info("GPIO5 Input 0")    
end

 

 

 测试

技术分享图片

 

 

注:上面的程序运行一遍就结束,真正的按钮检测需要定时器参与

请用户接着学习后面的定时器章节

 

 

3.配置GPIO上拉输入,检测输入状态

技术分享图片

 

 

--DEMO3
--配置GPIO上拉输入,检测输入状态
Key_P05 = pins.setup(pio.P0_5,nil,pio.PULLUP) --上拉输入:GPIO5
--调用返回的函数:即获取GPIO的状态
if( Key_P05() ) then
    log.info("GPIO5 Input 1")
else
    log.info("GPIO5 Input 0")    
end

 

 测试

技术分享图片

 

 

GPRS(Air202) Lua开发: GPIO输入检测

原文:https://www.cnblogs.com/yangfengwu/p/12945440.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!