基于51单片机的时分秒显示_第1页
基于51单片机的时分秒显示_第2页
基于51单片机的时分秒显示_第3页
基于51单片机的时分秒显示_第4页
基于51单片机的时分秒显示_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、福建农林大学金山学院电镩程铽针報告设计题目基于51单片机的时分秒显示专业年级12电子科学与技术姓名学 号126711029成绩2015年5月1日目录mra1§1设计要求1§2总体设计过程12.1使用的仪器与器材12.1.1电路系统框图22.1.2系统硬件概述22.2电路图(外设部分)22. 2. 1 74ls138 译码器22.2.2 74ls138译码器工作方式42.3数码管的结构与工作原理5§3 工作原理5§4原理图和pcb图6§5仿真实验7§6电路板制作8§7感想与体会8§8完成效果图9§9 #考文

2、献;10§9附录11万年历设计前言电子万年历是一种日常计吋工具,它可以对年、月、日、星期、吋、分、秒 进行计时,还具有闰年补偿等多种功能。数字电子万年历釆用直观的数字显示, 可以同时显示年、月、闩、星期、时、分、秒,还具有时间校准等功能。本设计要实现硬件与软件两方而的同步设计。硬件部分主要由at89c51单片 机、74ls138芯片和数码管组成。at89c51单片机适合于许多较为复杂控制应用 场合,74ls138芯片实现端口扩展和数码管实现显示。软件方面主要包括吋间调 整程序和显示程序。设计中直接采用单片机的定时计数器来提供秒信号,从而实 现时、分、秒计数。程序采用c语言或者汇编语言

3、编写,所有程序编写完成后, 首先在keil uvision3软件中进行调拭,然后在poteus软件中仿真成功,最后 通过stc_isp_v4. 80下载到单片机内进行检验,从而完成此次电子万年历的设一、要求1、设计任务以at89c51单片机控制的时钟,在数码管上显示当前的时间。2、设计要求2.1使用数码管显示当前吋间,显示格式为“吋吋一分分一秒秒”,并且误 差需要在一定范围之内。2. 2在proteus软件中仿真成功。2.3下载到单片机内现场检验。2. 4熟悉手工制版的过程二、总体设计过程1. 使用的仪器与器材51开发板1个,4位八段共阴数码2个,74ls138芯片一个,导线(1梱), 排针等

4、。2. 1. 1电路系统框4位八段数码管at89c52> 主控制模复位电路模块晶振模块块2.1.2系统硬件概述木电路是由at89c51单片机为控制核心,具有在线编程功能,低功耗,能在 3v超低压工作。设计中直接采用单片机的定时计数器作为秒信号,从而实现对 时、分、秒的计时,74ls138芯片扩展51芯片的端口,使得释放出更多的空闲 端门和八位数码管完成显示功能。2. 2电路图(外设部分)2. 2. 1 74ls138 译码器kc16 15 14 13 12 11 10 9 74ls138丨 2 3 $ 5 6 7 8a a2gnd图1 74ls138管脚图74ls138为3线一8线译码器

5、,共有54/74s138和54/74ls138两种线路 结构型式,其工作原理如下:当一个选通端(s1)为高电平,另两个选通端(/s2) 和/s3)为低电平时,可将地址端(a0、al、a 2)的二进制编码在一个对应 的输出端以低电平译出。74ls138译码器的接线输入输出aar。i i;0xxxx11111111x1xxx11111111100000111111110001101111111001011011111100111110111110100111101111010111111011101101111110110111111111102.2.2 74ls138译码器工作方式巧i:巧i;c

6、16 15 14 13 12 11 10 9 74ls138 + g f p pao ax a2 s, s2 s, v7 gnd(74ls138为3线一8线译码器)真值表输入输出使能选择sig20y74a4324x1xxx111111110xxxx11111111l00001111111010001111111011001011111011100111111011110100111011111010111011111101101011111110111011111111. 当sl = l、至2+&=0时,译码器处于工作状态;当sl=至2+艮=1时, 译码器处于禁止状态。2. ?)2、j

