单片机四位数码计数器加
时间: 2023-07-24 21:44:07 浏览: 75
好的,这是一个简单的单片机计数器加的代码示例,可以实现四位数码计数器加。
```
#include <reg51.h>
#define uchar unsigned char
#define uint unsigned int
// 数码管段码定义
uchar code num[] = {
0x3F, 0x06, 0x5B, 0x4F, 0x66,
0x6D, 0x7D, 0x07, 0x7F, 0x6F
};
// 数码管位码定义
uchar code digit[] = {
0xFE, 0xFD, 0xFB, 0xF7
};
// 计数器初始值
uint counter = 0;
// 数码管显示函数
void display(uchar dat, uchar digit_num) {
P2 = digit[digit_num];
P0 = num[dat];
}
// 延时函数
void delay(uint time) {
uint i, j;
for (i = time; i > 0; i--)
for (j = 110; j > 0; j--);
}
// 主函数
void main() {
uchar i, j, k, l;
while (1) {
for (i = 0; i < 10; i++) {
for (j = 0; j < 10; j++) {
for (k = 0; k < 10; k++) {
for (l = 0; l < 10; l++) {
// 数码管循环显示计数器的四位数值
display(i, 0);
delay(5);
display(j, 1);
delay(5);
display(k, 2);
delay(5);
display(l, 3);
delay(5);
// 计数器加1
counter++;
// 判断计数器是否达到9999
if (counter > 9999) {
// 若达到,清零计数器,重新开始计数
counter = 0;
}
}
}
}
}
}
}
```
这个代码中,我们使用了一个计数器来记录当前的数值,使用循环来不断增加计数器的值,并且在每次循环中通过数码管将计数器的四位数值显示出来。当计数器的值达到9999时,会将计数器的值清零重新开始计数。
阅读全文