|
你的程序,流程上有點(diǎn)錯(cuò)誤。
以下是我在你的程序基礎(chǔ)上,按照我的板子電路修改過(guò)的程序,是無(wú)光照時(shí)LED不亮,有光照時(shí)LED亮。
#include<reg51.h> //庫(kù)文件
#define uchar unsigned char//宏定義無(wú)符號(hào)字符型
#define uint unsigned int //宏定義無(wú)符號(hào)整型
/********************************************************************
I/O定義
*********************************************************************/
//sbit LED1=P1^3;
//sbit LED2=P1^4;
//sbit LED3=P1^5;
//sbit LED4=P1^6; //定義單片機(jī)P1.3 4 5 6 為L(zhǎng)ED燈
#define LED P2
sbit DOUT=P1^0; //定義單片機(jī)P1.0為光敏DO輸出
/********************************************************************
延時(shí)函數(shù)
*********************************************************************/
void delay()//延時(shí)程序
{
uchar m,n,s;
for(m=20;m>0;m--)
for(n=20;n>0;n--)
for(s=248;s>0;s--);
}
/********************************************************************
主函數(shù)
*********************************************************************/
void main()
{
DOUT=1;
LED=0xff;
while(1) //無(wú)限循環(huán)
{
// LED1=0;
// LED2=0;
// LED3=0;
// LED4=0; //熄滅P1.0口燈
if(DOUT==0)//當(dāng)DO輸出低電平時(shí)
{
delay();//延時(shí)抗干擾
if(DOUT==0)//確定 DO口輸出低電平
{
// LED1=1;
// LED2=1;
// LED3=1;
// LED4=1;
LED=0x00;
//點(diǎn)亮LED燈
}
else
{
LED=0xff;
}
}
}
}
我的程序適用我的板子電路如圖:
1.jpg (32.99 KB, 下載次數(shù): 69)
下載附件
2017-12-28 08:37 上傳
你看看,你的程序是什么地方不對(duì)。
|
|