电子工艺设计-51单片机开发 LED流水灯

实现五种不同的流水灯

#include "reg52.h"			 
#include<intrins.h>		

typedef unsigned int u16;	  
typedef unsigned char u8;

#define led P0	   
sbit led1 = P0^0;
sbit led2 = P0^1;
sbit led3 = P0^2;
sbit led4 = P0^3;
sbit led5 = P0^4;
sbit led6 = P0^5;
sbit led7 = P0^6;
sbit led8 = P0^7;

void delay(u16 i)
{
	while(i--);	
}


void main()
{
	u8 i;
	u8 j;
	led=~0x01;
	delay(50000); 	
	while(1)
	{	
		for(i=0;i<8;i++)
		{
			P0=~(0x01<<i);	 
			delay(50000); 
		}

		
		for(i=0;i<7;i++)	
		{
			led=_cror_(led,1);
			delay(50000); 	
		}

		//1357 2468
		for(i=0;i<3;i++)	 
		{
			led=_crol_(led,2);
			delay(50000); 
		}		
		led=_crol_(led,3);
		delay(50000);
		for(i=0;i<3;i++)	 
		{
			led=_crol_(led,2);
			delay(50000); 
		}
		
		//15 26 37 48
		 	led=_crol_(led,1);
			delay(50000);
			for(i=0;i<3;i++)
			{
				led=_crol_(led,4);
				delay(50000);
				led=_crol_(led,5);
				delay(50000);
			}
			led=_crol_(led,4);
			delay(50000);

	   //18 27 36 45
		led=_crol_(led,1);
			delay(50000);
		led=_crol_(led,7);
			delay(50000);
		led=_cror_(led,6);
			delay(50000);
		led=_crol_(led,5);
			delay(50000);
		led=_cror_(led,4);
			delay(50000);
		led=_crol_(led,3);
			delay(50000);
		led=_cror_(led,2);
			delay(50000);
		led=_crol_(led,1);
			delay(50000);
	  
	   //12 123 1234 12345 123456 1234567 12345678
		led=_cror_(led,4);
			delay(50000);
		for(j=1;j<8;j++)
		{
		for(i=0;i<j;i++)	
		{
			led=_crol_(led,1);
			delay(50000); 		
		}
		led=_cror_(led,j);
		delay(50000); 
		}
		

		//136¬Ã 258∫Ï 47ª∆
		for(i=0;i<3;i++)
		{
		 led1=1;led3=1;led6=0;
		 led2=0;led5=1;led8=0;
		 led4=0;led7=1;
		 delay(50000);
		 
		 led1=0;led3=0;led6=1;
		 led2=1;led5=0;led8=1;
		 led4=1;led7=0;
		 delay(50000);

		}

	}		
}

 

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值