#include "reg52.h"
#include<intrins.h>
void delay(int i)
{
while(i--);
}
void main()
{
char i;
led=0xfe;
delay(50000);
while(1)
{
for(i=0;i<7;i++)
{
P2=_crol_(P2,1);
delay(50000);
}
for(i=0;i<7;i++)
{
P2=_crled_(P2,1);
delay(50000);
}
}
}
1 #include "reg52.h"
2 sbit LSA=P2^2;
3 sbit LSB=P2^3;
4 sbit LSC=P2^4;
5 u8 code smgduan[17]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
6 0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};//显示0~F的值
7 void delay(int i)
8 {
9 while(i--);
10 }
11 void DigDisplay()
12 {
13 char i;
14 for(i=0;i<8;i++)
15 {
16 switch(i) //位选,选择点亮的数码管,
17 {
18 case(0):
19 LSA=0;LSB=0;LSC=0; break;//显示第0位
20 case(1):
21 LSA=1;LSB=0;LSC=0; break;//显示第1位
22 case(2):
23 LSA=0;LSB=1;LSC=0; break;//显示第2位
24 case(3):
25 LSA=1;LSB=1;LSC=0; break;//显示第3位
26 case(4):
27 LSA=0;LSB=0;LSC=1; break;//显示第4位
28 case(5):
29 LSA=1;LSB=0;LSC=1; break;//显示第5位
30 case(6):
31 LSA=0;LSB=1;LSC=1; break;//显示第6位
32 case(7):
33 LSA=1;LSB=1;LSC=1; break;//显示第7位
34 }
35 P0=smgduan[i];//发送段码
36 delay(100); //间隔一段时间扫描
37 P0=0x00;//消隐
38 }
39 }
40
41 void main()
42 {
43 while(1)
44 {
45 DigDisplay(); //数码管显示函数
46 }
47 }
This moment will nap, you will have a dream; but this moment study, you will interpret a dream.