51单片机写一个跑马灯程序
时间: 2023-06-01 20:02:15 浏览: 87
以下是51单片机的跑马灯程序,使用P1口控制LED灯的亮灭:
```
#include<reg52.h> //包含51单片机的头文件
sbit LED1=P1^0; //定义P1.0口为LED1
sbit LED2=P1^1; //定义P1.1口为LED2
sbit LED3=P1^2; //定义P1.2口为LED3
sbit LED4=P1^3; //定义P1.3口为LED4
void delay(unsigned int t) //延时函数,t为延时时间
{
unsigned int i,j;
for(i=0;i<t;i++)
for(j=0;j<500;j++);
}
void main()
{
while(1) //循环执行
{
LED1=0; //LED1亮
LED2=1; //LED2灭
LED3=1; //LED3灭
LED4=1; //LED4灭
delay(500); //延时0.5秒
LED1=1; //LED1灭
LED2=0; //LED2亮
LED3=1; //LED3灭
LED4=1; //LED4灭
delay(500); //延时0.5秒
LED1=1; //LED1灭
LED2=1; //LED2灭
LED3=0; //LED3亮
LED4=1; //LED4灭
delay(500); //延时0.5秒
LED1=1; //LED1灭
LED2=1; //LED2灭
LED3=1; //LED3灭
LED4=0; //LED4亮
delay(500); //延时0.5秒
}
}
```
以上程序中,通过循环执行每个LED灯的亮灭,配合延时函数来实现跑马灯效果。程序中的delay函数通过嵌套两个for循环实现延时,可根据需要自行调整延时时间。
阅读全文