1.任务书
接线如图所示
1.1 以3个灯亮从左到右流动,然后一直循环流动。
1.2循环使用不同流水灯,做出你喜欢的样子
2.分析
其实很简单的,无非就是点亮led的先后顺序在加点延时罢了。当我们点亮D0D1D3时关闭其他延时一会又打开D3D4D5关闭D0D1D3,就这样一直循环就可以了,接下来看代码部分
#include <regx52.h>
/*以字节的形式控制led*/
#define led P1 //定义led io口
#define uint unsigned int
void delay(uint i){while(i--);} //延时函数
void main()
{
while(1)
{
led=0x1f;delay(30000);
led=0x8f;delay(30000);
led=0xc7;delay(30000);
led=0xe3;delay(30000);
led=0xf1;delay(30000);
led=0xf8;delay(30000);
led=0x7c;delay(30000);
led=0x3e;delay(30000);
}
}
当然肯定不只有这一种办法接下来我们试一下另一种办法位移动
#include <regx52.h>
#include <intrins.h> //这个头文件