#include<reg52.h>
sbit P1_0=P0^0; //位定义P1_0~7为P0端口的0~7位
sbit P1_1=P0^1;
sbit P1_2=P0^2;
sbit P1_3=P0^3;
sbit P1_4=P0^4;
sbit P1_5=P0^5;
sbit P1_6=P0^6;
sbit P1_7=P0^7;
int a=30000; //全局赋值a
main()
{
while(1) //while语句大循环
{
P1_0=0;
while(a--); //while语句循环--延迟
P1_1=0;
while(a--);
P1_2=0;
while(a--);
P1_3=0;
while(a--);
P1_4=0;
while(a--);
P1_5=0;
while(a--);
P1_6=0;
while(a--);
P1_7=0;
while(a--);
}
}
第三种
#include<reg52.h>
sbit P1_0=P0^0; //位定义P1_0~7为P0端口的0~7位
sbit P1_1=P0^1;
sbit P1_2=P0^2;
sbit P1_3=P0^3;
sbit P1_4=P0^4;
sbit P1_5=P0^5;
sbit P1_6=P0^6;
sbit P1_7=P0^7;
int a; //定义全局变量a
main()
{
while(1) //while语句大循环
{
P1_0=0;
a=30000; //变量a赋值
while(a--); //while语句循环--延迟
P1_1=0;
a=30000;
while(a--);
P1_2=0;
a=30000;
while(a--);
P1_3=0;
a=30000;
while(a--);
P1_4=0;
a=30000;
while(a--);
P1_5=0;
a=30000;
while(a--);
P1_6=0;
a=30000;
while(a--);
P1_7=0;
a=30000;
while(a--);
}
}
这篇博客详细介绍了两种不同的单片机实现流水灯的C语言代码,通过位定义和全局变量控制P0端口的每一位,实现灯的依次亮起和熄灭,用while循环和延迟机制实现灯光流动效果。
4万+

被折叠的 条评论
为什么被折叠?



