跳到主要内容

二、GPIO输入 之人体感应 实验

2.1 实验简介

本实验通过人体感应传感器学习IO口输入实验,通过读取IO口状态,判断传感器是否感应到人体,并点亮LED1灯。

ShineBlink的IO口可以由软件配置成如下三种输入模式:

1:NOPULL: 既不上拉也不下拉

2:PULLDOWN: 下拉输入

3:PULLUP: 上拉输入

2.2 硬件设计

HuSense

该人体感应探头采用的是数字探头NS312,当探头感应到人体时输出高电平2S,否则输出低电平2s,该输出端口接到开发板的D7引脚。

2.3 软件设计

LIB_GpioInputConfig("D7","NOPULL")
LIB_GpioOutputConfig("D8","STANDARD")
--上电默认熄灭LED1,低电平亮,高电平灭
LIB_GpioWrite("D8",1)
while(GC(1) == true)
do
--读取人体感应输入引脚的电平值
gpio_value = LIB_GpioRead("D7")
--根据输入值控制Led灯亮灭
if gpio_value == 1 then
--点亮LED1
LIB_GpioWrite("D8",0)
elseif gpio_value == 0 then
--熄灭LED1
LIB_GpioWrite("D8",1)
end
end

2.4 实验现象

当人被人体感应探头感应到时,LED1(黄灯点亮),没感应到后熄灭。

HuSenseYellow