51单片机单个数码管倒计时0-9
时间: 2024-05-05 13:17:42 浏览: 24
以下是基于STC89C52单片机的单个数码管倒计时0-9的代码:
```c
#include <reg52.h>
sbit LED = P1^0; // 数码管控制引脚
void init_timer0();
void delay_ms(unsigned int time);
void main()
{
init_timer0();
while (1)
{
LED = 1; // 数码管亮
P0 = 0x3f; // 显示0
delay_ms(1000);
LED = 0; // 数码管灭
delay_ms(1000);
}
}
void init_timer0()
{
TMOD &= 0xf0; // 设置为模式0
TMOD |= 0x01;
TH0 = 0xfc; // 定时1ms
TL0 = 0x66;
ET0 = 1; // 开启定时器0中断
EA = 1; // 开启总中断
TR0 = 1; // 启动定时器0
}
void delay_ms(unsigned int time)
{
unsigned int i, j;
for (i = time; i > 0; i--)
for (j = 110; j > 0; j--);
}
void timer0_isr() interrupt 1
{
static unsigned char num = 9; // 初始值为9,即倒计时从9开始
TH0 = 0xfc; // 重新赋值
TL0 = 0x66;
num--; // 数字减1
if (num == 0xff) // 倒计时结束
{
num = 9; // 重新开始
}
P0 = ~num; // 数码管显示
}
```
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.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)