基于单片机LED点阵显示电子时钟设计.docx

上传人:b****8 文档编号:9053451 上传时间:2023-02-03 格式:DOCX 页数:30 大小:401.45KB
下载 相关 举报
基于单片机LED点阵显示电子时钟设计.docx_第1页
第1页 / 共30页
基于单片机LED点阵显示电子时钟设计.docx_第2页
第2页 / 共30页
基于单片机LED点阵显示电子时钟设计.docx_第3页
第3页 / 共30页
基于单片机LED点阵显示电子时钟设计.docx_第4页
第4页 / 共30页
基于单片机LED点阵显示电子时钟设计.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

基于单片机LED点阵显示电子时钟设计.docx

《基于单片机LED点阵显示电子时钟设计.docx》由会员分享,可在线阅读,更多相关《基于单片机LED点阵显示电子时钟设计.docx(30页珍藏版)》请在冰豆网上搜索。

基于单片机LED点阵显示电子时钟设计.docx

基于单片机LED点阵显示电子时钟设计

 

2015~2016学年第一学期

 

《单片机原理及应用》

课程设计报告

 

题目:

基于单片机LED点阵显示电子时钟设计

班级:

13级电子信息

姓名:

指导教师:

电气工程学院

2015年11月

《单片机原理及应用》任务书

课题名称

基于单片机LED点阵显示电子时钟设计

指导教师

陶沙

执行时间

2015~2016学年第一学期第13周

学生姓名

学号

承担任务

评分

论文撰写及调试仿真

硬件电路绘制及程序编写

Keil与ISIS.的联调

仿真实验结果的验证

系统方案设计

查询文献与答辩

硬件模块电路分析

主要程序分析

设计

要求

1、设计一个LED点阵显示电子时钟电路

 

2、时钟显示的初始时间为12:

00。

 

3、时钟和分钟可以通过相应的按键以步进值为1进行变化。

 

摘要

LED显示屏作为信息传播的一种重要手段,已经成为城市信息现代化建设的标志,LED显示屏随着社会经济的不断进步,以及LED制造技术的完善,人们对LED显示屏的认识将会越来越深入,其应用领域将会越来越广;LED显示屏经多年的开发、研制、生产,其技术目前已经成熟。

现在各种广告牌不再是白底黑字了,也不再是单一的非电产品,而是用上了丰富多彩的LED电子产品,为城市增添了一道靓丽的风景。

本次课程设计是基于AT89C52单片机的LED点阵电子显示器的设计,采用

的并行方式的显示方案来实现。

该电子时钟由AT89C51,74LS373数码管等构成,采用晶振电路作为驱动电路,由延时程序和循环程序产生的一秒定时,达到时分秒的计时。

用keil软件生成.hex文件,用Proteus的ISIS软件实现了单片机LED点阵电子时钟系统的设计与仿真。

 

 

关键词:

单片机;LED点阵;电子显示器

 

第1章方案选择与论证

1.1设计任务与要求

(1)采用LED灯进行显示

(2)可以根据按键来对时间进行调整

(3)初始时间为12:

00.

1.2总体设计方案

1.2.1硬件部分的设计

这次硬件电路部分用PROTEUS软件,该软件主要用来进行元器件的绘制和原理图的绘制,PROTEUS软件对绘制好的原理图进行仿真和调试。

根据课程设计任务书的要求,经过思考和筛选,选择并行方式显示,I/O口通过锁存芯片来扩展,以此来控制LED点阵40个列线,双缓冲寄存器由5片锁存器74LS373来组成,可以驱动LED点阵8组列线,并用3/8译码器74LS138对LED点阵的8行进行扫描。

在送每一行的数据到LED点阵时,先把数据分别送到5个74LS373,然后再把数据一起输出到LED点阵列中,送出去的时间数据由AT89C51来控制。

电子钟由显示电路、行驱动电路、列驱动电路、中央控制器AT89C52、按键电路和复位电路组成。

 

图1.2.1系统框图

a) 显示模块的选择 

显示模块采用8*8的点阵LED数码管,这种模块由64个发光LED芯片以8*8的形式构成一个正方形模块,然后用两列12针引脚将内部电路接口引出,供驱动电路使用。

这种结构是市面上最通用,也是现在应用最为广泛采用的形式。

 

b) 时钟信号的选择 

秒信号由单片机提供,使用程序由时、分、秒计数。

采用这种方案的优点在于,它可以有效减少电路的复杂程度,减少多余芯片的使用,节约成本。

并可以减少时间误差,以达到设计要求。

 c) 总体设计方案 

根据以上方案所述本次毕业设计采取的总体方案如下:

