单片机按键启停led灯程序

#include<reg52.h>

void Delay(unsigned int t); sbit key=P3^2;           //对应单片机开发板上s19按键

void main (void)

{

while (1)   //函数开始后,一直在检测按键是否被按下

{

   if(key==0)              {

unsigned char i;   //定义一个无符号字符型局部变量 i 取值范围 0~255

    P0=0x7f;           //赋初始值,右边第一个灯亮起来

for(i=0;i<8;i++)   //加入 for循环,表明for循环大括号中的程序循环执行8次

{

  Delay(50000);

  P0>>=1;         //向右移动一位。

  P0=P0|0x80;     //右移后,左端自动赋值0,所以需要该语句赋值1

}

}

else

{

P0=0x00;

        }

    }   }

void Delay(unsigned int t)

{

  while(--t);

}