基于单片机的数字时钟设计说明书.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文档。上传文档
查看更多
word格式整理版 文档可编辑 郑州航空工业管理学院 单片机课程设计 2011 届 电子信息工程 专业 班级 题 目 基于单片机的数字时钟设计 学 号 姓 名 指导教师 王 丹 二О一 三 年十二月二十八日 电子时钟的基本原理 该课程设计为数字时钟的设计,以STC89C52为核心,配合数码管显示器和按键提供长期、连续、可靠、稳定的工作环境。该数字电子钟有时分秒显示和日期显示以及时间和日期调整的功能。系统软件设计编程主要实现参数设置,实现键盘、数码管显示器等各模块的功能。 设计要求:1、单片机内部的定时器实现时钟功能;2、显示小时、分钟、秒钟;3、后初始时间为12-00-00;4、设定时分秒。 单片机的接口信号是数字信号。MAX232是一种把电脑的串行口RS-232信号电平(-10 ,+10v)转换为单片机所用到的TTL信号点平(0 ,+5)的芯片。系统硬件设计框图如图2-1所示。 图2-1 系统硬件设计框图 电子时钟的硬件设计 根据要求,利用DXP2004画出数字时钟的原理图如下所示: 图1 电子时钟原理图 数字时钟是一个将“时”、“分”、“秒”显示的计时装置。它的计时周期为24小时,显示满刻度为23时59分59秒,另外还有校时功能。因此,一个基本的数字钟电路主要由显示器“时”,“分”,“秒”和单片机,还有校时电路组成。8个数码管的段选接到单片机的P0口,位选接到单片机的P2口。显示电路通过三极管驱动,将“时”、“分”、“秒”通过七段显示器显示出来。 按键KEY1至KEY6由矩阵电路构成,按KEY1键秒加一,按KEY2键秒减一,按KEY3键分加一,按KEY4键分减一,按KEY5键时加一,按KEY6键时减一。通过手动复位键进行复位,手动复位后的初始时间为12-00-00。 表1元件清单表 电子时钟的软件设计 程序流程图如下: 开始 开始 N N 24小时到? 分清零,时加1 N N N Y Y 时单元清零 时间显示 中断返回 一秒时间到? 60秒时间到? 60分钟到? 秒单元加1 秒清零,分加1 Y Y 开始 开始 N N Y N Y N Y 时加减1 显示时间 结束 秒按键按下? 秒加减1 分按键按下? 分加减1 时按键按下? 源程序如下: #include reg52.h #define uchar unsigned char #define uint unsigned int uchar num=0 ,SEC=0,MIN=0,HOUR=12,key; uchar code tab[]={0xC0,0xF9,0xA4,0xB0,0x99, 0x92,0x82,0xF8,0x80,0x90,0xbf}; void delayms(uint z) { uint x,y; for (x = z; x0; x--) for(y=110; y0; y-- ); } /********************************* 函数名:keyscan() 功能描述:矩阵键盘扫描 *********************************/ void keyscan() //矩阵键盘扫描函数 { uchar x,y; P3=0xf0; if (P3!=0xf0) { delayms(10); if (P3!=0xf0) { switch (key) { case 0x7e: key=1;SEC++; break; case 0x7d: key=2;if(SEC0)SEC--; break; case 0x7b: key=3;MIN++; break; case 0x77: key=4;if(MIN0)MIN--; break; case 0xbe: key=5;HOUR++; break; case 0xbd: key=6;if(HOUR0)HOUR--; break; default: key=100; break; } } } } void display(void) { ucha

文档评论(0)

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

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

1亿VIP精品文档

相关文档