(四)c52学习之旅-流水LED灯
先做个简单的流水灯,这个简单的流水灯学会了,后面做花样流水灯就简单很多了。这里并没有复杂的对每个小灯进行位控制,而是直接对寄存器赋值,这样可以快速对小灯实现复杂的流水。
这里原理图就不再贴了,详见第三篇。
#include<reg51.h>
void Delay()
{
int i,j;
for(i=0;i<1000;i++)
for(j=0;j<100;j++);
}
void main()
{
unsigned char i=0;
while(1)
{
P1=0xfe;//点亮一个LED灯 1111 1110
/*循环左移,分别点亮*/
for(i=0;i<8;i++)
{
Delay();
P1<<=1;
P1|=0x01; //左移时候,末尾默认添加0,所以要处理一下
}
}
}