xx1.c

来自「基于AVR,和51两种单片机的实验例子,非常有用」· C语言 代码 · 共 76 行

C
76
字号
#include<AT89x51.H>
unsigned char i,j,a,b,c,d,n,temp;
unsigned char k,f,g,z,m,p;
unsigned char code dispcode[]={
0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,
0xf8,0x80,0x90};
void delay1ms(void)
{
for(i=0;i<2;i++)
for(j=0;j<248;j++);
}
void delay1s(void)
{
for(z=0;z<2;z++)
for(j=0;j<248;j++);
}
  main()
{
 
  while(1)
{
 if(n==80)
{
 n=0;
 a++;
 if(a==10)
{
 a=0;
 b++;
 if(b==10)
{
 b=0;
 c++;
 if(c==10)
{
 c=0;
 d++;
 if(d==10)
 d=0;
}
}
}
}
 P2=dispcode[a];
 P0=0xbf;
 delay1ms();
 P2=dispcode[b];
 P0=0xef;
 delay1ms();
 P2=dispcode[c];
 P0=0xdf;
 delay1ms();
 P2=dispcode[d];
 P0=0xf7;
 delay1ms();
 n++;
 m++;
 if(m==50)
 {
 temp=0xfe;
 m=0;
 f=temp>>k+p;
 g=temp<<(8-k-p);
 P1=f|g;
 delay1s();
 k++;
 if(k==8)
 {
 k=0;
 p++;
 if(p==8)
 p=0;
 }
 }
 }
 }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?