【STC8A8K64D4开发板】第3-5讲:人体红外感应传感器

第3-5讲:人体红外感应传感器

    1. 学习目的
  1. 了解人体红外感应传感器的功能。
  2. 掌握单片机编程读取人体红外感应传感器数字输出状态,从而判断有没有人。
    1. 人体红外感应传感器简介

HC-SR501是基于红外线技术的自动控制模块,采用LHl788探头设计,灵敏度高,可靠性强,低电压工作模式,广泛应用于各类自动感应电器设备,尤其是干电池供电的自动控制产品。

HC-SR501能检测到人体身上发出的红外线,并根据检测结果输出高低电平,由此我们可以使用HC-SR501人体红外检测模块来检测是否有人。当有人进入感应范围时,HC-SR501模块输出高电平,人不离开感应范围,将持续输出高电平,人离开后,HC-SR501模块关闭高电平,输出低电平。

图1:人体红外感应传感器

  1. 选择触发(通过跳线选择)
  1. L:不可重复,默认为L(图1中跳线连接的方式即为L)。感应输出高电平后,延时时间一结束,输出将自动从高电平变为低电平。
  2. H:可重复。感应输出高电平后,在延时时间段内,如果有人体在其感应范围内活动,其输出将一直保持高电平,直到人离开后才延时将高电平变为低电平。
  1. 调节灵敏度和感应延时
  1. 调节灵敏度电位器顺时针旋转,灵敏度增加,反之,灵敏度降低。
  2. 调节延时电位器顺时针旋转,感应延时加长,反之,感应延时减短。
  1. HC-SR501人体感应模块参数
  1. 工作电压范围:直流电压(4.5-20)V。
  2. 静态电流:<50uA。
  3. 电平输出:高电平3.3 V ,低电平0V。
  4. 触发方式:L不可重复触发,H重复触发(默认不可重复触发)。
  5. 延时时间:0.5-200S(可调)可制作范围零点几秒-几十分钟。
  6. 封锁时间:2.5S(默认)可制作范围零点几秒-几十秒。
  7. 感应角度:<100度锥角。
  8. 工作温度:-15~+70度。
  9. 感应透镜尺寸:直径:23mm。
  10. 电路板外形尺寸:32mm*24mm
  1. 传感器应用范围

人体感应灯具 ,人体感应玩具,安防产品,工业自动化控制,自动感应电器设备,电池供电自动控制等。

  1. 引脚说明

HC-SR501人体红外检测模块的引脚如下图所示。

图2:人体红外感应传感器引脚

    1. 软件设计
      1. 雨滴传感器实验
  • 注:本节的实验是在“实验2-6-1:串口1数据收发实验”的基础上修改,本节对应的实验源码是:“实验3-5-1:HC-SR501人体红外感应实验”。
        1. 实验内容

单片机实时读取HC-SR501人体红外感应模块输出引脚的状态,以此判断有没有人经过,并通过串口输出检测结果。

  1. 高电平:检测到有人经过,指示灯D1点亮,串口输出提示信息。
  2. 低电平:没有检测到有人经过,指示灯D1熄灭。
        1. 代码编写

本节的代码比较简单,我们直接在“main.c”文件中编写相关的代码。

  1. 定义引脚

首先,定义连接HC-SR501人体红外感应模块输出的引脚,本例中,我们用P5.1连接雨滴传感器的数字输出引脚,定义如下。

代码清单:引用头文件

  1. sbit sensor_in = P5^1;     //用于读取HC-SR501人体红外感应模块输出引脚状态
  1. 读取引脚状态

程序初始化时将P5.1引脚配置为准双向,主循环中不断读取该引脚状态,如为高电平,则认为有人经过,代码清单如下。

代码清单:主函数

  1. /************************************************************************** 
  2. 功能描述:主函数 
  3. 入口参数:无 
  4. 返 回 值:int类型 
  5. **************************************************************************/  
  6. int main(void)  
  7. {  
  8.     P2M1 &= 0xBF;   P2M0 &= 0xBF;     //设置P2.6为准双向口(LED1)  
  9.     P3M1 &= 0xFE;   P3M0 &= 0xFE;     //设置P3.0为准双向口(串口1的RxD)  
  10.     P3M1 &= 0xFD;   P3M0 |= 0x02;     //设置P3.1为推挽输出(串口1的TxD)  
  11.     P5M1 &= 0xFD;   P5M0 &= 0xFD;     //设置P5.1为准双向口 (HC-SR501人体红外感应模块输出)  
  12.     uart1_init();                     //串口1初始化  
  13.     while(1)  
  14.     {  
  15.         if(sensor_in == 1)            //感应到有人经过,HC-SR501数据引脚输出高电平
  16.         {  
  17.             led_on(LED_1);                               //点亮用户指示灯D1  
  18.             printf("Detected someone passing by \r\n");  //串口输出提示信息  
  19.         }  
  20.         else                       
  21.         {  
  22.             led_off(LED_1);               //熄灭用户指示灯D1
  23.         }  
  24.         delay_ms(100);                    //延时100ms,方便在串口调试助手中观察实验数据  
  25.     }  
  26. }  
        1. 硬件连接

如下图所示,用杜邦线将HC-SR501人体红外感应模块的VCC和GND分别连接到开发板J19端子的3V3和GND上,输出引脚连接到J14端子的P51上。

图3:硬件连接

        1. 实验步骤
  1. 解压“…\第3部分:配套例程源码”目录下的压缩文件“实验3-5-1:HC-SR501人体红外感应实验”,将解压后得到的文件夹拷贝到合适的目录,如“D\STC8”(这样做的目的是为了防止中文路径或者工程存放的路径过深导致打开工程出现问题)。
  2. 双击“…\HC-SR501\project”目录下的工程文件“HC-SR501.uvproj”。
  3. 点击编译按钮编译工程,编译成功后生成的HEX文件“HC-SR501.hex”位于工程的“…\HC-SR501\Project\Object”目录下。
  4. 打开STC-ISP软件下载程序,下载使用内部IRC时钟,IRC频率选择:24MHz。
  5. 电脑上打开串口调试助手,选择开发板对应的串口号,将波特率设置为9600bps。
  6. 程序运行后,当HC-SR501人体红外感应模块检测到有人经过时,指示灯D1点亮,并通过串口输出提示信息。

HC-SR501是基于红外线技术的自动控制模块,采用德国原装进口LHI778探头设计,灵敏度高,可靠性强,超低电压工作模式,广泛应用于各类自动感应电器设备,尤其是干电池供电的自动控制产品。 电气参数 产品型号HC--SR501人体感应模块 工作电压范围直流电压4.5-20V 静态电流<50uA 电平输出高3.3 V /低0V 触发方式L不可重复触发/H重复触发(默认重复触发) 延时时间5-200S(可调)可制作范围零点几秒-几十分钟 封锁时间2.5S(默认)可制作范围零点几秒-几十秒 电路板外形尺寸32mm*24mm 感应角度<100度锥角 工作温度-15-+70度 感应透镜尺寸直径:23mm(默认) 功能特点: 1、全自动感应:人进入其感应范围则输出高电平,人离开感应范围则自动延时关闭高电平,输出低电平。 2、光敏控制(可选择,出厂时未设)可设置光敏控制,白天或光线强时不感应3、温度补偿(可选择,出厂时未设):在夏天当环境温度升高至30~32℃,探测距离稍变短,温度补偿可作一定的性能补偿。 4、两种触发方式:(可跳线选择) a、不可重复触发方式:感应输出高电平后,延时时间段一结束,输出将自动从高电平变成低电平; b、可重复触发方式:感应输出高电平后,在延时时间段内,如果有人体在其感应范围活动,其输出将一直保持高电平,直到人离开后才延时将高电平变为低电平(感应模块检测到人体的每一次活动后会自动顺延一个延时时间段,并且以最后一次活动的时间为延时时间的起始点)。 5、具有感应封锁时间(默认设置:2.5S封锁时间):感应模块在每一次感应输出后(高电平变成低电平),可以紧跟着设置一个封锁时间段,在此时间段内感应器不接受任何感应信号。此功能可以实现“感应输出时间”和“封锁时间”两者的间隔工作,可应用于间隔探测产品;同时此功能可有效抑制负载切换过程中产生的各种干扰。(此时间可设置在零点几秒—几十秒钟)。 6、工作电压范围宽:默认工作电压DC4.5V-20V。 7、微功耗:静态电流<50微安,特别适合干电池供电的自动控制产品。 8、输出高电平信号:可方便与各类电路实现对接。 实物购买链接:https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-981744861.13.F4vK7o&id=10566272393
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

电子友人张

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值