本帖最后由 xymiss 于 2017-10-7 14:21 編輯
下面是一組開關的程序,想加多二組,加上二個控制件 并增加P0和P2口二組燈。或只增加一組也行,燈的效果跟P1一樣即可。可以嗎。
拜托。謝謝大神了
燈的效果就是流水燈,帶中斷,假設P3-0控制P1口。P3-1控制P0口,按P3-0,P1口流水燈,按二次。則第一次流水中斷,開始第二次,二個鍵都按時,二邊都有流水燈效果即可。
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
sbit button = P3^2;//外部中斷P3^2
int b=1;
bit press = 1;
uchar luishui = 0xfe;
void Delay(uchar z)
{
uchar x, y;
for(x = z; x > 0; x--) for(y = 255; y > 0; y--);
}
void main()
{
int i=0;
IT0 = 1;
EX0 = 1;
EA = 1;
while(press) P1=0xff P0=0xff;
while(!press)
{
b=1;
luishui=0xfe;
for(i=0;i<8;i++)
{
if(!b)break;
P1=luishui;
Delay(150);
luishui=_crol_(luishui,1);
}
if(i==8)press=1;
}
}
void X0_INT() interrupt 0
{
b=0;
press=0;
}
|