《单片机原理及应用》for循环实现1位数码管显示0-9
时间: 2024-05-08 10:17:47 浏览: 12
以下是基于51单片机的C语言代码:
```c
#include <reg51.h> // 引入51单片机头文件
// 定义数码管对应的端口
sbit d1 = P1^0;
sbit d2 = P1^1;
sbit d3 = P1^2;
sbit d4 = P1^3;
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 = 0; i <= 9; i++) // 循环显示0-9
{
switch(i)
{
case 0: // 显示"0"
d1 = 0; d2 = 0; d3 = 0; d4 = 0;
break;
case 1: // 显示"1"
d1 = 1; d2 = 0; d3 = 0; d4 = 0;
break;
case 2: // 显示"2"
d1 = 0; d2 = 1; d3 = 0; d4 = 0;
break;
case 3: // 显示"3"
d1 = 1; d2 = 1; d3 = 0; d4 = 0;
break;
case 4: // 显示"4"
d1 = 0; d2 = 0; d3 = 1; d4 = 0;
break;
case 5: // 显示"5"
d1 = 1; d2 = 0; d3 = 1; d4 = 0;
break;
case 6: // 显示"6"
d1 = 0; d2 = 1; d3 = 1; d4 = 0;
break;
case 7: // 显示"7"
d1 = 1; d2 = 1; d3 = 1; d4 = 0;
break;
case 8: // 显示"8"
d1 = 0; d2 = 0; d3 = 0; d4 = 1;
break;
case 9: // 显示"9"
d1 = 1; d2 = 0; d3 = 0; d4 = 1;
break;
}
delay(1000); // 延时1秒
}
}
}
```