置记录,再根据该记录判断选择设置时钟的秒分时。在此主要通过按下S4键的次数设置对应时间的时、分、秒修改标志位,然后统一由时间加1修改功能函数进行修改,流程图如图3.4。 3.2.5 加1修改时间功能函数cum
用户按下S2键后,根据时间设置模块设置的修改标志位将时间相应的时、
分、秒、计数单元加1,其中需要针对时、分、秒的进制进行归零处理,流程图如图3.6。
3.2.6 日期设置函数ftion1
在日期显示状态下,用户每次按下S1键是都会调用该函数进行处理,毎按
一次修改时钟修改位置记录,再根据该记录判断选择设置时钟的秒分时。在此主要通过按下S1键的次数设置对应日期的年、月、日修改标志位,然后统一由日期加1修改功能函数进行修改,流程图如图3.7。 3.2.7 加1修改日期功能函数cum1
用户按下S2键后,根据日期设置模块设置的修改标志位将日期相应的年、
月、日计数单元加1,其中需要针对年、月、日的进制进行归零处理,流程图如图3.8。
15
开始 开始 从DS1302读取秒值 从DS1302读取日值 调秒显示子函数 调日显示子函数 从DS1302读取分值 从DS1302读取月值 调分显示子函数 调月显示子函数 从DS1302读小时值 从DS1302读年值 调小时显示子函数 调年显示子函数 返回 返回 图3.3显示子程序流程图
图3.4 时间设值函数流程图
16
中断0 现场保护 调日期显示子函数 N 判断是否有键按下? Y 调用LED显示函数和延时函数去抖 Y 是抖动吗? N 是时钟修改键吗? N 是加1功能键吗? Y 调初始化DS1302函数 Y N 调用时钟设置函数 调用加1修改函数 N 判断t是否到0? Y 恢复现场 中断返回 图3.5中断0子函数流程图
17
cum 时钟秒或志为1Y 到60S否? N Y 否? 清零 N 秒单元内容加1 时钟分修改标志为1否? Y 到60min否? Y 清零 N N 分单元内容加1 Y 时钟小时修改标志为1否? 到60h否? Y 清零 N 小时单元内容加1 返回 图3.6 加1修改时间功能函数
18
Ftion1 禁止时间修改、清时间修改标志 日期修改记录值加1 记录值为1吗? N 记录值为2吗? N 记录值为3吗? N 日期单元修改位置记录值清零 Y 将时钟日修改标志位置1 Y 将时钟月修改标志位置1 Y 将时钟年修改标志位置1 返回
图3.7 日期设值函数流程图
19
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库基于DS1302的万年历毕业论文 数码管显现 附程序 硬件电路图(5)在线全文阅读。
相关推荐: