0°

(七)51进阶:人体红外传感器-PIR运动传感器与8051连接

介绍

PIR传感器检测红外热辐射。它可用于检测发射红外热辐射的生物体的存在。

PIR传感器分为两个插槽。两个插槽连接到差分放大器。

每当静止物体位于传感器前面时,两个槽接收相同数量的辐射,输出为零。

每当移动物体位于传感器前面时,其中一个槽比另一个槽接收更多的辐射。这使输出摆动高或低。

输出电压的这种变化是运动检测的结果。

(七)51进阶:人体红外传感器-PIR运动传感器与8051连接

PIR传感器

电路原理图

(七)51进阶:人体红外传感器-PIR运动传感器与8051连接

PIR运动传感器与8051连接

例程

  • 让我们设计一个小应用程序,当检测到运动时LED将打开。
  • 为此,将PIR运动传感器与8051连接。
  • 如电路图所示,PIR运动传感器的输出引脚连接到PORT0.0引脚。
  • 为了在8051输入引脚(用于读取PIR传感器)获得适当的电平(0和5),需要使用晶体管。
  • 使用晶体管时,P0.0引脚变为低电平表示检测到运动,LED将打开。
  • 根据操作模式,如果检测到该引脚为高电平,则表示不存在运动或触发周期结束,将关闭LED。
  • 在这里,我们将模块配置为可重复触发模式。

注意:为模块供电后,需要大约30-50秒进行预热才能正常工作。

程序

/*
 * PIR Motion sensor interface with 8051
 * https://www.qutaojiao.com
 */


#include <reg51.h>

sbit Motion_detection=P0^0;	/* Read PIR sensor's data on this pin */
sbit LED=P1^0;				/* Connect LED to the PORT1.0 pin */


void MSdelay(unsigned int val);

void main(void) 
{
	P1=0;			/* Initially LED turned OFF*/
	MSdelay(3000);	/* Power-on delay for PIR */
	while(1)
	{
		if(Motion_detection==1)  /* Check for human motion */
		LED = 0;	/* LED turn OFF for No motion */
		else
		LED = 1;	/* LED turn ON if motion is detected */
	}
}
void MSdelay(unsigned int val)
{
     unsigned int i,j;
        for(i=0;i<=val;i++)
            for(j=0;j<112;j++);	/* Delay of 1 ms for 11.0592MHz Frequency */
}


本节课完整工程项目下载:

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论