数字钟的实现.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文档。上传文档
查看更多
数字钟的实现.doc

多功能数字钟的设计与实现 一、实验目的 1.掌握数字钟的设计原理。 2.用微机实验平台实现数字钟。 3.分析比较微机实现的数字钟和其他方法实现的数字钟。 二、实验内容与要求 使用微机实验平台实现数字钟。 1.基本要求如下: 24小时制时间显示。 可以随时进行时间校对。 整点报时。 闹钟功能,要求设置起闹时间时,不影响时钟的正常走时。 2.提高要求 校时时相应位闪烁。 能够设置多个起闹点。 三、实验报告要求 1.设计目的和内容 2.总体设计 3.硬件设计:原理图(接线图)及简要说明 4.软件设计框图及程序清单 5.设计结果和体会(包括遇到的问题及解决的方法) 四、系统总体设计 根据设计要求,初步思路如下: 计时单元由定时/计数器8253的通道0来实现。定时采用硬件计数和软件技术相结合的方式,即通过8253产生一定的定时时间,然后再利用软件进行计数,从而实现24小时制定时。8253定时时间到了之后产生中断信号,8253在中断服务程序中实现时、分、秒的累加。 时间显示采用实验平台上的6个LED数码管分别显示时、分、秒,采用动态扫描方式实现。 校时和闹铃定时通过键盘电路和单脉冲产生单元来输入。按键包括校时键、闹钟定时键、加1键和减1键等。 报警声响用蜂鸣器产生,将蜂鸣器接到8255的一个端口,通过输出电平的高低来控制蜂鸣器的发声。 系统硬件设计主要利用微机实验平台上的电路模块。硬件电路主要由键盘电路、单脉冲产生单元、8253定时计数器、8255并行接口单元、8259中断控制器、LED显示电路和蜂鸣器电路等等。系统的硬件电路设计框图如图1所示。 图1 硬件电路框图 五、硬件设计 根据设计思路,硬件电路可通过实验平台上的一些功能模块电路组成,由于实验平台上的各个功能模块已经设计好,用户在使用时只要设计模块间电路的连接,因此,硬件电路的设计及实现相对简单。完整系统的硬件连接如图2所示。硬件电路由定时模块、按键模块、数码管显示模块和蜂鸣器模块组成。 各个模块的详细说明: 1.定时模块 定时模块主要是实现硬件定时1s,由8253的计数器0来实现。Clk0接实验平台分频电路输出Q6,f=46875hz。GATE0接8255的PA0,由8255的PA0输出来控制计数器的起停。OUT0接8259的IRQ2,定时完成请求中断,进入中断服务程序。软件在中断服务程序中实现时分秒的累加。 2.LED数码管模块 实验平台上提供一组六个LED数码管。插孔CS1用于数码管段选的输出选通,插孔CS2用于数码管位选信号的输出选通。本设计用6个数码管来动态显示时分秒,动态显示的定时时间由软件延时。 3.按键模块 按键模块包括有2个单脉冲发生单元的按键,3个键盘模块的按键。2个单脉冲发生单元的按键K1,K2分别为校时键和闹钟定时键,采用中断方式。3个键盘按键A键,B键和C键分别为加1键,减1键和切换键。具体的功能定义如下表。键盘电路和8255的连接见图3所示。 按键 键名 功能说明 K1 校时键 进入校时状态 K2 闹钟定时键 进入闹钟定时状态 A键 加1键 校分或校时的时候使其加1递增 B键 减1键 校分或校时的时候使其减1递减 C键 切换键 校分后切换到校时 校时后切换到时钟状态 闹钟设定分值后切换到设定时值 闹钟设定时值后切换到时钟状态 图3 键盘电路和8255的连接图 4.蜂鸣器模块 蜂鸣器模块由蜂鸣器驱动电路和8255组成。选择一只压电式蜂鸣器,压电式蜂鸣器工作时约需要100mA驱动电流。蜂鸣器电路如图4所示。当8255的PB0口输出为高电平时,蜂鸣器产生蜂鸣音,8255输出为低电平时,蜂鸣器不发声。 图4 蜂鸣器电路 六、软件设计 1. 软件设计思路 根据系统的功能,可以将程序分为5个功能模块,包括LED数码管扫描模块、时间计时模块、校时模块、闹钟定时模块和键盘扫描模块。 LED数码管扫描模块 在采用动态扫描方式时,要使得LED显示得比较均匀,又有足够的亮度,需要设置适当的扫描频率。当扫描频率在70Hz左右时,能够产生足够的图形和比较好的效果。在每一位LED显示后调用一个延时程序。 采用实验平台时,插孔CS1用于数码管段选的输出选通,插孔CS2用于数码管位选信号的输出选通。在编程时,只需要先输出数据选通相应的位,再输出显示数据。显示数据输出前要将数据转换为显示代码。 时间计时模块 计时是采用硬件计时和软件计时相结合的方法。硬件定时100ms,产生中断。8253定时的时间是100ms,clk0的输入时钟f=46875hz,所以计数初值为124FH。分别用Hour、Min、Sec来存储时分秒值。在中断服务程序中,计数到1秒的时间时,Sec加1。当Sec加到60的时候进一,Min值加1。当Min等于60时,H

文档评论(0)

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

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

版权声明书
用户编号:5212202040000002

1亿VIP精品文档

相关文档