用Keil uVision4写出51单片机点阵屏循环显示0~9
时间: 2024-05-13 21:19:48 浏览: 108
基于51单片机的点阵显示
下面是使用Keil uVision4编写的51单片机点阵屏循环显示0~9的程序:
```
#include<reg52.h>
// 定义数码管显示的数字0~9的编码
unsigned char code table[]={
0x3f, 0x06, 0x5b, 0x4f, 0x66,
0x6d, 0x7d, 0x07, 0x7f, 0x6f
};
void delay(unsigned int i)
{
while(i--);
}
void main()
{
unsigned char i = 0;
while(1)
{
// 显示数字0~9
P0 = table[i++];
delay(50000); // 延时,调整速度
if(i >= 10) // 当i大于9时,重新从0开始循环
i = 0;
}
}
```
该程序使用了一个数组`table`来存储数码管显示的数字0~9的编码,然后在`main`函数中使用一个循环不断地显示数字0~9,每次循环都会通过`P0`口将对应数字的编码输出到点阵屏上,并进行一定的延时,以控制显示速度。当显示完数字9后,`i`会被重新赋值为0,从而重新开始循环。
阅读全文