51单片机使用六位数码管显示hello
时间: 2023-06-10 20:09:05 浏览: 76
可以使用以下代码实现:
```c
#include <REG51.h>
unsigned char code LEDChar[] = { // 数码管显示字符表
0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f
};
void main()
{
unsigned char i;
unsigned char disp[] = { // 要显示的字符串
0x48, 0x45, 0x4c, 0x4c, 0x4f
};
P0 = 0xff; // 将P0口全部设为高电平
while (1) {
for (i = 0; i < 6; i++) { // 循环显示每个字符
P0 = LEDChar[disp[i] - 'A']; // 显示字符
P2 = ~(1 << i); // 控制哪个数码管亮
delay(1000); // 延时1秒
}
}
}
void delay(unsigned int t) // 延时函数
{
unsigned int i, j;
for (i = 0; i < t; i++)
for (j = 0; j < 125; j++);
}
```
需要注意的是,这里使用了共阳数码管,如果使用共阴数码管需要将代码中的`LEDChar`表做相应修改。同时,如果使用其他型号的数码管,需要根据其数据手册修改`LEDChar`表中的数值。
相关推荐
![](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)
![](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)