|
|
100黑幣
現(xiàn)在我程序?qū)崿F(xiàn)的是一個(gè)按鍵按一下控制燈亮滅長(zhǎng)按3秒燈常亮,怎么在長(zhǎng)按3秒常亮之中加入一個(gè)延時(shí)關(guān)閉功能并且加入一個(gè)紅外感應(yīng)觸發(fā)之后還能再次像按3秒一樣再次延時(shí)
3.png (7.92 MB, 下載次數(shù): 55)
下載附件
按一下
2019-4-17 13:18 上傳
無(wú)標(biāo)題2.png (357.54 KB, 下載次數(shù): 52)
下載附件
按一下
2019-4-17 13:18 上傳
無(wú)標(biāo)題1.png (420.01 KB, 下載次數(shù): 58)
下載附件
長(zhǎng)按3秒
2019-4-17 13:18 上傳
關(guān)閉下面是程序;
#include <reg52.h>
#include <intrins.h>
#define uint unsigned int //宏定義:unit=unsigned int
#define uchar unsigned char
sbit led1=P2^1;
sbit led2=P2^3;
sbit s=P3^5;
uchar flag1,flag2;
void delay(uint);
void keyscan();
void main()
{
led2=0;
while(1)
{
keyscan();
}
}
void keyscan()
{
uint j;
j=0;
s=1;
if(flag1==1||flag2==1)
{
if(!s)
{
delay(5);
if(!s)
{
while(!s);
flag1=0;
flag2=0;
led1=1; //黃燈
led2=0; //夜燈
}
}
}
else
{
if(!s)
{
delay(5);
if(!s)
{
while(s==0 && j<30000)
{
// delay(5);
j++;
}
if (j>=30000)
{
flag2=1;
led1=0; //黃燈
led2=1;
while(!s);
}
else
{
flag1=1;
led2=1; //夜燈
}
}
}
}
}
void delay(uint z)
{
//1ms延時(shí)
uint i,j;
for(i=z;i>0;i--)
for(j=110;j>0;j--);
}
|
|