GPRS(Air202) Lua开发: GPIO输入检测
Posted yangfengwu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GPRS(Air202) Lua开发: GPIO输入检测相关的知识,希望对你有一定的参考价值。
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输入检测的主要内容,如果未能解决你的问题,请参考以下文章