用C语言写出8位数码管显示不同的数值
时间: 2024-03-11 22:46:59 浏览: 22
好的,下面是一个简单的C语言程序,可以控制8位数码管显示不同的数值,你可以根据自己的需要进行修改和扩展。
```c
#include <stdio.h>
// 定义数码管各段的引脚编号
#define SEG_A 0
#define SEG_B 1
#define SEG_C 2
#define SEG_D 3
#define SEG_E 4
#define SEG_F 5
#define SEG_G 6
#define SEG_DP 7
// 数码管显示的数字
const int digits[10][8] = {
{1, 1, 1, 1, 1, 1, 0, 0}, // 0
{0, 1, 1, 0, 0, 0, 0, 0}, // 1
{1, 1, 0, 1, 1, 0, 1, 0}, // 2
{1, 1, 1, 1, 0, 0, 1, 0}, // 3
{0, 1, 1, 0, 0, 1, 1, 0}, // 4
{1, 0, 1, 1, 0, 1, 1, 0}, // 5
{1, 0, 1, 1, 1, 1, 1, 0}, // 6
{1, 1, 1, 0, 0, 0, 0, 0}, // 7
{1, 1, 1, 1, 1, 1, 1, 0}, // 8
{1, 1, 1, 1, 0, 1, 1, 0}, // 9
};
// 数码管显示函数
void showDigit(int digit) {
// 显示指定数字
for (int i = 0; i < 8; i++) {
if (digits[digit][i] == 1) {
printf("1");
} else {
printf("0");
}
}
printf("\n");
}
int main() {
// 显示数字0~9
for (int i = 0; i < 10; i++) {
showDigit(i);
}
return 0;
}
```
这个程序定义了数码管各段的引脚编号,以及数字0~9的各个段的状态。通过循环调用showDigit函数,可以依次显示出数字0~9的状态。你可以根据自己的需要修改这个程序,实现更多功能,例如控制多个数码管显示多位数值,或者根据外部输入控制数码管显示的内容等等。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.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)