我寫了一個程序你看一下:
#include<reg52.h>
typedef unsigned int u8;
#define led P2 //定義led由P2口控制
sbit key=P3^1; //定義開關與P3^1口相連
sbit one=P2^0; //8個IO口中的一個
u8 num=1;
u8 m;
void delay(u8 z) //
{ //延時函數大概延時1us
u8 x,y; //
for(x=z;x>0;x--)
for(y=114;y>0;y--);
}
void keypor() //檢測按鍵函數
{
if(key == 0)
{
delay(10);
if(key == 0)
{
num++;
}
}
while(!key);
m=num%2;
}
void oneLED() //一個LED閃爍
{
one=~one;
delay(100);
}
void eightLED() //8個LED閃爍
{
led=0x00;
delay(100);
led=0xff;
delay(100);
}
void main() //主函數
{
while(1)
{
keypor();
if(m==0)
{
oneLED();
}
if(m==1)
{
eightLED();
}
}
} |