利用五一单片机实现两位一体数码管显示56,且6个led灯依次点亮的代码
时间: 2024-03-09 08:50:06 浏览: 163
好的,以下是完整的代码:
```c
#include <reg52.h> // 引入头文件
sbit LED1 = P1^0; // 定义六个LED引脚
sbit LED2 = P1^1;
sbit LED3 = P1^2;
sbit LED4 = P1^3;
sbit LED5 = P1^4;
sbit LED6 = P1^5;
void delay(unsigned int i) // 延时函数
{
while(i--);
}
void main()
{
unsigned char num[2] = {0x05,0x06}; // 数码管显示的数字
unsigned char i;
while(1)
{
// 数码管显示数字56
P2 = 0x00;
P0 = num[0];
P2 = 0x01;
P0 = num[1];
// 依次点亮六个LED灯
for(i = 0; i < 6; i++)
{
switch(i)
{
case 0:
LED1 = 1;
break;
case 1:
LED2 = 1;
break;
case 2:
LED3 = 1;
break;
case 3:
LED4 = 1;
break;
case 4:
LED5 = 1;
break;
case 5:
LED6 = 1;
break;
}
delay(10000); // 延时一段时间
LED1 = 0;
LED2 = 0;
LED3 = 0;
LED4 = 0;
LED5 = 0;
LED6 = 0;
}
}
}
```
这个程序会循环执行,首先在两位一体数码管上显示数字56,然后依次点亮六个LED灯,每个LED灯点亮的时间为一定的延时后自动熄灭,然后再点亮下一个LED灯,以此类推。
阅读全文