用锁存芯片来扩展I/O口,控制LED点阵40个列线;5片锁存器74LS373组成双缓冲寄存器,驱动LED点阵8组列线;采用8*8的点阵LED数码管组成显示模块,显示出运行调试结果;主控系统由AT89C51组成,通过它的串行输出动态扫描来实现时和分的显示。

1.2.2软件部分设计

将需要实现的功能用Keil 软件写好程序,并对写入单片机的代码进行编译和调试。

 

第2章硬件电路的设计

2.1晶振电路设计

晶振电路部分由两个值为30uf的电容C1、C2和一个6MHz的晶振X1串联组成。

由它产生的振荡信号可以保证精度高而且稳定并且频率稳定在6MHz,次方波信号提供给单片机作为一个时钟信号,当定时器需要定时的时候使用。

图2-1晶振电路部分

2.2复位电路设计

复位电路由一个数值为10uf的电容和一个按键串联组成,电路中的复位设定为上电与按键均有效的模式,当电路上电时,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再次按下按键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中断完成,其余状态循环调用显示子程序,当端口开关按下时,转入相应功能程序。

 

 当计时中断开始时,LED显示器开始接受信号,接受到一个信号时秒数增加1,当秒数累计加到60时,则分数为主动进1,分数位累计加到60时,时数位主动增加1。

秒针、分针、时针只要有一位未接受到信号,那么系统就会自动结束。

其程序执行流程见下图

N

Y

N

Y

 

N

Y

 

图3-1程序执行流程图

3.2主要软件程序内容

3.2.1定时器工作程序

MOVSP,#60H

MOVTMOD,#01H

MOVTL0,#0e0H

MOVTH0,#0b1H

MOVIE,#87H

 

MOV30H,#01H;//时十位

MOV31H,#02H;//时个位

MOV32H,#0AH;//光标点位

MOV33H,#00H;//分十位

MOV34H,#00H;//分个位

MOV35H,#00H;//秒十位

MOV36H,#00H;//秒个位

SETBIT0//IT0变成1(IT0为外部中断0,1为下降沿触发,是按键功能)

SETBIT1//同理

SETBPT0

SETBTR0//TR0为定时器开关,开定时器0

 

3.2.2数字显示程序

LOOP00:

MOVA,3BH

MOVDPTR,#TABE

MOVCA,@A+DPTR

MOVP2,R4

MOVP0,A

MOVP1,#0FEH

INC3BH

INCR4

LCALLDELAY

DJNZR5,LOOP00

MOVA,31H;显示要显档的数字

MOVB,#08H

MULAB

MOV3BH,A

MOVR4,#00H

MOVR5,#08H

LOOP11:

MOVA,3BH

MOVDPTR,#TABE

MOVCA,@A+DPTR

MOVP2,R4

MOVP0,A

MOVP1,#0FDH

INC3BH

INCR4

LCALLDELAY

DJNZR5,LOOP11

MOVA,32H;显示要显档的数字

MOVB,#08H

MULAB

MOV3BH,A

MOVR4,#00H

MOVR5,#08H

LOOP22:

MOVA,3BH

MOVDPTR,#TABE

MOVCA,@A+DPTR

MOVP2,R4

MOVP0,A

MOVP1,#0FBH

INC3BH

INCR4

LCALLDELAY

DJNZR5,LOOP22

MOVA,33H;显示要显档的数字

MOVB,#08H

MULAB

MOV3BH,A

MOVR4,#00H

MOVR5,#08H

LOOP33:

MOVA,3BH

MOVDPTR,#TABE,

MOVCA,@A+DPTR

MOVP2,R4

MOVP0,A

MOVP1,#0F7H

INC3BH

INCR4

LCALLDELAY

DJNZR5,LOOP33

MOVA,34H;显示要显档的数字

MOVB,#08H

MULAB

MOV3BH,A

MOVR4,#00H

MOVR5,#08H

LOOP44:

MOVA,3BH

MOVDPTR,#TABE

MOVCA,@A+DPTR

MOVP2,R4

MOVP0,A

MOVP1,#0EFH

INC3BH

INCR4

LCALLDELAY

DJNZR5,LOOP44

POPPSW

POPACC

RET

 

第4章系统调试与仿真

Keil是德国KeilSoftware公司出品的单片机集成开发软件,该软件支持51单片机的所有变种(目前共有400多种型号)。

Keil提供了包括C编译器、宏汇编、连接器、库管理及一个功能强大的仿真调试在内的完整开发方案,并通过一个集成开发环境(μVision2)将这些部分组合在一起。

Keil单片机集成开发软件可以运行在Windows98/NT/2000及XP等操作系统下。

4.1开发过程

a)建立项目

图4-1(a-1)建立新项目

