📄 clock.c
字号:
#include "clock.h"
uchar code n[10]="0123456789";
void main()
{
initial();
LcdInit();
sec=min=hour=0;
flag=1;
while(1)
{
while(flag)
{
DisChar(0,n[hour/10]);
DisChar(1,n[hour%10]);
DisChar(3,n[min/10]);
DisChar(4,n[min%10]);
DisChar(6,n[sec/10]);
DisChar(7,n[sec%10]);
flag=0;
}
}
}
void initial(void)
{
//--INT0的配置----------
IT0=1; // INT0为0低电平触发(为1则为下降沿触发)
EX0=1; // INT0中断开,允许INT0中断
//--T0的配置:定时器------------
TMOD = 0x11; //定时器0,1 定时,工作方式1(16位装载方式)
TH0 = 0x4c;//定时50ms,11.0592M晶体振荡器
TL0 = 0x00;
TR0 = 1; //允许T0中断
ET0 = 1;
EA=1; // CPU所有中断开(IE最高位MSB)
}
void timer_0() interrupt 1 using 2
{
FT0++;
if(FT0==20)
{
sec++;
FT0=0;
}
if(sec>59)
{
min++;
sec=0;
}
if(min>59)
{
hour++;
min=0;
}
if(hour>24)hour=0;
TH0 = 0x4c;//定时50ms,12M晶体振荡器
TL0 = 0x00;
flag=1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -