光敏传感器使用说明

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1、光敏电阻模块对环境光线最敏感,一般用来检测周围环境的光线的亮度,触发单片机或继电器模块等;
2、模块在环境光线亮度达不到设定阈值时,DO端输出高电平,当外界环境光线亮度超过设定阈值时,DO端输出低电平;
3、DO输出端可以与单片机直接相连,通过单片机来检测高低电平,由此来检测环境的光线亮度改变



IO口串接一个小电阻(1k)到三极管基极.IO口置输出模式,对于NPN管发射极接地.IO口送1出来,三极管则导通,CE极会有电流流过.反之送0截止.
PNP管正好相反,发射极接电源.IO送0导通,送1截止.但保证IO输出1的电平值等于三极管发射极电压值才行,如果低与发射极电压值,
IO送0和1三极管都是导通状态


用8050做开关,是用高电平控制开,低电平控制关,







#include
#define uchar unsigned char
#define uint unsigned int
uchar temp,temp1;
uchar flag,flag1;
//sbit RELAY = P3^6; //定义继电器位置

sbit AA = P2^0;
sbit BB = P0^0;


void init()
{
TMOD = 0x11;
TH0 = (65535-50000)/256;
TL0 = (65535-50000)%256;
EA = 1;
TR0 = 1;
ET0 = 1;

TH1 = (65535-50000)/256;
TL1 = (65535-50000)%256;
// EA = 1;
TR1 = 0;
ET1 = 1;
}

void delay500ms(void);

void main()
{
init();

while(1)
{
//BB=0;
if(temp==10)
{
temp = 0;
BB=!BB;
}


//if((AA==0)&&(flag1==1))
if(AA==0)
{ TR1 = 1;
//delay500ms();
if(temp1==50)
{
//TR1 = 1;
//if((AA==0)&&(temp1==50))
//if(temp1==10)
//{
// {
if(AA==0)
// temp1 = 0;
//flag1 = 1;
{
BB=1;
//TR1 = 0;
while(1);
}
//}
//}
else
{

if(temp==10)
{
temp = 0;
BB=!BB;
}
}
//TR1=1;
// temp1= 0;
// TR1=0;
}
}


/*if(AA==1)
{
TR1 = 1;
if((AA==1)&&(temp1>=80))
{
temp1 = 0;
//flag1 = 1;
BB=1;
TR1 = 0;
while(1);
}
} */
/*else
{
if(AA==1)
}*/
/*if(flag==1)
{
BB=1;
TR1 = 0;
while(1);
}*/
}
/*if((AA==0)&(temp<=20))
{
temp = 0;
BB = 0;
}
if((AA==0)&(temp>=30))
{
//temp = 0;
BB = 1;
}
} */


}

void time0() interrupt 1
{
TH0 = (65535-50000)/256;
TL0 = (65535-50000)%256;
temp++;
/*if(temp==20)
{
temp = 0;
flag = 1;
}*/
}
void time1() interrupt 3
{
TH1 = (65535-50000)/256;
TL1 = (65535-50000)%256;
temp1++;
/* if(temp1==60)
{
temp1 = 0;
flag1 = 1;
}*/
}

void delay500ms(void) //延时0.5s,误差 0us
{
uchar a,b,c;
for(c=23;c>0;c--)
for(b=152;b>0;b--)
for(a=70;a>0;a--);
}



相关文档
最新文档