工具:STC系列51单片机、串口转换器(USB转TTL 或232转TTL)
材料:实验板一块(可以买现成的,也可以买面包板自己搭建),电阻、LED灯 若干,5V电源等。
以下程序可以直接用Keil C 直接编译执行。
//可以通过左移函数_crol_()和右移函数_cror_()来实现LED等的来回流动。
//具体实现方法可以参考如下程序:
#include
#include
#define uint unsigned int
#define uchar unsigned char
void delay(uint a);
void main()
{
P1=0xfe;
while(1)
{
// 向左循环点亮LED
for(i=0; i<7; i++)
{
P1=_crol_(P1,1); // 左移一位,点亮下一位LED
delay(55);
}
// 向右循环点亮LED
for(i=0; i<7; i++)
{
P1=_cror_(P1,1); // 右移一位,,点亮上一位LED
delay(55);
}
}
}
// 延时函数,延时a毫秒
void delay(uint a)
{
uint x,y;
for(x=a;x>0;x--)
for(y=110;y>0;y--);
}
教你怎样制作一个LED流水灯
如果是8位流水灯,可接到单片机的一组io上,软件可采用移位运算实现流水灯显示
!(1<<1),!(1<<2)...
让灯一个一个亮,就是让io口一个一个拉高,或者拉低
#include
unsigned int a;
void mian()
{
P1 = P1<<1;//你看你的流水灯硬件管脚接的是哪个端口相应的改一下,就可以了
a= 65535;
while(a--);//软件延时
}