7、i、jo为二进制译码输入端,r7 -y0为译码输出端(低电平冇效)。y o = a, y i = a2 a, y% y 2 = a2 a, 2% y 3 = a2 . a, 2%y 4 = a2 a, 2% y 5 = a2 a, /% y 6 = a2 a( 2% y 7 = a2 a, /%ao,a1,a2来控制yo到y7之间哪个引脚提供(高)电平来控制显示哪一个位数2.3数码管的结构与工作原理a1 a f a2 a3 b厂1厂1厂|厂|rrnnneddpcga4我们选用的是4位8段共阴数码管。a1到a4给予(低)电平控制需要显示的位 数a, b, c, d, e, f, g,给予(高)电

8、平控制单个位数现实的数字dp给予(高)电平 控制小数点的显示三、电路的工作原理直接将数码管的8个段选接出,直接由单片机控制,位选由译码器控制原理图和pcb4.1原理原理图4. 2 pcb 图:pcb图五、仿真实验rp19 55-«»r»2 2a,: p2 3a115a131b3< abcocfc dp關六、电路板的制作61打印电路板。将绘制好的电路板用转印纸打印出来滑的一面面向自己,打印两张电路板, 即一张纸上打印两张电路板。在其中选择打印效果最好的制作线路板。6. 2裁剪覆铜板。将覆铜板裁成电路板的大小,不要过大,以节约材料。6. 3预处理覆铜板。用细砂纸

9、把覆铜板表面的氧化层打磨掉,以保证在转印电路板时,热转印纸 上的碳粉能牢闹的印在覆铜板上,打磨好的标准是板面光亮,没有明显污溃。6. 4转印电路板把印有电路板的一面贴在覆铜板上,对齐好后把覆铜板放入热转印机,放入 时保证转印纸没有错位。一般来说经过6-7次转印,热转印机事先就已经预热, 温度设定在160-200摄氏度。6.5腐蚀线路板检查一下电路板是否转印完整,若有少数没有转印好的地方可以用黑色油性 笔修补。然后拿一个脸盆,在脸盆中放入适当的三氯化铁粉末,用开水化开三氯 化铁液体。把覆铜放入溶液屮腐蚀。等线路板上暴露的铜膜完全被腐蚀掉时,将 线路板从腐蚀液中取出清洗干浄。用砂纸清理覆铜表面碳粉

10、或黑色汕性笔笔迹。 6.6线路板钻孔选择合适的钻针,按稳线路板,用便携式台钻对线路板进行钻孔。在使用钻 机钻孔吋,钻机速度不能开的过慢。七、感想与体会通过对这款基于89c51的万年历及温度显示器的设计,让我更加了解了单片机89c51、时钟芯片74ls138、数码管的原理及使用,更加深刻体会到单片机的 祌奇。单片机的裨能化控制,在我们生活周围无处不在,使我们的生活更加智能 化、便捷化。在设计过程中,我查阅了很多的相关资料,对89c51有了更加深刻的认识, 同时对于更加深入的研究单片机有了更强的兴趣。这款基于89c51的万年历,虽然其功能相对而言,可能很简单,但能解决人 们现实生活屮的实际问题。在

11、设计过程中,软件设计相对而言,更加的复杂与困 难,锻炼了我的逻辑思维能力。通过查阅资料,培养了我的自学能力,并且引导一种创新思维,把学到的知 识应用到r常生活当中。在设计的过程中,我不断的学习、思考,和同学间的相 互讨论,运用科学的分析问题的方法解决遇到的困难。通过此设计,我掌握了单 片机系统一般的开发流程,学会对常见问题的处理方法,积累了一定的设计系统 经,充分使教学与实践相结合,提高个人系统开发的综合能力,开拓了思维,为 今后能在相应工作岗位上的工作打下了坚实的基础。八、完成效果图九、参考文献1 .谢嘉奎主编电子线路非线性部分(第四版)高等教育fli版社2000年5月第4 版2 .张肃文陆

12、兆熊编高频电子线路(第三版)高等教育出版社3 单片机原理及应用张毅刚彭善元编著高等教育出版社4 ds18b20及高精度温度测量的实现j贾振国电子工业出版社5 朱承高.电工及电子技术手册m.北京:高等教育出版社,19906 阎石.数字电子技术基础(第三版)m.北京:高等教育出版社,1989附录* project for 80c51 八段管点亮* made by chen_c本*本*氺氺*木*木木*本*氺*氺*氺* /本氺本氺木木本氺木木氺木氺本木本氺氺木氺木氺木氺本氺本木本氺本氺本氺木木氺本氺本氺*这次的八段管程序设计以“c”语言语法作为根基,引入了 c+的面向性设计思想,把需要的变量,与函数指

13、针作为成员 非指针变量作为成员,函数指针通过初始化指向特定函数,作为结构体的方法 八段管的设计,需要时分秒三个变量,由于80c51的驱动能力有限,又加上我们做的是外设,所以我引入了其余六个变量防止出现重影氺氺木木氺木木木氺木氺木氺本氺木木氺木木氺氺木木木氺木氺氺氺氺氺木氺氺木氺氺氺木氺氺木氺氺木氺氺木氺氺氺木氺/#include <reg51.h>/*宏定义:把openjjght作为10门p2的使用方法*/#define openjjght p2"吧light作为p0的使用的接口 7#define light po#define ught_two pl/ *声明一个结构体

14、* /struct time_show int a, b, c, d, e, f; int shi; int fen; int miao;void (*init_struct)(struct time_show(*this); void (*decide_change)(struct time_show(*this); void (*change_value)(struct time_show(*this);void init_struct(struct time_show(*this);void show_time(struct time_show(*this);void decide_ch

15、ange(struct time_show(*this);void change_value(struct time_show(*this);void delay(void);void init(void);/*138译码器选择亮哪个灯*/char xuan = oxff, oxfb, 0xf7, oxf3, oxef, oxeb, 0xe7, 0xe3;/*八段管选择亮的是哪个数字*/char ught_show = 0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f;/*和上而相比多一个小数点*/char light_poi

16、nt_show = oxbf, 0x86, oxdb, oxcf, 0xe6, oxed, oxfd, 0x87, oxff, oxef;/定义一个结构体struct time show new one;int shi = 23;int fen = 59;int miao = 50;int i = 0; /*用来计数,一秒钟回0*/ int main(void)/*中断初始化v init();/给结构体赋值new one.init struct = init struct; new_one.decide_change = decide_change; new_one.change_value

17、= changevalue;/木*本木本*木*木木*木本*本*本*木*木木木本*本*本*本*木木本/*初始化结构体=7new_one.init_struct(&new_one);new_one.change_value(&new_one);/*循环语句每次都显示时间*/while(l)show_time(&new_one);/*如果到大一分钟就清0然后改变结构体a部的伉 7if(i >= 100) i = 0;new_one.change_value(&new_one);new_one.decide_change(&new_one);return

18、0;/中断程序代码/晶振的周期是12tvoid exter(void) interrupt 1 tho = (65535 - 10000)/256; tlo = (65535 - 10000)%256;i+;/*延时函数*/void delay()intf = 100;while(f-);/改变给赋值的io 口赋值的数据void change_value(struct time_show(*this)this->a = this->fen / 10; this->b = this->fen % 10; this->c = this->miao /10; th

19、is->d = this->miao % 10; this->e = this->shi / 10; this->f = this->shi % 10; this->miao+;/当时分秒达到极限的时候改变void decide_change(struct time_show(*this) if(this->miao >= 60) this->miao = 0; this->fen+;if(this->fen >= 60) this->shi+; this->fen = 0;if(this->shi = 24) this->shi = 0;/给结构体内部的时分秒成员赋值void init_struct(struct time_show(*this)this->shi = shi; this->fen = fen; this->miao = miao;广给端口赋值,亮灯*/void show_time(struct time_show(*this) open_light = xuan0;light = light_showthis->e; light_two = lig

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论