编写一个c程序实现在八位数码管上显示HELLOC51并循环右移
时间: 2023-11-28 15:47:45 浏览: 81
以下是一个基于51单片机的C语言程序,可以实现在八位数码管上显示"HELLOC51"并循环右移:
```c
#include <reg51.h>
#define uchar unsigned char
#define uint unsigned int
uchar code table[10] = {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F};
void delay(uint xms)
{
uint i, j;
for (i = xms; i > 0; i--)
for (j = 110; j > 0; j--);
}
void main()
{
uchar i, j, k;
while (1)
{
for (i = 0; i < 8; i++)
{
P0 = 0xFF;
P2 = ~(1 << i);
for (j = 0; j < 8; j++)
{
P0 = table[k];
k = (k + 1) % 8;
delay(500);
}
}
}
}
```
其中,`table`数组存储了数字0~9在数码管上对应的编码,`delay`函数用于延时,`main`函数中的循环实现了在八位数码管上显示"HELLOC51"并循环右移的功能。
阅读全文