图4-1(a-2)保存新项目

 

图4-1(a-3)选择CPU

 

b)新建文件,将文件保存并改成abc.c文件,再将程序输入到文件中并进行编译。

图4-1(b-1)创建程序文件

 

图4-1(b-2)保存程序文件

 

c)生成hex文件并进行编译

图4-1(c)生成hex文件

 

4.2下载、调试

a)打开Proteus,双击单片机并将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)时钟部分仿真结果图

 

总结    

经过一个星期的奋战我们的课程设计终于完成了。

在没有做课程设计以前觉得课程设计只是对这本学期来所学知识的单纯总结,但是通过这次做课程设计发现自己的看法有点太片面。

 在课程设计中我们设计了基于AT89C52单片机的LED点阵电子钟,采用的并行方式的显示方案来实现。

该电子时钟由AT89C52,74LS373数码管等构成,采用晶振电路作为驱动电路,由延时程序和循环程序产生的一秒定时,达到时分秒的计时。

单片机具有体积小,成本低,抗干扰能力强,面向控制,可以实现分机各分布式控制等优点。

电子显示器就是利用单片机的上述优点,采用目前市场上性能价格比较高的AT89C52单片机设计而成的最小系统。

它在实际生活中具有广泛的应用。

 电子钟由显示电路,行驱动电路,列驱动电路,中央控制器,按键电路和复位电路组成。

 

 在这次课设中,LED点阵作为电子时钟的显示屏,最大的优点在于其显示内容的多样性,为用户提供了灵活的人机交互界面。

同时由于在这里采用带晶振的单片机,使得电子时钟不仅走准确,而且可以利用单片机的高度灵活性,为电子时钟扩充许多显来诸如定时自动报警、按时自动打铃、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启动等。

 

课程设计前前后后一共进行了一个星期,这一周的时间里,从电路的绘制到调试仿真,再到到论文的完成,遇到了许多的挫折和失败。

在遇到困难时我不断寻找出路解决难题,在老师和同学的帮助下最终完成了这篇课程设计。

我深深地认识到在书本上学知识是完全不够的,只有将理论与实际相结合,将知识运用到现实中,才能发挥最大力量。

 

在今后的工作中将面临更大的挑战,通过这次的毕设我懂得了只要将知识转化为力量,一切难题都可以迎刃而解。

 

参考文献

[1]皮大能,党楠,齐家敏.单片机原理及应用.西北工业大学出版社,2015.1

[2]周景润.PROTEUS入门实用教程[M]北京.机械工业出版社,2007

[3]楼然苗,李光飞.51系列单片机设计实例[M]北京:

北京航空航天大学出版社,2003

[4]徐爱钧,彭秀华.单片机高级语言汇编与μVision2应用实践[M]北京:

电子工业出版社,2008.

 

附录

ORG=0000H

LJMPMAIN

ORG0003H

LJMPPINT0

ORG000BH

LJMPINTT0

ORG0013H

LJMPPINT1

ORG0030H

MAIN:

MOVSP,#60H

MOVTMOD,#01H

MOVTL0,#0e0H

MOVTH0,#0b1H

MOVIE,#87H

MOV30H,#01H;时十位

MOV31H,#02H;时个位

MOV32H,#0AH;光标点位

MOV33H,#00H;分十位

MOV34H,#00H;分个位

MOV35H,#00H;秒十位

MOV36H,#00H;秒个位

SETBIT0

SETBIT1

SETBPT0

SETBTR0

LOOP0:

LCALLDISP

LJMPLOOP0

INTT0:

MOVTL0,#0e0H

MOVTH0,#0b1H

PUSHACC

PUSHPSW

INC36H

MOVA,36H

CJNEA,#25,PLL

MOV32H,#0BH

PLL:

CJNEA,#50,ENDD;1S

MOV32H,#0AH

MOV36H,#00H

INC35H

MOVA,35H

CJNEA,#60,ENDd;分个位

MOV35H,#00H

INC34H

MOVA,34H

CJNEA,#0AH,ENDd;分个位

MOV34H,#00H

INC33H

MOVA,33H

CJNEA,#06H,ENDd;分十位

MOV33H,#00H

INC31H

MOVA,30H

CJNEA,#02H,END1

MOVA,31H

CJNEA,#04H,END1;时个位

MOV31H,#00H

MOV30H,#00H

END1:

MOVA,31H

CJNEA,#0AH,ENDd;时个位

MOV31H,#00H

INC30H

ENDd:

POPPSW

POPACC

RETI

DISP:

PUSHACC

PUSHPSW

MOVA,30H;显示要显示的数字

MOVB,#08H

MULAB

MOV3BH,A

MOVR4,#00H

MOVR5,#08H

