用C语言写51单片机流水灯代码
时间: 2024-01-29 21:04:47 浏览: 29
下面是一个简单的51单片机流水灯代码,使用C语言编写:
```c
#include<reg52.h>
#define uint unsigned int
void delay(uint xms) // 延时函数
{
uint i, j;
for(i = xms; i > 0; i--)
for(j = 110; j > 0; j--);
}
void main()
{
uint i;
while(1)
{
for(i = 0; i < 8; i++) // 8个LED灯循环
{
P2 = ~(1 << i); // 亮灯
delay(500); // 延时
}
}
}
```
这个代码使用 P2 口控制单片机的8个LED灯,每次循环亮一个灯,形成流水灯效果。其中,delay() 函数是一个简单的延时函数,用于控制LED灯的亮灭时间。
相关问题
流水灯c语言代码51单片机流水灯代码
以下是51单片机流水灯的C语言代码:
```c
#include <reg51.h>
void delay(unsigned int xms) // 延时函数
{
unsigned int i, j;
for (i = xms; i > 0; i--)
for (j = 110; j > 0; j--);
}
void main()
{
unsigned char i;
while (1)
{
for (i = 0x01; i <= 0x80; i <<= 1) // 循环左移
{
P1 = i; // 输出到P1口
delay(500); // 延时500ms
}
}
}
```
用c语言写51单片机流水灯
下面是用C语言写的51单片机流水灯程序:
```
#include <reg51.h>
#define LED P0
void delay(unsigned int time) // 延时函数
{
unsigned int i,j;
for(i=0;i<time;i++)
for(j=0;j<1275;j++);
}
void main()
{
unsigned char i;
while(1)
{
for(i=0;i<8;i++) // 循环控制LED灯的亮灭
{
LED = ~(0x01<<i); // 点亮第i个LED灯
delay(500); // 延时0.5秒
}
}
}
```
该程序使用P0口控制8个LED灯的亮灭,每次点亮一个LED灯,然后延时0.5秒后关闭,再点亮下一个LED灯,如此循环。