单片机–4个数码管循环显示数字同时LED灯循环左移显示
这里有几个需要注意的点:
1.如果让8个数码管中几个数码管显示不同的数字,这里一定是挨个显示的,不可能同时显示不同的数字,可以让几个数码管同时显示相同的数字。
2.while循环在一个程序中只能实现一次
#include <reg52.h>
#include <intrins.h>
sbit wei =P2^7;
sbit duan=P2^6;
void delay(unsigned int z)
{ unsigned int x,y;
for(x=z;x>0;x--)
for(y=114;y>0;y--);
}
void main()
{
int i;
int a[8]={0X06,0XE6,0X4F,0X3F,0,0,0,0};**这里只让4个数码管显示数字并且循环
int b;
b=0XFE;
P1=0XFE;
delay(200);
while(1)
{ P1=_crol_(P1,1);
delay(200);
for(i=0;i<8;i++)
{ wei=1;
P0=b;
wei=0;
duan=1;
P0=a[i];
delay(200);
duan=0;
b=_crol_(b,1);
}
}
}