网站大量收购独家精品文档,联系QQ:2885784924

基于STC89C52的电子时钟设计.doc

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE 1 PAGE 1 湖州师范学院课程设计 总结报告 课程名称 系统设计与实践 设计题目 基于STC89C52的电子时钟设计 专 业 电子科学与技术 班 级 姓 名 学 号 指导教师 报告成绩 二〇一二年十一月十四日 《基于STC89C52的电子时钟设计》 课程设计总结报告 一、系统总体方案 (1)时钟显示功能:时、分,采用数码管显示。 (2)手动校时功能:对时、分,能手动调整进行时间校准。 (3)整点报时功能:整点时,有提示音。 (4)秒表功能:按键按下开始(停止),有清零功能。 (5)闹钟功能:能设置提醒时间,到了提醒时间系统发出提示音。 二、硬件系统分析与设计 Protel原理图及其原理说明 图(a):8052芯片 图(a)为主控模块STC12C5A60S2单片机 图(b):按键电路 图b按键电路功能实现: P2.0引脚对应的按键为“功能键”,按键次数决定时钟小时、分钟的调整及闹钟小时、分钟的调整;P2.1引脚对应的按键为“确定键”;P2.2引脚对应的按键为“加键”;P2.3引脚对应的按键为“减键”;P2.4引脚接地。 图(c):MOS管PNP实现对数码管的片选功能 图(c) 为MOS管(PNP)实现对LED数码管的片选功能: 引脚P1.4、P1.5、P1.6、P1.7分别通过一个安全电阻与MOS管相连,通过对单片机引脚P1.4、P1.5、P1.6、P1.7接高低电平(接低电平时选通),实现对4个LED数码管(PNP)的片选功能。 图(d):LED数码管 图(d)数码管功能实现: 本系统时钟数值显示采用动态数码管显示,即4个是数码管依次显示不同的数值,然后重复上述动作通过调试设计者。本系统使用4个共阳极数码管,并且后2个是倒着装的。因此在时钟程序显示时,可以定义2个不同的数码显示数组,一个专门为前2位数码管设置,另一组专门为后2位数码管设置。这样可以形象的显示出时间的跳动。 图(e):蜂鸣器电路 图(e)为蜂鸣器电路: 开启蜂鸣器电路(接单片机引脚INT0),当INT0断为低电平时蜂鸣器产生蜂鸣声。 图(f):时钟电路 图(f)为时钟电路(接单片机引脚X1、X2): 单片机提供精确定时的内置电路,由晶振产生像时钟一样准确的振荡电路,主要用于计时、通讯时钟发生器、时间中断源、键盘去抖等等,电容用来滤波用,防止杂波干扰晶振的正常工作。 图(g):按键复位电路 图(g)为按键复位电路(接单片机RST引脚): 实际上就是提供一个符合单片机要求的脉冲宽度和电平范围的复位信号,以使单片机回到初始状态重新开始,在有些电路中也同时将外围电路复位,即外接复位电路一接通,内部所有数据从0000位置开始运行,所有数据归位。对于复位电路中的电容,是为了维持复位信号说要的高电平或者低电平时间而用的,一般由所用的单片机复位信号所要求的时间而定,而电容的充放电时间也要取决于电容本身,不同的电容一般不同。 三、软件系统分析与设计 #include AT89X51.h #include intrins.h #define uchar unsigned char #define uint unsigned int #define shijian 30 #define sj 70 #define si 30 sbit key_1=P3^0; sbit key_2=P3^1; sbit key_3=P3^2; sbit key_4=P3^3; sbit SPK =P1^2; sbit DQ =P1^3; unsigned char table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77}; uchar tab[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef}; uchar a,b,c,d,e,f,a0,b0,c0,d0,e0,f0,a1,b1,c1,d1; uchar sec,mins,hour,watch_sec,watch_msec,alarm_sec,alarm_mins=12,alarm_hour=12; uchar choose,function,times,

文档评论(0)

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

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

1亿VIP精品文档

相关文档