以AT89S51单片机为核心的数字电子钟控制器.doc

以AT89S51单片机为核心的数字电子钟控制器.doc

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
以AT89S51单片机为核心的数字电子钟控制器

一、设计题目: 设计一个以AT89S51单片机为核心的数字电子钟控制器,实现电子钟的时间、日期交替显示、闹钟功能,并可通过按钮开关或键盘切换显示内容、调整参数、设置闹钟,在单片机实验板上模拟调试实现控制器的功能。 二、设计目的: 通过单片机应用产品的设计与调试过程,巩固课程所学理论知识,初步了解单片机应用系统设计与调试的方法。 三、设计要求: 1.开机自检,检查相关接口及数码管显示器、指示灯、蜂鸣器等外设是否正常。 2.8位数码管显示器平常以一定的时间间隔、合适的格式显示时间和日期信息,时间显示时、分、秒;日期显示年(2000~2099)、月、日;设置闹钟功能时显示时、分、开/关状态。 3.可通过按键设定时间、日期、闹钟等参数、手动切换显示。按键可用独立式按键或行列式键盘实现。设定参数过程有合适的方式指示当前可修改的内容。 4.对开关量输入进行软件消抖动处理,参数的设定有容错处理,如:小时不能超过23,日期中每月最大天数、闰年等。 5.用Protel设计可实现上述功能的控制器的原理图(最小应用系统)。 四、总体方案设计及说明: 本设计电子时钟系统,主控芯片采用AT89S51芯片。配合软件延时实现时、分、秒的计时。本系统设计采用此种软件控制方法来实现计时,通过定时器定时中断,使时间缓存单元数据加一,提供系统时间。同时可以通过独立键盘对电子时钟开始计时,暂停计时和结束计时的控制。单片机内的数据通过并行I/O接口输入输出。并驱动八位LED数码管(时、分、秒分别用2位数码管显示),动态显示数据。晶振及复位电路为单片机提供工作脉冲及复位信号。 五、系统资源分配说明: 接口电路逻辑图: 使用定时计数器0,TMOD设置为0x01;晶振频率11.0592MHz下,定时50ms的计数初值经过计算为4c00H(2^16-46080=4c00H),TH0设置为0x4c,TL0设置为0x00。 五、软件流程图及说明: 1.闹钟显示 闹钟显示子程序,8个数码管显示已经设置好的闹钟时间,进行按键扫描,判断有没有按键,若有就去执行相应的功能,日期显示子程序和时间显示子程序和闹钟显示子程序类似。 2.键盘子程序 按键扫描: 功能扫描: 3.中断子程序 六、系统功能与操作说明: 数字时钟能显示实时时间(HH-MM-SS)、日期(20YY.MM.DD)于LED数码管,并可以修改时间、日期。可以设置闹钟,时间到时,蜂鸣器会响起。按切换键可以在时间、日期、闹钟时间中切换。时间、日期、闹钟时间可调,按外部中断键时间暂停,进入时间、日期、闹钟时间设置,此时可以矩阵键盘输入时间日期,输入完后确认键时间按照设置的值接着走。 键盘用行列式键盘,按键定义如下图所示。主要的按键有: (1)数字键“0”~“9”,用于设置时输入时间和日期,正常工作时无效。 (2)“时间设置”、“日期设置”、“闹钟设置”,用于进入相应功能的设置状态。 (3)“闹钟开关”在闹钟设置状态时,用于设置闹钟开或关,正常工作时,用于手动关闹铃的声音。 (4)“确认”用于设置参数的确认,并检查参数是否合理,如果符合要求,则参数有效;否则本次修改无效,保持原值。正常工作情况下按该键无操作。 (5)“显示切换”用于正常工作时手动切换时间、日期的显示。 七、调试记录: 1、确定课程设计课题为数字电子钟,并查找相关资料。 2、熟悉实验板数码管、两个8255、键盘、LED等硬件资源的使用,弄清楚其对应的地址。 3、调试出可以扫描矩阵键盘输入的数的程序,并在数码管上显示出来当前按下的键值。 4、调试出可以显示时分秒和日期的时钟程序,并可以通过4个按键进行控制(分别为进入\退出时间设置、时增1、分增1、秒增1),并可以切换时间和日期。 5、调试闹钟的显示和设置程序,时间到了所设置的时间时蜂鸣器响起。 6、时间可以走,但只能通过在程序中给对应时间日期字节地址预先设置初始值,时钟根据该初始时间接着走,不能通过矩阵键盘输入时间日期。最后查阅资料并询问同学终于解决了这个问题。 7、对整个程序做进一步优化处理,使其更稳定,修改其中的一些瑕疵,加上注释,方便以后读程序。 八、实验设计总结: 通过努力终于设计出一个以AT89S51单片机为核心的数字电子钟控制器,实现电子钟的时间、日期交替显示、闹钟功能,并可通过按钮开关或键盘切换显示内容、调整参数、设置闹钟。 这次实验我收获了许多,得到了许多书本上学不到的知识。 1、单片机的软件设计通常要考虑以下几个方面的问题: (1)根据软件功能要求,将系统软件划分为若干个相对独立的部分,设计出合理的总体结构,使软件开发清晰、简洁和流程合理; (2)培养良好的编程风格,如考虑结构化程序设计、实行模块化、子程序化。既便于调试、链接

文档评论(0)

2017meng + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档