单片机设计--数字钟(曾旻枢)解析.docxVIP

  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文档。上传文档
查看更多
实验课程:单片机课程设计 专业班级:2013级电信3班 学号: 130101031106 姓名: 徐砚林 指导教师: 卢钢 同组设计者: 曾旻枢 2015年12月29日 电子数字钟 一、设计功能要求 要求利用实验箱上的数码管模拟电子数字钟。显示时、分、秒,并且随时间跳变。在整点时,启动蜂鸣器。 设计要求: (1) 系统硬件设计:利用单片机实验板完成设计要求; (2) 系统软件设计:完成控制软件的编写与调试; (3) 功能要求: 1) 6位数码管显示小时、分钟,秒(例如:15:35:45); 2) 具有整点提示功能(例如蜂鸣器鸣响半分钟),具有整点报时功能(例如十点响十声); 二、设计方案 1、原理依据 电子钟是一种用数字电路技术实现时,分,秒计时的装置,具有整点报时等功能。 本设计主要采用C51单片机作为主控核心,动态数码管作为显示屏显示,蜂鸣器作为整点报时,独立按键K1作为消除闹铃。 数码管 共阳极数码管的8个发光二极管的阳极连接在一起接高电平,其它管脚接各段驱动电路输出端。当某段的输出端为低电平时,则该段所连接的发光二极管导通并点亮,根据发光字段的不同组合可显示出各种数字或字符。 共阴极数码管的8个发光二极管的阴极连接在一起接低电平,其它管脚接各段驱动电路输出端。当某段的输出端为高电平时,则该段所连接的发光二极管导通并点亮,根据发光字段的不同组合可显示出各种数字或字符。因此我们在显示数字的时候首先做的就是给“0-9”十个数字编码,在要它亮什么数字的时候直接把这个编码送到它的阳极就行了。 2、方案设计 (1)、硬件方案 八位动态数码管、蜂鸣器和独立按键: 硬件说明:八位动态数码管为共阴极数码,J16为位选码接口排线,J12为字形码接口排线,字形码经锁存器接到数码管,锁存器LE端经J21短路帽接VCC时,输入数据直通至输出端,当LE端经J21短路帽接JP10时,其输入数据经JP10控制将其锁存至输出端。 连接方法:(1)JP18和J16用8PIN排线连接起来。 (2)JP10和J12用8PIN排线连接起来。 (3)J21 短路帽使LE接VCC,短路帽JP165 断开。 利用P2.0作为独立键盘输入口,独立键盘选K1;P2^1控制蜂鸣器,蜂鸣器JP9接线排的第6引脚与JP15接线排座的一引脚(独立按键K1)用杜邦线连接,使用独立按键K1。 连接方法: JP11和JP1和LED灯的JP1用8PIN排线连接起来。 硬件说明:使用单片机的P2口来驱动8个LED,发光二极管的阳极接高电平,故P2口为低电平时,就可以驱动其点亮 (2)软件方案 利用内部中断T0完成时间计数,时间调整,定时时间为125ms,当时间到达125ms*8,即1S时,秒计数器缓冲器增加1,达到1小时时,则时计数器缓冲器增加1,同时蜂鸣器响,并将时分秒分别放入动态数码管。当分计数器缓冲器和时计数器缓冲器分别到达60min、24h时,对它们清零。 (3)同组设计人员及分工 曾旻枢:编写设计方案以及主程序、中断设置、时间显示及累计处理部分代码,进行试验结果分析 徐砚林:查阅参考文献,汇总整理所得资料,编写延时、时间调整与设置、整点报时功能部分代码 三、系统代码实现 #includereg51.h sbit ksec=P3^0; //设置秒 sbit kmin=P3^1; //设置分 sbit khour=P3^2; //设置小时 sbit fmq=P3^3; sbit key=P3^4; unsigned char secshi=0,secge=0,minshi=0,minge=0,hourshi=0,hourge=0; unsigned int num=0,sec=0,min=0,hour=0; unsigned char code table[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; void delay(unsigned int); void display(); void Adjust_clock(); void Clock(); //----------------------------------------------------------------- // 主程序 //---------------------------

文档评论(0)

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

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

1亿VIP精品文档

相关文档