自己仿照一下就可以了,用P1、P2、P3都可以
#include //51系列单片机定义文件
#define uchar unsigned char //定义无符号字符
#define uint unsigned int //定义无符号整数
void delay(uint); //声明延时函数
void main(void)
{
uint i;
uchar temp;
while(1)
{
temp=0x01;
for(i=0;i<8;i++) //8个流水灯逐个闪动
{
P0=~temp;
delay(100); //调用延时函数
temp<<=1;
}
temp=0x80;
for(i=0;i<8;i++) //8个流水灯反向逐个闪动
{
P0=~temp;
delay(100); //调用延时函数
temp>>=1;
}
temp=0xFE;
for(i=0;i<8;i++) //8个流水灯依次全部点亮
{
P0=temp;
delay(100); //调用延时函数
temp<<=1;
}
temp=0x7F;
for(i=0;i<8;i++) //8个流水灯依次反向全部点亮
{
P0=temp;
delay(100); //调用延时函数
temp>>=1;
}
}
}
void delay(uint t) //定义延时函数
{
register uint bt;
for(;t;t--)
for(bt=0;bt<255;bt++);
}
LED灯的连接方式取决于电源规格。如果是用电池供电,LED需要串联电阻以后全部并联。如果是输出电压达到27V的恒流驱动供电,LED全部串联。
总之,LED的连接可以全部并联,也可以全部串联,还可以混联。恒流驱动要考虑输出电流大小和输出电压大小。恒流驱动不要串电阻,恒压驱动要根据LED的Vf串联限流分压电阻。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)