单片机数码管显示两位数程序
时间: 2023-12-09 16:04:09 浏览: 103
以下是一个基于8051单片机的数码管显示两位数的程序:
```
#include <reg52.h>
#define LED P0
void delay(int time_ms)
{
int i, j;
for(i = 0; i < time_ms; i++)
for(j = 0; j < 120; j++);
}
void main()
{
unsigned char table[] = {0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f};
unsigned char num = 0;
while(1)
{
LED = table[num / 10]; //显示十位数
P2 = 0xfe; //打开第一位数码管
delay(5);
P2 = 0xff;
LED = table[num % 10]; //显示个位数
P2 = 0xfd; //打开第二位数码管
delay(5);
P2 = 0xff;
num++;
if(num > 99)
num = 0;
}
}
```
这个程序使用了一个名为`table`的数组来存储数字0-9对应的七段显示器的控制码。程序中,我们首先显示变量`num`的十位数(`num / 10`),然后显示个位数(`num % 10`),并且在每个数码管上打开适当的引脚(在本例中使用P2口的第一位和第二位)来激活数码管。然后,我们让`num`自增,保证每次循环都显示下一个数字,直到`num`达到99,然后回到0。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)