这程序实现的思路是建立一个数组,通过数组的方式来控制led的依次点亮。
#include <reg52.h>
#define uint unsigned int
#define uchar unsigned char
uchar i;
uchar table[]={0xff,0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00};//依次是零个灯亮,一个灯亮,两个灯亮.....八个灯全亮。
void delay(uint z)//延时函数
{
uint x,y;
for(x=z;x>0;x--)
for(y=114;y>0;y--);
}
int main()
{
while(1)
{
for(i=0;i<8;i++)
{
P1=table[i];//我使用的51单片机板子上P1^0-P1^7都是控制led灯点亮的。如果你板子上是P0系列io口代表流水灯,就
//将此处P1换成P0,table[i]里面的i等于几,就会有几个灯被点亮。
delay(500);
}
}
return 0;
}