51单片机共阴极流水灯
时间: 2023-12-06 16:36:20 浏览: 49
以下是51单片机共阴极流水灯的代码实现:
```c
#include <reg52.h> // 引入头文件
sbit L1 = P1^0; // 定义引脚
sbit L2 = P1^1;
sbit L3 = P1^2;
sbit L4 = P1^3;
sbit L5 = P1^4;
sbit L6 = P1^5;
sbit L7 = P1^6;
sbit L8 = P1^7;
void delay(unsigned int xms) // 自定义延时函数
{
unsigned int i, j;
for(i=xms; i>0; i--)
for(j=112; j>0; j--);
}
void main()
{
while(1)
{
L1 = 0; L2 = 1; L3 = 1; L4 = 1; L5 = 1; L6 = 1; L7 = 1; L8 = 1; // 依次点亮每个LED
delay(500); // 延时
L1 = 1; L2 = 0; L3 = 1; L4 = 1; L5 = 1; L6 = 1; L7 = 1; L8 = 1;
delay(500);
L1 = 1; L2 = 1; L3 = 0; L4 = 1; L5 = 1; L6 = 1; L7 = 1; L8 = 1;
delay(500);
L1 = 1; L2 = 1; L3 = 1; L4 = 0; L5 = 1; L6 = 1; L7 = 1; L8 = 1;
delay(500);
L1 = 1; L2 = 1; L3 = 1; L4 = 1; L5 = 0; L6 = 1; L7 = 1; L8 = 1;
delay(500);
L1 = 1; L2 = 1; L3 = 1; L4 = 1; L5 = 1; L6 = 0; L7 = 1; L8 = 1;
delay(500);
L1 = 1; L2 = 1; L3 = 1; L4 = 1; L5 = 1; L6 = 1; L7 = 0; L8 = 1;
delay(500);
L1 = 1; L2 = 1; L3 = 1; L4 = 1; L5 = 1; L6 = 1; L7 = 1; L8 = 0;
delay(500);
}
}
```