《基于单片机的定时闹钟设计.ppt》由会员分享,可在线阅读,更多相关《基于单片机的定时闹钟设计.ppt(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、基于单片机的定时闹钟设计基于单片机的定时闹钟设计姓名:姓名:XXX学号:学号:XXX班级:班级:XXX指导老师:指导老师:XXX系统设计需求系统设计需求一、系统能正确显示当前时间。一、系统能正确显示当前时间。二、可以通过键盘对时间和日期进行调整。二、可以通过键盘对时间和日期进行调整。三、能设置闹钟并发出警报声。三、能设置闹钟并发出警报声。设计概述设计概述 本定时时钟系统使用单片机本定时时钟系统使用单片机AT89S52为为主控芯片,由时钟芯片主控芯片,由时钟芯片DS1302提供实时时提供实时时间,采用间,采用LCD1602显示日期、时间和星期等显示日期、时间和星期等信息;系统提供信息;系统提供4
2、个按键供人机交互,用户个按键供人机交互,用户可根据需要修改时间和设置定时闹钟;实可根据需要修改时间和设置定时闹钟;实时时间和定时闹钟设置的时间一致时,系时时间和定时闹钟设置的时间一致时,系统会通过蜂鸣器发出警报声。统会通过蜂鸣器发出警报声。一、时间和日期的显示过程一、时间和日期的显示过程图图图图1 1 实时时钟程序流程图实时时钟程序流程图实时时钟程序流程图实时时钟程序流程图 首先,从首先,从首先,从首先,从DS1302DS1302中读取出中读取出中读取出中读取出BCDBCD码的时间和日期及星期等码的时间和日期及星期等码的时间和日期及星期等码的时间和日期及星期等数据,然后将数据,然后将数据,然后
3、将数据,然后将BCDBCD码转换成十码转换成十码转换成十码转换成十进制,接着将十进制数的个位进制,接着将十进制数的个位进制,接着将十进制数的个位进制,接着将十进制数的个位和十位分离,之后再将其转换和十位分离,之后再将其转换和十位分离,之后再将其转换和十位分离,之后再将其转换为为为为LCDLCD识别的识别的识别的识别的ASCIIASCII码,最后码,最后码,最后码,最后读出字符的字型点阵,在液读出字符的字型点阵,在液读出字符的字型点阵,在液读出字符的字型点阵,在液晶显示屏上显示。晶显示屏上显示。晶显示屏上显示。晶显示屏上显示。图二图二图二图二 1602 1602型型型型LCDLCD的驱动程序流程
4、图的驱动程序流程图的驱动程序流程图的驱动程序流程图二、二、时间和日期的修改时间和日期的修改 在系统正常运行过程中,当在系统正常运行过程中,当K1键第一次被键第一次被按下时,关闭定时器(按下时,关闭定时器(TR0=0),并且在时间),并且在时间的秒位出现闪烁的光标,提示用户现在更改的的秒位出现闪烁的光标,提示用户现在更改的是时间的秒位部分。可通过继续按是时间的秒位部分。可通过继续按K1来选择需来选择需要调整的其他位,利用要调整的其他位,利用K2进行加运算,进行加运算,K3进行进行减运算。直到减运算。直到K1键被第十次按下的时候,打开键被第十次按下的时候,打开定时器(定时器(TR0=1)。系统回到
5、显示时间和日期)。系统回到显示时间和日期的模式下。的模式下。YNNYNYN开始开始按按K1键键K3(减(减“1”)K2(加(加“1”)S1键(选择位)键(选择位)修改当前位?修改当前位?所有位设所有位设置完毕?置完毕?加减完毕?加减完毕?结束结束 图图图图3 3 日期和时间调整程序流程图日期和时间调整程序流程图日期和时间调整程序流程图日期和时间调整程序流程图 日期和时间调整程序日期和时间调整程序日期和时间调整程序日期和时间调整程序流程图如右图所示。各流程图如右图所示。各流程图如右图所示。各流程图如右图所示。各按键的定义如下。按键的定义如下。按键的定义如下。按键的定义如下。K1K1:功能键。选择
6、修改:功能键。选择修改:功能键。选择修改:功能键。选择修改的位(时间或日期)。的位(时间或日期)。的位(时间或日期)。的位(时间或日期)。K2K2:加一键。令当前选:加一键。令当前选:加一键。令当前选:加一键。令当前选中的位在数值上加中的位在数值上加中的位在数值上加中的位在数值上加“1”“1”。K3K3:减一键。令当前选:减一键。令当前选:减一键。令当前选:减一键。令当前选中的位在数值上减中的位在数值上减中的位在数值上减中的位在数值上减“1”“1”。三、三、定时闹钟部分定时闹钟部分该部分主要包括以下三个方面:该部分主要包括以下三个方面:1.闹钟的设置。闹钟的设置。2.闹铃服务的开启。闹铃服务的
7、开启。3.对警报声的处理。对警报声的处理。1.闹钟的设置闹钟的设置(1).在将时间、星期和日期信息都设置完毕在将时间、星期和日期信息都设置完毕后,按一次后,按一次K1键,光标会从第一行的年位跳键,光标会从第一行的年位跳到第二行的分位,表示当前设置的是闹钟的到第二行的分位,表示当前设置的是闹钟的分。分。(2).第二次按第二次按K1键,光标从分位跳到时位,键,光标从分位跳到时位,表示当前设置的是闹钟的时位。表示当前设置的是闹钟的时位。(3).当将闹钟的分位和时位均设置完毕时,当将闹钟的分位和时位均设置完毕时,第三次按下第三次按下K1键,光标消失,系统正常显示键,光标消失,系统正常显示时间和日期等信
8、息。时间和日期等信息。2.闹铃的开启闹铃的开启 即使系统设有闹铃时间,蜂鸣器也不一即使系统设有闹铃时间,蜂鸣器也不一定会在设定时间发出警报声。为避免闹铃定会在设定时间发出警报声。为避免闹铃在用户不需要的时候响起,该定时闹钟系在用户不需要的时候响起,该定时闹钟系统采用了闹钟激活机制。只有在设置了闹统采用了闹钟激活机制。只有在设置了闹钟时间并且用户有激活闹铃服务的时候,钟时间并且用户有激活闹铃服务的时候,蜂鸣器才会在设定时间发出警报声。激活蜂鸣器才会在设定时间发出警报声。激活方式:按一次方式:按一次K4键。再按一次则会取消。键。再按一次则会取消。当闹铃激活时,当闹铃激活时,LCD显示屏上会出现显示
9、屏上会出现“N”的提示信息,提示有闹钟提示开启。的提示信息,提示有闹钟提示开启。NYNYNY图图图图2 2 闹钟程序流程图闹钟程序流程图闹钟程序流程图闹钟程序流程图定时闹钟的激活机制定时闹钟的激活机制优点:优点:优点:优点:相比没有激活功能的定时闹钟,设相比没有激活功能的定时闹钟,设相比没有激活功能的定时闹钟,设相比没有激活功能的定时闹钟,设有激活机制的定时闹钟省去了用户在不有激活机制的定时闹钟省去了用户在不有激活机制的定时闹钟省去了用户在不有激活机制的定时闹钟省去了用户在不需要闹铃提示的时候手动去暂停发出警需要闹铃提示的时候手动去暂停发出警需要闹铃提示的时候手动去暂停发出警需要闹铃提示的时候
10、手动去暂停发出警报声的定时闹钟的麻烦。报声的定时闹钟的麻烦。报声的定时闹钟的麻烦。报声的定时闹钟的麻烦。开始开始结束结束S4键被键被按下?按下?闹钟时间闹钟时间=当前时间?当前时间?蜂鸣器发蜂鸣器发出警示声出警示声设置闹钟时间设置闹钟时间闹钟是否激活?闹钟是否激活?3.闹铃响起的条件和停止闹铃响起的条件和停止(1)响起的条件)响起的条件 定时闹钟发出警报声需要满足以下两个条件:定时闹钟发出警报声需要满足以下两个条件:a.系统时间与设定的闹铃时间相等系统时间与设定的闹铃时间相等 b.闹铃提示功能被激活,即显示屏上有闹铃提示功能被激活,即显示屏上有“N”的提示信息。的提示信息。(2)闹铃停止的两种方法)闹铃停止的两种方法 a.按一次按一次K4键撤销闹铃提示服务。键撤销闹铃提示服务。b.等待系统时间分位与设定的闹铃时间分位等待系统时间分位与设定的闹铃时间分位 不相等(不相等(1分钟),蜂鸣器自动停止鸣叫。分钟),蜂鸣器自动停止鸣叫。系统仿真电路图系统仿真电路图实物图实物图结结 束束 谢谢观看!谢谢观看!