本设计由数据显示模块、温度采集模块、时间处理模块和调整设置模块四个模块组成。系统以AT89S52单片机为控制器,以串行时钟日历芯片DS1302记录日历和时间,它可以对年、月、日、时、分、秒进行计时,还具有闰年补偿等多种功能。温度采集选用DS18B20芯片,万年历采用直观的数字显示,数据显示采用1602A液晶显示模块,可以在LCD上同时显示年、月、日、星期、时、分、秒,还具有时间校准等功能。此万年历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,具有广阔的市场前景。
设计要求:
(1)用4个按键实现所有功能,计时准确。
(2)可以设定闹钟功能。
(3)有阴历功能,平年闰年准确无误。
(4)液晶能显示年、月、日、星期、时、分、秒、温度。
//*******************主函数**************************
//***************************************************
void main()
{
uint i;
lcd_init(); //调用液晶屏初始化子函数
ds1302_init(); //调用DS1302时钟的初始化子函数
for(i=0;i<RsBuf_N;i++)
RsBuf[i]='0';
Uart_init(); //调用定时计数器的设置子函数
while(1) //无限循环下面的语句:
{
keyscan(); //调用键盘扫描子函数
GPS_TIME();
}
}