用c写一个c51用按键控制数码管的加减到9999的程序
时间: 2023-05-12 20:06:00 浏览: 129
按键控制数码管加减程序
以下是一个用C语言编写的C51单片机程序,可以通过按键控制数码管的加减,最大值为9999:
```c
#include <reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit KEY_ADD = P1^0; // 加键
sbit KEY_SUB = P1^1; // 减键
uchar code LED_TBL[] = { // 数码管显示表
0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07,
0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71
};
void delay(uint t) { // 延时函数
uint i, j;
for (i = 0; i < t; i++) {
for (j = 0; j < 120; j++);
}
}
void display(uint num) { // 数码管显示函数
uchar i, j, k, n;
uchar buf[4] = {0};
for (i = 0; i < 4; i++) {
buf[i] = num % 10;
num /= 10;
}
for (i = 0; i < 4; i++) {
n = buf[i];
for (j = 0; j < 8; j++) {
k = LED_TBL[n];
P0
阅读全文