LOOP00:

MOVA,3BH

MOVDPTR,#TABE

MOVCA,@A+DPTR

MOVP2,R4

MOVP0,A

MOVP1,#0FEH

INC3BH

INCR4

LCALLDELAY

DJNZR5,LOOP00

MOVA,31H;显示要显档的数字

MOVB,#08H

MULAB

MOV3BH,A

MOVR4,#00H

MOVR5,#08H

LOOP11:

MOVA,3BH

MOVDPTR,#TABE

MOVCA,@A+DPTR

MOVP2,R4

MOVP0,A

MOVP1,#0FDH

INC3BH

INCR4

LCALLDELAY

DJNZR5,LOOP11

MOVA,32H;显示要显档的数字

MOVB,#08H

MULAB

MOV3BH,A

MOVR4,#00H

MOVR5,#08H

LOOP22:

MOVA,3BH

MOVDPTR,#TABE

MOVCA,@A+DPTR

MOVP2,R4

MOVP0,A

MOVP1,#0FBH

INC3BH

INCR4

LCALLDELAY

DJNZR5,LOOP22

MOVA,33H;显示要显档的数字

MOVB,#08H

MULAB

MOV3BH,A

MOVR4,#00H

MOVR5,#08H

LOOP33:

MOVA,3BH

MOVDPTR,#TABE

MOVCA,@A+DPTR

MOVP2,R4

MOVP0,A

MOVP1,#0F7H

INC3BH

INCR4

LCALLDELAY

DJNZR5,LOOP33

MOVA,34H;显示要显档的数字

MOVB,#08H

MULAB

MOV3BH,A

MOVR4,#00H

MOVR5,#08H

LOOP44:

MOVA,3BH

MOVDPTR,#TABE

MOVCA,@A+DPTR

MOVP2,R4

MOVP0,A

MOVP1,#0EFH

INC3BH

INCR4

LCALLDELAY

DJNZR5,LOOP44

POPPSW

POPACC

RET

DELAY:

MOV37H,#50

DEL:

MOV38H,#4

DJNZ38H,$

DJNZ37H,DEL

RET

TABE:

;0

DB00H,18H,24H,24H,24H,24H,18H,00H

;1

DB00H,10H,30H,10H,10H,10H,38H,00H

;2

DB00H,18H,24H,04H,18H,20H,3CH,00H

;3

DB00H,18H,24H,18H,04H,24H,18H,00H

;4

DB00H,08H,18H,28H,7CH,08H,08H,00H

;5

DB00H,1CH,10H,18H,04H,24H,18H,00H

;6

DB00H,18H,24H,38H,24H,24H,18H,00H

;7

DB00H,3CH,28H,08H,10H,10H,10H,00H

;8

DB00H,18H,24H,18H,24H,24H,18H,00H

;9

DB00H,18H,24H,24H,1CH,24H,18H,00H

;:

DB00H,00H,18H,18H,00H,18H,18H,00H

;

DB00H,00H,00H,00H,00H,00H,00H,00H

RET

PINT0:

MOV4AH,#20

DJNZ4AH,$

JBP3.2,END_DD

MOV36H,#00H

INC34H

MOVA,34H

CJNEA,#0AH,END_DD;分个位

MOV34H,#00H

INC33H

MOVA,33H

CJNEA,#06H,END_DD;分十位

MOV33H,#00H

END_DD:

RETI

PINT1:

MOV4AH,#20

DJNZ4AH,$

JBP3.3,END_D

INC31H

MOVA,30H

CJNEA,#02H,END_1

MOVA,31H

CJNEA,#04H,END_1;时个位

MOV31H,#00H

MOV30H,#00H

END_1:

MOVA,31H

CJNEA,#0AH,END_d;时个位

MOV31H,#00H

INC30H

END_D:

RETI

 

END

 

答辩记录及评分表

课题名称

基于单片机LED点阵显示电子时钟设计

答辩教师(职称)

陶沙

答辩时间

2015~2016学年第一学期第13周

 

1.Proteus软件的主要功能是什么?

答:

Proteus分两个部分,一部分是绘制PCB板,另一部分用于电子仿真,如对单片机进行仿真(导入.hex文件对单片机电路进行仿真)。

2.LED显示屏与LCD显示屏相比有什么优势?

答:

LED为一种发光二极管,工作时耗电量小,节能环保。

原理是把电能直接转换为光能,不产生极少热量,对人体辐射较小,而且耐冲击,性能稳定。

3.时间设置功能你采用了几只按键来实现,分别有什么作用?

答:

用了三只按键来实现,其中的两只是时间调整按键,分别用于时调整和分调整,另外一只是用作复位按键来实现复位的。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1