电路原理图如下:
源程序: 1.main.c /*
*************************************************************************
*产品名称:智能灯光控制
*硬件平台:光敏电阻+热释电
*显示模块: 检测到信号时对应的灯亮
*输入模块:读取对应传感器的IO口
*实现的功能:当没有检测到光,且检测到有人,则继电器吸合
*操作描述:-----------------------------------------
*接口说明:-----------------------------------------
*/
#include "std_for_wym.h"
sbit Ji_D_Qi = P1^0; //继电器接口
sbit Rsd = P1^1; //红外热释电接口
sbit Led = P1^2; //红外热释电信号指示接口
sbit Light = P1^3; //光敏电阻接口
#define TIMEMIN 2 //检测到一次吸合2分钟
void main(void)
{
int i,j;
while(1)
{
if(Rsd == 1)Led = 0; //热释电指示灯
else Led = 1;
if(Rsd == 1 && Light == 0)
{
Ji_D_Qi = 0;
// Led = 0;
for(i=0;i<TIMEMIN;i++)
{
for(j=0;j<10;j++) //执行完一次一分钟
{
DelayMs(1000);
if(Rsd == 1)Led = 0;
else Led = 1;
}
}
// Led = 1;
}
else Ji_D_Qi = 1; //关闭继电器
}
}
|