led流水灯 动态数码管 52单片机

Posted mawenqi-barry

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了led流水灯 动态数码管 52单片机相关的知识,希望对你有一定的参考价值。

#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 }

 

以上是关于led流水灯 动态数码管 52单片机的主要内容,如果未能解决你的问题,请参考以下文章

8051单片机实战分析(以STC89C52RC为例) | 03 - LED流水灯

LED闪烁及流水灯——清翔51单片机(V3.0)

在51单片机上如何让数码管流水式的显示16进制数,

51单片机 利用定时器0和定时器1制作成的条形LED流水灯

呼吸灯和花样流水灯 51单片机实现

单片机中LED显示电路用三极管驱动电路怎么连接啊?四个数码管。