毕业论文:基于51单片机的电子时钟设计44.docVIP

毕业论文:基于51单片机的电子时钟设计44.doc

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《单片机原理及应用》 课程设计报告 专 业: 班 级: 姓 名: 指导教师: 二0一* 年 ** 月 ** 日 课程设计任务书 一、设计题目LED数字显示电子时钟 二、设计要求 1、方案论证,确定总体电路原理图。 2、元器件选择3、安装调试 三、设计报告内容 1、给出完整的电路原理图、对进行全面分析。、 4、 *5、进一步完善的设想。 目 录 一.课程设计目的 - 1 - 二.课程设计题目描述和要求 - 1 - 三.课程设计报告内容 - 1 - 3.1、设计思路 - 1 - 3.2、方案设计与论证 - 2 - 3.2.1数码管显示选择方案 - 2 - 3.2.2数码管驱动选择方案 - 3 - 3.3、 设计原理、程序及流程图 - 3 - 3.3.1流程图 - 3 - 3.3.2电路原理图 - 4 - 3.3.3 C语言程序及说明 - 4 - 3.4、protues仿真图,及作品成型图 - 12 - 3.4.1 protues 仿真图 - 12 - 3.4.2实践电路板照片 - 13 - 3.5安装与调试结果 - 14 - 3.5.1电路安装 - 14 - 3.5.2电路调试 - 15 - 3.5.3 软件调试 - 15 - 3.5.4 性能测试 - 15 - 四.总结 - 15 - 参考书目 - 16 - LED数字显示电子时钟 一.课程设计目的: 1、 2、 图1 系统整体框图 整个系统用单片机作为中央控制器,由单片机执行采集芯片内部时钟信号,时钟信号通过单片机I/O口传给单片机,单片机模块控制驱动模块驱动显示模块,通过显示模块来实现信号的输出、LED的显示及相关的控制功能。系统设有按键模块用于对时间进行调整及扩展多个小键盘。 3.2.1数码管显示选择方案 方案一:静态显示。静态显示,即当显示器显示某一字符时,相应的发光二极管恒定导通或截止。该方式每一位都需要一个8 位输出口控制。静态显示时较小电流能获得较高的亮度,且字符不闪烁。但因当所需显示的位数较多时,静态显示所需的I/O口数较大,造成资源的浪费。 方案二:动态显示。动态显示,即各位数码管轮流点亮,对于显示器各位数码管,每隔一段延时时间循环点亮一次。利用人的视觉暂留功能可以看到整个显示,但须保证扫描速度足够快,人的视觉暂留功能才可察觉不到字符闪烁。显示器的亮度与导通电流、点亮时间及间隔时间的比例有关。调整参数可以实现较高稳定度的显示。动态显示节省了I/O口,降低了能耗。 从节省单片机芯片I/O口和降低能耗角度出发,本数字电子钟数码管显示选择设计采用方案二。 3.2.2数码管驱动选择方案 方案一:上拉电阻驱动方式。数码管段码与接有上拉电阻的单片机芯片I/O口相连,通过编程,单片机芯片即控制段码电平的高低。该方式经费低,但实物制作较复杂。 方案二:7407芯片驱动方式。数码管段码与7407芯片B口相连,7407芯片A口与单片机芯片I/O口,通过编程,单片机芯片即可控制段码电平的高低。该方式实物制作简单,增强驱动数码管段码能力。 从实物制作简易程度与驱动数码管段码能力角度出发,本数字电子钟数码管驱动选择设计采用方案二。 3.3、 设计原理、程序及流程图: 3.3.1流程图 3.3.2电路原理图 3.3.3 C语言程序及说明 #include<reg51.h> #define uchar unsigned char #define uint unsigned int uchar count=0,num=0,temp=0,cmd=0; sbit LED=P1^0; sbit H=P3^2; sbit M=P3^3; uchar tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; uchar sec=11,min=11,hour=11,a=0,b=0,c=0; //定义时钟的时 分 秒 以及秒表的 分 秒 10ms; void delay(uint i) //延时 2i ms; { uint j; for(;i>0;i--) for(j=124;j>0;j--); } void init() //中断初始化 { ET0=1; TMOD=0x51; TH0=(65536-25000)/256; TL0=(65536-25000)%256; ET1=1; TH

文档评论(0)

精品天地 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档