基于AT89C51单片机数字时钟设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于AT89C51单片机数字时钟设计

基于AT89C51单片机数字时钟设计   摘 要 本文介绍一款由AT89C51单片机、DS1302时钟芯片、LCD1602字符液晶显示器构成的数字时钟的设计。通过单片机对DS1302的读写操作,具有LCD1602液晶显示年月日、星期和时分秒的功能,并且具有调节年月日、星期和时分秒的功能。 关键词 数字时钟;AT89C51单片机;DS1302时钟芯片 中图分类号TP368.1 文献标识码A 文章编号 1674-6708(2013)95-0220-02 0 引言 数字时钟是一种利用集成电路技术实现对时、分、秒等进行数字显示的计时装置,广泛用于各种计时场合。钟表的数字化给人们的生产生活带来了极大的便利,已成为人们日常生活不可或缺的必需品。与传统钟表相比数字时钟具有良好的实时性和方便的扩展性。经过一定的软硬件扩展可以实现诸如定时自动报警、市政路灯自动起闭控制、定时打铃等的功能。因此,研究数字时钟的设计及其应用的扩展,有着非常现实的意义。 1 系统总体设计方案 本文所设计的数字时钟由主控芯片、时钟模块、显示模块和键盘控制模块共4个功能模块组成,如图1所示。 主控芯片选用Atmel公司生产的AT89C51单片机,完成对其他三个功能模块的协调与控制,是系统的核心部分。时钟模块采用美国DALLAS公司推出的高性能低功耗的实时时钟芯片DS1302,可以提供秒、分、时、日、月和年等信息,具有月末日期自动调节和闰年校正功能;提供主电源和备用电源双电源引脚,可以对后备电源进行涓流充电。显示模块选用液晶显示器LCD1602,型号为OCM2X16A,为字符点阵式液晶模块,可以显示两行,每行十六个字符。键盘控制模块由三个按键组成,用于时间的设定与调整。 2 硬件电路设计 整个系统的组成如图2所示。 2.1时钟与复位电路 单片机AT89C51和相关的外围元件组成时钟复位电路,其中18、19间外接12M晶振构成时钟电路,提供整机工作的时间基准;9脚为复位脚,具有上电复位及手动复位功能。 2.2 时钟模块 时钟模块电路采用DS1302,可以提供数字时钟中的秒、分、时、日、月和年等信息。X1和X2引脚之间连接一个32.768kHz的晶振,提供实时时钟的工作基准。BT为3.6V的充电电池,编程DS1302充电控制寄存器可对电池的慢速充电,用于时钟/日历数据和静态RAM掉电保护,实现时间信息的长期保存与临时断电情况下时钟的正常工作。对小时寄存器进行编程可以在12/24小时显示模式间进行切换。 2.3 显示模块 显示采用小型的液晶显示器LCD1602,分两行显示年月日、时分秒和星期。由于LCD1602不能显示汉字,对于日期的显示可以采用数字显示的方法,星期一至星期日分别显示为“1~7”的数字。LCD驱动电压VL端接可调电阻,可以调节液晶显示的对比度。BLA端接可调电阻,可以实现液晶显示亮度的调节。 2.4 键盘控制模块 键盘控制模块共有三个按键组成。 S1功能键:在24小时显示模式下,该键第一次按下后进入秒调整状态,液晶显示器上的时间停止走动,等待S2键被按下后秒显示部分加“1”。再次按下后进入调分模式,跟着依次是调时、调年、调月、调日和调周模式,当该键第八次被按下后退出时间调整模式。 S2调整键:在调整模式下,该键每按一次,相应被调对象加1。 S3 确定键:在调整模式下,该键被按下后,退出调整模式,并将调整后的时间、日期写入DS1302。 3软件设计 本系统的软件设计主要包括时钟芯片DS1302、液晶显示芯片LCD1602和定时器T0的初始化;时钟的时间设定与读取、液晶的显示与键盘处理等。 系统主程序框图如图3所示。系统首先对LCD1602、DS1302和定时器T0初始化,之后循环地调用按键处理子程序,检测是否需要调节时间。程序在定时器T0中断服务程序中,定时读取DS1302的日期和时间送到液晶显示器进行显示,实现刷新时间。 3.1 LCD1602显示程序部分 本部分主要是液晶显示所需的子程序、显示时间信息等。具体有:初始化LCD子程序;写命令子程序;写数据子程序;显示第一行数据程序;显示第二行数据程序;显示星期。 3.2 DS1302程序部分 本部分主要是实时时钟的字节读、字节写、读对应地址数据、向对应地址写数据和初始化等。具体有:DS1302初始化子程序;写一个字节;读一个字节;写数据;读数据。 3.3 按键处理子程序 按键处理子程序主要是检测S1是不是被按下,检测S1被按下后再检测S2,从而实现对时间信息的调整,并在检测到S3被按下后将设置的结果写入DS1302。程序流程图如图4所示。

文档评论(0)

linsspace + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档