《基于单片机LED点阵显示电子时钟设计(共31页).doc》由会员分享,可在线阅读,更多相关《基于单片机LED点阵显示电子时钟设计(共31页).doc(31页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上 20152016学年 第一学期单片机原理及应用课 程 设 计 报 告题 目: 基于单片机LED点阵显示电子时钟设计 班 级: 13级电子信息 姓 名: 指导教师: 电气工程学院2015年11月单片机原理及应用任务书课题名称基于单片机LED点阵显示电子时钟设计指导教师 陶沙 执行时间20152016学年第一学期 第 13 周学生姓名学号承担任务评分论文撰写及调试仿真硬件电路绘制及程序编写Keil与ISIS.的联调仿真实验结果的验证系统方案设计查询文献与答辩硬件模块电路分析主要程序分析设计要求1、 设计一个LED点阵显示电子时钟电路2、 时钟显示的初始时间为12:00。
2、3、时钟和分钟可以通过相应的按键以步进值为1进行变化。摘 要 LED显示屏作为信息传播的一种重要手段,已经成为城市信息现代化建设的标志,LED显示屏随着社会经济的不断进步,以及LED制造技术的完善,人们对LED显示屏的认识将会越来越深入,其应用领域将会越来越广;LED显示屏经多年的开发、研制、生产,其技术目前已经成熟。现在各种广告牌不再是白底黑字了,也不再是单一的非电产品,而是用上了丰富多彩的LED电子产品,为城市增添了一道靓丽的风景。 本次课程设计是基于AT89C52单片机的LED点阵电子显示器的设计,采用的并行方式的显示方案来实现。该电子时钟由AT89C51,74LS373数码管等构成,采
3、用晶振电路作为驱动电路,由延时程序和循环程序产生的一秒定时,达到时分秒的计时。用keil软件生成.hex文件,用Proteus的ISIS软件实现了单片机LED点阵电子时钟系统的设计与仿真。关键词:单片机;LED点阵;电子显示器目 录 专心-专注-专业第1章 方案选择与论证1.1 设计任务与要求(1) 采用LED灯进行显示(2)可以根据按键来对时间进行调整(3)初始时间为12:00.1.2 总体设计方案 1.2.1 硬件部分的设计这次硬件电路部分用PROTEUS软件,该软件主要用来进行元器件的绘制和原理图的绘制,PROTEUS软件对绘制好的原理图进行仿真和调试。根据课程设计任务书的要求,经过思考
4、和筛选,选择并行方式显示,I/O口通过锁存芯片来扩展,以此来控制LED点阵40个列线,双缓冲寄存器由5片锁存器74LS373来组成,可以驱动LED点阵8组列线,并用3/8译码器74LS138对LED点阵的8行进行扫描。在送每一行的数据到LED点阵时,先把数据分别送到5个74LS373,然后再把数据一起输出到LED点阵列中,送出去的时间数据由AT89C51来控制。电子钟由显示电路、行驱动电路、列驱动电路、中央控制器AT89C52、按键电路和复位电路组成。 电 源 电 路 列驱动电路AT89C52控制器复位电路行驱动电路显示电路按键电路图1.2.1 系统框图a)显示模块的选择显示模块采用8*8的点
5、阵LED数码管,这种模块由64个发光LED芯片以8*8的形式构成一个正方形模块,然后用两列12针引脚将内部电路接口引出,供驱动电路使用。这种结构是市面上最通用,也是现在应用最为广泛采用的形式。b)时钟信号的选择秒信号由单片机提供,使用程序由时、分、秒计数。采用这种方案的优点在于,它可以有效减少电路的复杂程度,减少多余芯片的使用,节约成本。并可以减少时间误差,以达到设计要求。c)总体设计方案根据以上方案所述本次毕业设计采取的总体方案如下:用锁存芯片来扩展I/O口,控制LED点阵40个列线;5片锁存器74LS373组成双缓冲寄存器,驱动LED点阵8组列线;采用8*8的点阵LED数码管组成显示模块,
6、显示出运行调试结果;主控系统由AT89C51组成,通过它的串行输出动态扫描来实现时和分的显示。 1.2.2 软件部分设计将需要实现的功能用Keil软件写好程序,并对写入单片机的代码进行编译和调试。第2章 硬件电路的设计2.1 晶振电路设计晶振电路部分由两个值为30uf的电容C1、C2和一个6MHz的晶振X1串联组成。由它产生的振荡信号可以保证精度高而且稳定并且频率稳定在6MHz,次方波信号提供给单片机作为一个时钟信号,当定时器需要定时的时候使用。 图2-1 晶振电路部分2.2 复位电路设计复位电路由一个数值为10uf的电容和一个按键串联组成,电路中的复位设定为上电与按键均有效的模式,当电路上电
7、时,RST引脚获得一个高电频,随着C3电容不断的在运行过程中充电,所以导致RST引脚的高电频不断地下降。因为RST引脚上的高电频只能维持两个机器周期的时间,所以单片机就可以通过这个复位电路进行复位操作。在电路运行期间,当按下按键开关的瞬间,RST上的电频立即变为高电频,以此来实现电路复位 图2-2 复位电路部分2.3 时分调节电路设计由AT89C51的P3.2端口接入按键S1,P3.3端口接入按键S2,再将二者并联,分别接入74LS138的E2和E3端口,以此来实现按键调节时分的设计。当电路运行时,LED显示器初始值为12:00。每按一次S1按键,分针数字就会加1,当分针数字满60再次按下按键
8、S1,就会回归为0;每按下按键S2时,时针数字就会依次加1,当时针为12时再次按下按键S2,时针为就会显示为0。 图2-3 时分电路部分2.4 驱动电路设计驱动部分采用5个74LS373并行的方式,该芯片是常用的三态门8D锁存器。只有当同时满足以下两个条件时,D端的数据才会被锁存到锁存器的输出端,即有正脉冲输入到门控端G,有效的高电频输出控制OE。其它情况下,当G为低电频,输出Q保持不变;当OE为低电频,输出Q为高阻态。图2-4 驱动电路部分2.5 总原理图图2-5 总原理图第3章 系统软件设计3.1 软件流程图设计中,计时采用定时器T0中断完成,其余状态循环调用显示子程序,当端口开关按下时,
9、转入相应功能程序。当计时中断开始时,LED显示器开始接受信号,接受到一个信号时秒数增加1,当秒数累计加到60时,则分数为主动进1,分数位累计加到60时,时数位主动增加1。秒针、分针、时针只要有一位未接受到信号,那么系统就会自动结束。其程序执行流程见下图计时终端开始1s到? N Y 秒加1 1min?到 N Y 分加11h到? N Y 时加1 结束图3-1 程序执行流程图3.2 主要软件程序内容3.2.1 定时器工作程序 MOV SP,#60H MOV TMOD,#01H MOV TL0,#0e0H MOV TH0,#0b1H MOV IE,#87H MOV 30H,#01H ;/时十位 MOV
10、 31H,#02H ;/时个位 MOV 32H,#0AH ;/光标点位 MOV 33H,#00H ;/分十位 MOV 34H,#00H ;/分个位 MOV 35H,#00H ;/秒十位 MOV 36H,#00H ;/秒个位 SETB IT0/IT0变成1(IT0为外部中断0,1为下降沿触发,是按键功能) SETB IT1/同理 SETB PT0 SETB TR0/TR0为定时器开关,开定时器03.2.2 数字显示程序LOOP00: MOV A,3BH MOV DPTR,#TABE MOVC A,A+DPTR MOV P2,R4 MOV P0,A MOV P1,#0FEH INC 3BH INC
11、 R4 LCALL DELAY DJNZ R5,LOOP00 MOV A,31H ;显示要显档的数字 MOV B,#08H MUL AB MOV 3BH,A MOV R4,#00H MOV R5,#08HLOOP11: MOV A,3BH MOV DPTR,#TABE MOVC A,A+DPTR MOV P2,R4 MOV P0,A MOV P1,#0FDH INC 3BH INC R4 LCALL DELAY DJNZ R5,LOOP11 MOV A,32H ;显示要显档的数字 MOV B,#08H MUL AB MOV 3BH,A MOV R4,#00H MOV R5,#08HLOOP22
12、: MOV A,3BH MOV DPTR,#TABE MOVC A,A+DPTR MOV P2,R4 MOV P0,A MOV P1,#0FBH INC 3BH INC R4 LCALL DELAY DJNZ R5,LOOP22 MOV A,33H ;显示要显档的数字 MOV B,#08H MUL AB MOV 3BH,A MOV R4,#00H MOV R5,#08HLOOP33: MOV A,3BH MOV DPTR,#TABE, MOVC A,A+DPTR MOV P2,R4 MOV P0,A MOV P1,#0F7H INC 3BH INC R4 LCALL DELAY DJNZ R5
13、,LOOP33 MOV A,34H ;显示要显档的数字 MOV B,#08H MUL AB MOV 3BH,A MOV R4,#00H MOV R5,#08HLOOP44: MOV A,3BH MOV DPTR,#TABE MOVC A,A+DPTR MOV P2,R4 MOV P0,A MOV P1,#0EFH INC 3BH INC R4 LCALL DELAY DJNZ R5,LOOP44 POP PSW POP ACC RET第4章 系统调试与仿真Keil是德国Keil Software公司出品的单片机集成开发软件,该软件支持51单片机的所有变种(目前共有400多种型号)。Keil提供
14、了包括C编译器、宏汇编、连接器、库管理及一个功能强大的仿真调试在内的完整开发方案,并通过一个集成开发环境(Vision2)将这些部分组合在一起。Keil单片机集成开发软件可以运行在Windows98/NT/2000及XP等操作系统下。4.1 开发过程a) 建立项目图4-1(a-1) 建立新项目图4-1(a-2) 保存新项目图4-1(a-3) 选择CPUb)新建文件,将文件保存并改成abc.c文件,再将程序输入到文件中并进行编译。图4-1(b-1) 创建程序文件图4-1(b-2) 保存程序文件c)生成hex文件并进行编译图4-1(c) 生成hex文件4.2 下载、调试a)打开Proteus,双击
15、单片机并将hex文件加进去,点击“OK”即可。图4-2(a)b)按下仿真键,即出现如下图初始仿真结果。初始时间显示为12:00,所有元器件未报错,结果正确。图4-2(b) 初始仿真结果图c)电路仿真过程中,按下按键S1时LED显示器的分钟显示将以步进为1进行进位变化。当按下按键S2时LED显示器的时钟显示也以步进为1进行进位变化,调试结果如下图所示: LED分别显示为12:03和13:02,说明元器件连接正确,程序编写没有出现错误。图4-2(c) 分钟部分仿真结果图图4-2(c) 时钟部分仿真结果图总 结经过一个星期的奋战我们的课程设计终于完成了。在没有做课程设计以前觉得课程设计只是对这本学期
16、来所学知识的单纯总结,但是通过这次做课程设计发现自己的看法有点太片面。在课程设计中我们设计了基于AT89C52单片机的LED点阵电子钟,采用的并行方式的显示方案来实现。该电子时钟由AT89C52,74LS373数码管等构成,采用晶振电路作为驱动电路,由延时程序和循环程序产生的一秒定时,达到时分秒的计时。单片机具有体积小,成本低,抗干扰能力强,面向控制,可以实现分机各分布式控制等优点。电子显示器就是利用单片机的上述优点,采用目前市场上性能价格比较高的AT89C52单片机设计而成的最小系统。它在实际生活中具有广泛的应用。电子钟由显示电路,行驱动电路,列驱动电路,中央控制器,按键电路和复位电路组成。
17、在这次课设中,LED点阵作为电子时钟的显示屏,最大的优点在于其显示内容的多样性,为用户提供了灵活的人机交互界面。同时由于在这里采用带晶振的单片机,使得电子时钟不仅走准确,而且可以利用单片机的高度灵活性,为电子时钟扩充许多显来诸如定时自动报警、按时自动打铃、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启动等。课程设计前前后后一共进行了一个星期,这一周的时间里,从电路的绘制到调试仿真,再到到论文的完成,遇到了许多的挫折和失败。在遇到困难时我不断寻找出路解决难题,在老师和同学的帮助下最终完成了这篇课程设计。我深深地认识到在书本上学知识是完全不够的,只有将理论与实际相结合
18、,将知识运用到现实中,才能发挥最大力量。在今后的工作中将面临更大的挑战,通过这次的毕设我懂得了只要将知识转化为力量,一切难题都可以迎刃而解。参 考 文 献1 皮大能,党楠,齐家敏.单片机原理及应用.西北工业大学出版社,2015.12 周景润.PROTEUS入门实用教程M北京.机械工业出版社,20073 楼然苗,李光飞.51系列单片机设计实例M北京:北京航空航天大学出版社,20034 徐爱钧,彭秀华. 单片机高级语言汇编与Vision2应用实践M北京:电子工业出版社,2008. 附 录 ORG =0000H LJMP MAIN ORG 0003H LJMP PINT0 ORG 000BH LJM
19、P INTT0 ORG 0013H LJMP PINT1 ORG 0030H MAIN: MOV SP,#60H MOV TMOD,#01H MOV TL0,#0e0H MOV TH0,#0b1H MOV IE,#87H MOV 30H,#01H ;时十位 MOV 31H,#02H ;时个位 MOV 32H,#0AH ;光标点位 MOV 33H,#00H ;分十位 MOV 34H,#00H ;分个位 MOV 35H,#00H ;秒十位 MOV 36H,#00H ;秒个位SETB IT0SETB IT1SETB PT0 SETB TR0LOOP0: LCALL DISP LJMP LOOP0 I
20、NTT0: MOV TL0,#0e0H MOV TH0,#0b1H PUSH ACC PUSH PSW INC 36H MOV A,36H CJNE A,#25,PLL MOV 32H,#0BHPLL: CJNE A,#50,ENDD ;1S MOV 32H,#0AH MOV 36H,#00H INC 35H MOV A,35H CJNE A,#60,ENDd ;分个位 MOV 35H,#00H INC 34H MOV A,34H CJNE A,#0AH,ENDd ;分个位 MOV 34H,#00H INC 33H MOV A,33H CJNE A,#06H,ENDd ;分十位 MOV 33H
21、,#00H INC 31H MOV A,30H CJNE A,#02H,END1 MOV A,31H CJNE A,#04H,END1 ;时个位 MOV 31H,#00H MOV 30H,#00HEND1: MOV A,31H CJNE A,#0AH,ENDd ;时个位 MOV 31H,#00H INC 30HENDd: POP PSW POP ACC RETI DISP: PUSH ACC PUSH PSW MOV A,30H ;显示要显示的数字 MOV B,#08H MUL AB MOV 3BH,A MOV R4,#00H MOV R5,#08HLOOP00: MOV A,3BH MOV
22、DPTR,#TABE MOVC A,A+DPTR MOV P2,R4 MOV P0,A MOV P1,#0FEH INC 3BH INC R4 LCALL DELAY DJNZ R5,LOOP00 MOV A,31H ;显示要显档的数字 MOV B,#08H MUL AB MOV 3BH,A MOV R4,#00H MOV R5,#08HLOOP11: MOV A,3BH MOV DPTR,#TABE MOVC A,A+DPTR MOV P2,R4 MOV P0,A MOV P1,#0FDH INC 3BH INC R4 LCALL DELAY DJNZ R5,LOOP11 MOV A,32H
23、 ;显示要显档的数字 MOV B,#08H MUL AB MOV 3BH,A MOV R4,#00H MOV R5,#08HLOOP22: MOV A,3BH MOV DPTR,#TABE MOVC A,A+DPTR MOV P2,R4 MOV P0,A MOV P1,#0FBH INC 3BH INC R4 LCALL DELAY DJNZ R5,LOOP22 MOV A,33H ;显示要显档的数字 MOV B,#08H MUL AB MOV 3BH,A MOV R4,#00H MOV R5,#08HLOOP33: MOV A,3BH MOV DPTR,#TABE MOVC A,A+DPTR
24、 MOV P2,R4 MOV P0,A MOV P1,#0F7H INC 3BH INC R4 LCALL DELAY DJNZ R5,LOOP33 MOV A,34H ;显示要显档的数字 MOV B,#08H MUL AB MOV 3BH,A MOV R4,#00H MOV R5,#08HLOOP44: MOV A,3BH MOV DPTR,#TABE MOVC A,A+DPTR MOV P2,R4 MOV P0,A MOV P1,#0EFH INC 3BH INC R4 LCALL DELAY DJNZ R5,LOOP44 POP PSW POP ACC RET DELAY: MOV 37
25、H,#50DEL: MOV 38H,#4 DJNZ 38H,$ DJNZ 37H,DEL RET TABE: ;0 DB 00H,18H,24H,24H,24H,24H,18H,00H ;1 DB 00H,10H,30H,10H,10H,10H,38H,00H ;2 DB 00H,18H,24H,04H,18H,20H,3CH,00H ;3 DB 00H,18H,24H,18H,04H,24H,18H,00H ;4 DB 00H,08H,18H,28H,7CH,08H,08H,00H ;5 DB 00H,1CH,10H,18H,04H,24H,18H,00H ;6 DB 00H,18H,24H
26、,38H,24H,24H,18H,00H ;7 DB 00H,3CH,28H,08H,10H,10H,10H,00H ;8 DB 00H,18H,24H,18H,24H,24H,18H,00H ;9 DB 00H,18H,24H,24H,1CH,24H,18H,00H ;: DB 00H,00H,18H,18H,00H,18H,18H,00H ; DB 00H,00H,00H,00H,00H,00H,00H,00H RET PINT0: MOV4AH,#20 DJNZ4AH,$ JB P3.2, END_DD MOV 36H,#00H INC 34H MOV A,34H CJNE A,#0AH
27、,END_DD ;分个位 MOV 34H,#00H INC 33H MOV A,33H CJNE A,#06H,END_DD ;分十位 MOV 33H,#00HEND_DD: RETIPINT1: MOV4AH,#20 DJNZ4AH,$ JB P3.3,END_D INC 31H MOV A,30H CJNE A,#02H,END_1 MOV A,31H CJNE A,#04H,END_1 ;时个位 MOV 31H,#00H MOV 30H,#00HEND_1: MOV A,31H CJNE A,#0AH,END_d ;时个位 MOV 31H,#00H INC 30HEND_D: RETI
28、END答辩记录及评分表 课题名称基于单片机LED点阵显示电子时钟设计答辩教师(职称) 陶沙 答辩时间20152016学年第一学期 第 13 周答辩评语1.Proteus软件的主要功能是什么?答:Proteus分两个部分,一部分是绘制PCB板,另一部分用于电子仿真,如对单片机进行仿真(导入.hex文件对单片机电路进行仿真)。2.LED显示屏与LCD显示屏相比有什么优势?答:LED为一种发光二极管,工作时耗电量小,节能环保。原理是把电能直接转换为光能,不产生极少热量,对人体辐射较小,而且耐冲击,性能稳定。3.时间设置功能你采用了几只按键来实现,分别有什么作用?答:用了三只按键来实现,其中的两只是时间调整按键,分别用于时调整和分调整,另外一只是用作复位按键来实现复位的。