📄 update.c
字号:
#include <reg51.h> /* 预处理命令 */
#include <stdio.h>
#define SECOND 4000
unsigned int count; /* 定义用于500微秒计数器的整型变量 */
struct time { /* 定义用于时、分、秒的结构变量*/
unsigned char hour; /* 时 */
unsigned char min; /* 分 */
unsigned char sec; /* 秒 */
};
struct time clocktime; /* 当前时间 */
update (dtime) /* 显示更新函数 */
struct time *dtime;
{
printf("\r %02bd:%02bd:%02bd %s", /* 显示当前时间 */
dtime->hour, /* 时 */
dtime->min, /* 分 */
dtime->sec,"\r"); /* 秒 */
}
timer0() interrupt 1 using 2 /* 定时器T0中断服务程序 */
{
if( ++count == SECOND ) { /* 每次中断时微秒计数器加1 */
count = 0;
update(&clocktime);
if( ++clocktime.sec == 60 ) { /* 秒处理 */
clocktime.sec = 0;
if( ++clocktime.min == 60 ) { /* 分处理 */
clocktime.min = 0;
if( ++clocktime.hour == 25 ) { /* 小时处理 */
clocktime.hour = 1;
}
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -