基于51单片机的电子万年历

时间:2025-03-25 08:34:49
//------------------------------- void init(void) //定时器、计数器设置函数 { TMOD=0x11; //指定定时/计数器的工作方式为3 TH0=0; //定时器T0的高四位=0 TL0=0; //定时器T0的低四位=0 TH1=0x3C; TL1=0xB0; EA=1; //系统允许有开放的中断 ET0=1; //允许T0中断 ET1=1; // IT1=1; // IT0=0; PT1=1; PT0=0; TR0=1; //开启中断,启动定时器 TR1=0; } void InitialTimer2(void) { T2CON = 0x00; //16 Bit Auto-Reload Mode TH2 = RCAP2H = 0x3C; //重装值,初始值 TL2 = RCAP2L = 0x18; TL2 = RCAP2L = 0xB0; ET2=1; //定时器 2 中断允许 TR2 = 0; //定时器 2 启动 } //*******************主函数************************** //*************************************************** void main() { ds1302_init(); //调用DS1302时钟的初始化子函数 init(); //调用定时计数器的设置子函数 lcd_init(); //调用液晶屏初始化子函数 InitialTimer2(); led=1; //关闭LCD的背光电源 while(1) //无限循环下面的语句: { keyscan(); //调用键盘扫描子函数 led=led1; } }