HC-SR501程序
时间:10-02
整理:3721RD
点击:
请各位大神看一下 不管传感器前面有人没人 只要一通电 灯就一直亮 蜂鸣器也一直响 这是什么原因?
#include "reg52.h"
#include<intrins.h>
sbit BEEP=P1^5; //蜂鸣器端口
sbit IN=P3^7; //红外输出端
sbit LED1=P2^7; //指示灯1
void delay(unsigned int i)
{
unsigned int j;
{
for(;i>0;i--)
for(j=0;j<123;j++)
{;}
}
}
/*******************************************************************************
* 函数名 : main
* 函数功能 : 主函数
* 输入 : 无
* 输出 : 无
*******************************************************************************/
void main()
{
IN=0;
while(1)
{
if((IN==0))
{
LED1=1; //关闭红色指示灯
BEEP=1; //关闭蜂鸣器
}
if(IN==1)
{
char k;
for(k=30;k>0;k--)
{
LED1=0; //打开红色指示灯
BEEP=0; //打开蜂鸣器
delay(3);
BEEP=1;
delay(3);
}
}
}
}
#include "reg52.h"
#include<intrins.h>
sbit BEEP=P1^5; //蜂鸣器端口
sbit IN=P3^7; //红外输出端
sbit LED1=P2^7; //指示灯1
void delay(unsigned int i)
{
unsigned int j;
{
for(;i>0;i--)
for(j=0;j<123;j++)
{;}
}
}
/*******************************************************************************
* 函数名 : main
* 函数功能 : 主函数
* 输入 : 无
* 输出 : 无
*******************************************************************************/
void main()
{
IN=0;
while(1)
{
if((IN==0))
{
LED1=1; //关闭红色指示灯
BEEP=1; //关闭蜂鸣器
}
if(IN==1)
{
char k;
for(k=30;k>0;k--)
{
LED1=0; //打开红色指示灯
BEEP=0; //打开蜂鸣器
delay(3);
BEEP=1;
delay(3);
}
}
}
}
红外啊,应该是分了输出和输入的不同的灯的吧,透明的发射数据,黑色的接受数据
您好小编,请问你解决了没,能不能发我一份程序看一看