EDA实验 大屏幕8乘8点阵LED显示.docx
- 文档编号:5209455
- 上传时间:2022-12-14
- 格式:DOCX
- 页数:10
- 大小:275.72KB
EDA实验 大屏幕8乘8点阵LED显示.docx
《EDA实验 大屏幕8乘8点阵LED显示.docx》由会员分享,可在线阅读,更多相关《EDA实验 大屏幕8乘8点阵LED显示.docx(10页珍藏版)》请在冰豆网上搜索。
EDA实验大屏幕8乘8点阵LED显示
大屏幕(8*8点阵)
显示实验
队系:
九系五队
组长:
牛金辉20075301446
组员:
高阳20075301343
白保军20075301419
贾昕辉20075301385
麻俊伟20075301447
预习报告
一、实验目的
设计制作一个大屏幕显示器,了解其构成和基本原理。
二、基本要求
(1)显示器点阵数目至少8*8,能够多显示汉字。
(2)能够用多种扫描方式进行显示。
(3)显示器的亮点可以调节。
三、实验内容
1、硬件部分:
硬件实现框图:
各部分说明:
1.晶振电路:
由51单片机本身时钟段和晶振提供,提供时钟频率。
2.复位电路:
由电阻,电容以及开关构成的电路接至51单片机的复位端,起到复位作用。
3.51单片机:
存储和处理程序。
4.显示电路:
其中8*8LED点阵用于显示输出,限流电阻用于保护8*8LED。
5.驱动电路:
用于驱动8*8点阵LED显示设备,使51单片机所发出的信号的电压相对稳定,增加负载能力。
6.5V电源:
提供设备所需的电压,功耗。
2、软件部分:
1、汉字的点阵显示:
把每一个点理解为一个象素,而把每一个字的字形理解为一幅图像。
因而可以对汉字进行拆分,使8*8中与汉字对应的象素(二极管)进行点亮,就可以达到显示汉字的目的,并以发光的象素位编为0不发光的象素位为1进行编码,就可以得知每个汉字对应的代码,将其存储,通过时钟的控制并加以中断延迟,而后依次传输给8*8LED进行显示,就可以实现最终的汉字显示效果。
2.规划的编程流程:
四、实验步骤:
1.依据硬件实现的方法,准备好实验所需的设备。
2.确定出各器件引脚的分布,并对汉字进行适当的显示编码,做好实验前的准备工作。
3.根据元器件的参数完成PCB设计与元件装配
4.依据规划的编程流程,进行编程、调试,完成程序的设计。
5.对设计好的程序进行下载、烧录,并对最终的成品进行调试,直至正常完成实验要求。
实验报告
一、实验主要元器件
元器件名称
参数
数量
AT89S51
4KBROM的8位微处理器
1个
LED点阵
8*8点阵
1个
电阻
10K
1个
电容
33p
2个
电容
10u
1个
晶振
12MHZ
1个
二、实验步骤
1、实验前准备:
8*8点阵的测量:
把电压源调到1.5V,经测量,可知8*8点阵右边的阵脚正负和行列控制情况:
上排阵脚为正且控制行,从左到右依次对应8*8点阵从下到上的点;下排为负且控制列,从左到右依次对应8*8点阵从右到左;同时最终测得屏幕上6个坏点的位置。
2、编程:
(1)编程思想:
列控制扫描方向:
因为列为负,当其输入为1时可起到封锁该行的作用,只有在输入为0时才起作用。
因此将所有列置为0FEH,然后向左循环,就可在8次循环后使整个屏幕得到显示,并且一次只需输入一列中的8个行信息,用一个P口即可实现。
行控制字的信息:
将字以8*8方格形式表示,如占用则将改方格编为1,否则为0。
这样就可完成得到一个汉字所有行的编码信息,并以一列中的每行编码为信息从右至左制成码表,存储起来按顺序进行输出,就可实现汉字的显示功能。
字显示时延以及时长的控制:
因为51单片机采用的为12分频且板上采用的晶振频率为12MHZ,因此执行一条语句的时长为2us,因此构成一个循环使语句反复执行1000次就可实现2ms的延迟(每列的保持时间),再此基础上使在一个字的显示上加上循环,使之扫屏200次,最终就可得到每字约为2ms*8*200约为3s的显示时长。
(2)具体程序:
ORG0000H
AJMPMAIN
ORG0030H
MAIN:
MOVDPTR,#TAB;字码表初址赋值
MOVR4,#6;共6个字符
CM:
MOVR5,#200;每屏反复显示200次
MOVR1,#0FEH;列控制码
C1:
MOVR3,#8;列数
MOVR2,#0;取字指针
C8:
MOVP0,#0FFH;关显示
MOVA,R2
MOVCA,@A+DPTR;取当前列的显示
;字码的一个字节
MOVP1,A;送1~8行控制口
INCR2
MOVA,R1
MOVP0,A;送列控制码
ACALLD2MS;显示2MS
RLA;列控制码左移,显示下一列
MOVR1,A
DJNZR3,C8;未显示8列,继续
DJNZR5,C1;未显示200次,继续
MOVA,DPL
ADDA,#8;一屏反复显示200次
;后字码表初值加8
MOVDPL,A
DJNZR4,CM;未显示6个字符,继续
AJMPMAIN;6个字符显示完后
;重新从主程序执行
D2MS:
MOVR6,#4;子程序1ms的延迟
D2:
MOVR7,#248
DJNZR7,$
DJNZR6,D2
RET
TAB:
DB0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH;查找坏点
DB01H,93H,95H,91H,0FFH,91H,91H,01H;玉
DB0FFH,25H,28H,30H,28H,2CH,0FFH,2CH;树
DB08H,08H,08H,0FFH,08H,48H,28H,18H;4
DB01H,01H,01H,0FFH,41H,21H,01H,01H;1
DB08H,08H,08H,0FFH,08H,48H,28H,18H;4
END
3、Proteus模拟仿真
根据所给的PCB板在proteus中选择相应的原件,按PCB的布线进行连接,即得到了原电路的模拟电路,如下:
将编好的程序经wave6000编译,生成hex文件,并将之载入proteus中选择的51单片机中,并执行进行仿真:
可分别得到所显示汉字:
三、日志
1、第七周:
去图书馆借阅了一本北航版的《单片机原理与实践》进行阅读,对单片机的存储器结构、时钟与复位电路、其指令系统以及I/O接口与引脚进行了学习,并通过网络查询了有关8*8点阵的相关信息。
所遇到的问题:
单片机的存储器结构与微机上学的8086相似,所以学起来简单了很多,就是在指令系统方面其某些指令与微机上学的有所不同,致使我在编程上出现了一些错误,不过相比而言,单片机的一些汇编指令与8086的相比还是简单实用了很多。
2、第八周:
周六、周日对程序进行了编写,并用Proteus进行了程序的仿真。
所遇到的问题:
问题1:
在编程时将P0-P7口拆分字的编码顺序与实际8*8点阵的针脚顺序搞反,导致字的显示与原计划的显示刚好颠倒。
问题2:
本来想着人类的视觉分辨在50ms左右,因此在程序的编写时将延时设为了5ms,这样一个字的显示就为40ms,这样扫屏应该感觉不到,当最后实际运行当中,屏幕闪烁十分严重,因此在最后对延时改为1ms,并将扫屏次数增为200次,以便保持一个字的显示时间不变。
3、第九周:
在试验室进行了程序的下载烧录。
所遇到的问题:
问题1:
在周一晚上第一次将程序下载烧录完后,加上4V电压,结果屏幕没有任何的显示。
随后,又进行了两次烧录,但是显示结果仍然不对,只是有时的结果变为有几行长亮。
此后我们对此现象进行了讨论,决定用别人的单片机进行一下试验,结果显示成功,此而我们认为应该是单片机的问题。
问题2:
周二晚上我们向教员提出换单片机的申请,最后在教员给的好的单片机运行下还是不能进行显示,我们把结果告诉教员后,在教员进行烧录擦写后确认单片机没问题,随后我们继续寻找问题的所在,在换了不同的单片机时,有的能进行显示,有的不能进行显示,所以我们认为PCB板应该没问题,但是我们将我们的单片机放到别人的试验上进行尝试,结果显示正常,这样就应该像教员说的那样单片机也没问题,我们陷入了深深的困惑中并一直搞到很晚,最后并没有找到最终的问题所在。
问题3:
周三早上我们又再次来到了实验室,结果在我们偶然的一次将单片机插入的比较松时,屏幕得到了正常的显示,但当我们一动,屏幕又再次没有了任何的反应。
随后,我们对单片机进行了反复的拔插,其结果为有的时候能亮,有的时候却没反应,我们感觉是插槽的问题,对针脚以及插槽进行了一定的改动,但却没有得到多大的好转。
不过,此时我们已经可以判断是板子或单片机中的接触不良导致,因此我们决定将PCB上的焊点进行重新的检查焊接,焊接后,再次对单片机进行了擦写烧录,最终,结果正常。
终于,在三天的调试后,找到了问题的所在,并加以解决,完成了实验。
四、体会
高阳篇
在这次电子设计当中,遇到了很多困难,但是从中我们也得到了解决困难的快乐,并且我们对单片机有了更深的了解。
此外,我们最大的收获是:
现实中电路的制作与理论中电路的模拟存在着很大的差距,即使在理论中模拟正确,但现实中电路的制作仍然是需要很多问题需要解决的,这就需要我们重视实践,因为只有多做才能获得实际中的经验,以此我们才能更好的解决问题,这些以前虽然也长听教员提到,但并没有什么贴身体会,经这次后,我们完全的认识到了动手的能力。
因此,我们在今后一定会在学习理论的同时多多增加自己的动手实践机会,提高自己的实践能力,以应对未来工作中的各种各样挑战。
牛金辉篇
这次实验我负责8*8LED点阵的测量、器件的安装以及加电工作。
为了了解点阵的连接问题,我上网查了资料,研究了点阵的内部结构以及为什么那样排列。
在加电测量的时候,刚开始加1.5V电压,测到有三个坏点,后来一不小心把电压加到4.5V,导致3个点被烧坏。
经过这件事后我加电就更小心了。
等把整个器件都安装完后,加4.5V电压,发现只有个别点亮,首先我们认为是单片机没烧录好,又重新烧录了一遍,安装后还是不行,又重新安装几次,发现有时点阵亮几个点,有时一个也不亮,而换用其他的单片机烧上我们的程序后,则正常,所以排除单片机的问题,经过小组全体成员的一致努力,我们最终排除困难,完成实验。
经过这次实验,我体会到合作的重要性,而合作是未来工作中必不可少的素质。
实验有利于提高我们的动手能力,以更好应对未来的挑战。
麻俊伟、贾新辉篇
我觉得作为一名电子信息工程专业的学生,这次课程设计是很有意义的。
让我们知道如何把自己平时所学的东西应用到实际中。
虽然我对于这门课懂的并不多,很多基础的东西都还没有很好的掌握,觉得很难,也没有很有效的办法通过自身去理解,但是靠着这五个星期的学习实践,在小组同学的相互学习帮助下,渐渐对这门课逐渐产生了兴趣,自己开始主动学习并逐步从基础慢慢开始弄懂它。
我认为这个收获应该说是相当大的。
一开始我们伤透了脑筋。
好不容易通过了仿真,可是硬件就是无法达到预期想要的结果。
可是我们大家并不气馁,静下心来寻找原因,最终通过我们小组成员的共同努力完成了,虽然设计的内容并不是很复杂,但是我们觉得设计的过程相当重要,使我们学到了很多,收获了很多。
通过这次课程设计我发现了自身存在的不足之处,虽然感觉理论上已经掌握,但在运用到实践的过程中仍有意想不到的困惑,经过一番努力才得以解决。
这也激发了我今后努力学习的兴趣,我想这将对我以后的学习产生积极的影响。
其次,这次课程设计让我充分认识到团队合作的重要性,只有分工协作才能保证整个系统的有条不絮。
最后,也使我了解到理论知识与实践相结合的重要意义,学会了坚持、耐心和努力,这将为自己今后的学习和工作做出了最好的榜样。
我觉得电子系统设计反映的是一个从理论到实际应用的过程,但是更远一点可以联系到以后毕业从学校到踏上社会的一个过程。
小组人员的配合﹑相处,以及自身的动脑和努力,都是以后学习工作中需要的。
白保军篇
实验是对课本知识的一种综合应用,它源于课本又高于课本。
这次的实验综合了我们以前所学的数字电路基础、现代电子线路以及C(汇编)语言等众多基础课,是一个综合性很强的实验。
通过此次实验,感触颇多,首先:
加深了对课本知识的理解和掌握,增强了自己的动手能力,同时也感觉到自己所学的不足,这也激发了以后学习的积极性。
其次:
在此次实验中遇到很多问题,使我们了解到课本理想状态和现实环境的巨大差异,在实验中也培养了不怕失败,反复实验的那种执着精神,这种精神在以后的工作和人生当中将起着非常重要的作用。
最后:
通过实验,我们理解了合作的重要性。
未来的工作不可能一个人完成,这就要求我们加强彼此间的合作和默契。
此次实验分工明确,配合默契,是一次很成功的团队合作,有利于我们以后的学习和工作。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EDA实验 大屏幕8乘8点阵LED显示 EDA 实验 大屏幕 点阵 LED 显示