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

📄 numled.c

📁 单片机开发资料光盘-双龙-686M.zip
💻 C
字号:
#include <AT89X52.H>
/*    10us延时程序       */
void delay_10us(void)
   {
	unsigned char i;
	for (i=0;i<1;i++)
	    ;
    }
/*     ms级延时程序      */
void delay_ms(unsigned int number)
   {
     unsigned char i;
     do
	   {
	    for(i=0;i<100;i++)
		     delay_10us();
		}
	 while(--number!=0);     
    }
#define num_bit P1
unsigned char xdata num_seg _at_ 0xf700;
unsigned char code seg_tabel[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
unsigned char idata led_buffer[6] _at_ 0x90;
void display(void)
{
 unsigned char i;
 for(i=0;i<6;i++)
  {
   num_seg=led_buffer[i];
   num_bit=~(0x04<<i);
   delay_ms(1);
   num_bit=0xff;
   num_seg=0xff;
  }
}
void main(void)
{
 unsigned char i,j=6;
 for (i=0;i<6;i++)
   led_buffer[5-i]=seg_tabel[i];
 while(1)
  {
   for(i=0;i<200;i++)
       display();
   for (i=5;i>0;i--)
	   led_buffer[i]=led_buffer[i-1];
   led_buffer[0]=seg_tabel[j];
   if (j<15)
       j++;
   else
       j=0;
  }
}

⌨️ 快捷键说明

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