⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ledshaomiaokyong.c

📁 LED的动态扫描
💻 C
字号:
			 #include <C8051F020.H>

unsigned char code out0[]={0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xf6 ,0x88,0x83,0xc6,0xa1,0x86,0x8e};
unsigned char code out1[]={0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xf6 ,0x88,0x83,0xc6,0xa1,0x86,0x8e};
unsigned char code out2[]={0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xf6 ,0x88,0x83,0xc6,0xa1,0x86,0x8e};
unsigned char code out3[]={0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xf6 ,0x88,0x83,0xc6,0xa1,0x86,0x8e};	  //数码管 0-F 代码 

void delay(void)  		 //延时
{
unsigned int t;
	for(t=0;t<55000;t++);
}
void ledshow(void)
{ static    unsigned char select=0xfe;
	  static    unsigned char k=0;
switch(select)
{	

case 0xfe:P1=out0[k];
   P3=select;
	 delay();
break;
case 0xfd:P1=out1[k];
	  P3=select;
	 delay();
break;
case 0xfb:P1=out2[k];
	  P3=select;
	 delay();
break;
case 0xf7:P1=out3[k];
		P3=select;
	 delay();
	 break;
default :break;
}
if(select&0x10==0)
select=0xfe;
else
select=(select<<1)|0x01;
if(select==0xef)
select=0xfe;
if(k<=9)
k++;
if(k==10)
k=0;

}   

 void main(void)
{
	   	 int i; 
  WDTCN     = 0xDE;
    WDTCN     = 0xAD;


		   P1MDOUT   = 0xFF;
    P3MDOUT   = 0xfF;

    XBR2      = 0x40;
       OSCXCN    = 0x67;
    for (i = 0; i < 3000; i++);  // Wait 1ms for initialization
    while ((OSCXCN & 0x80) == 0);
    OSCICN    = 0x0C;
	while(1)
	{ledshow();
	}
	}

⌨️ 快捷键说明

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