電路原理圖如下:
源程序: 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; //關閉繼電器
}
}
|