单片机课程设LED
- 格式:doc
- 大小:3.10 MB
- 文档页数:13
《单片机课程设计》设计报告
设计题目:LED点阵显示控制系统设计
系 别:自动化工程系
专 业:测控技术与仪器
班级学号:
姓 名:
指导教师:张宝健 吕江涛
设计时间:2011年12月26日--2011年12月30日
一.前言
二.LED点阵显示控制系统设计
1
、系统设计总体结构
2、芯片选择
3、8255A主要特性
三.
硬件电路设计
1、AT89S52最小系统
2、8255A与AT89S52单片机接口电路
3、8255A驱动16X16 LED点阵电路设计
四.软件设计
1、
主程序设计
2、延时程序设计
3、8255A输出框图
五.调试与测试结果分析
1、实验连线
2、程序调试
3、结果分析
六.设计原理阐述
七.参考文献
八、设计总结及心得体会
附录:程序清单
一.前言
LED点阵显示屏的设计
设计背景:
LED显示屏是一种通过控制半导体发光二极管的显示方式,用来显
示文字、图形、图像、动画、视频、录像信号等各种信息的显示屏幕。
图文显示屏可与计算机同步显示汉字、英文文本和图形;视频显示屏7
采用微型计算机进行控制,图文、图像并茂,以实时、同步、清晰的信
息传播方式播放各种信息,还可显示二维、三维动画、录像、电视、VCD
节目以及现场实况。LED显示屏显示画面色彩鲜艳,立体感强,静如油
画,动如电影,广泛应用于车站、机场、商场、医院、宾馆、银行、建
筑市场、工业企业管理和其它公共场所。它的优点:亮度高、工作电压
低、功耗小、微型化、易与集成电路匹配、驱动简单、寿命长、耐冲击、
性能稳定。
设计要求:
实现16×16 LED点阵上轮流显示8个汉字“东北大学自动化系”,
要求显示汉字应稳定清晰,显示的方式自行设定
。
系统的总体方案设计:
LED显示屏作为一种新型的显示器件,是由多个发光二极管按矩阵
形式排列封装而成,通常用来显示时间、图文等信息。本设计是基于
AT89S52单片机的16x16显示屏,其中包含了硬件、软件、调试、分析
等方案的设计。图文显示一般有静态和动态显示两种方案,静态方案虽
然设计简单,但其使用的管脚太多,如本设计中16x16的点阵共有256
个发光二极管,显然单片机没有这么多的端口,如果我采用锁存器来扩
展端口,按8位的锁存器来计算,16x16的点阵需要256/8=32个锁存
器。这个数字很庞大,因为我们仅仅是16x16的点阵,在实际应用中的
显示屏往往要大得多,这样在锁存器上花的成本将是一个很庞大的数字。
因此在实际应用中的显示屏几乎都不采用这种设计,而采用另外一种称
为动态扫描的显示方法。动态扫描的意思简单地说就是逐行轮流点亮,
这样扫描驱动电路就可以实现多行(比如16行)的同名列共用一套驱动
器。具体就16x16的点阵来说,把所有同1行的发光管的阳极连在一起,
把所有同1列的发光管的阴极连在一起(共阳极的接法),先送出对应
第一行发光管亮灭的数据并锁存,然后选通第1行使其燃亮一定时间,
然后熄灭;再送出第二行的数据并锁存,然后选通第2行使其燃亮相同
的时间,然后熄灭;以此类推,第16行之后,又重新燃亮第1行,反复
轮回。当这样轮回的速度足够快(每秒24次以上),由于人眼的视觉暂
留现象,就能够看到显示屏上稳定的图形了。
二.LED 点阵显示控制系统设计
1、系统的总体结构:
2、芯片的选择:
根据实验要求和实验室实验仪器的配备,我们选择了8255A
列驱动
行
驱
动
1
6X16LED显示
点阵
电源
单
片
机
74LS244、74LS07、 80C51单片机、MATRIX-8*8-GREE、
3、8255A芯片的主要技术特性:
1)如图所示是8255A芯片的引脚图:
2)8255A与CPU连接部分:
根据定义,8255能并行传送8位数据,所以其数据线为8根D0~D7。
由于8255具有3个通道A、B、C,所以只要两根地址线就能寻址A、B、
C口及控制寄存器,故地址线为两根A0~A1。此外CPU要对8255进行读、
写与片选操作,所以控制线为片选、复位、读、写信号。各信号的引脚
编号如下:
DB:编号为D0~D7,用于8255与CPU传送
8位数据。
AB:编号为A0~A1,用于选择A、B、C口与
控制寄存器。
CB:片选信号、复位信号RST、写信
号、读信号。当CPU要对8255进行读、写操
作时,必须先向8255发片 选信号选中8255芯片,然后发读信号或写信
号对8255进行读或写数据的操作。
3)与外设接口部分:
根据定义,8255有3个通道A、B、C与外设连接,每个通道又有8
根线与外设连接,所以8255可以用24根线与外设连接,若进行开关量
控制,则8255可同时控制24路开关。各通道的引脚编号如下:
A口:编号为PA0~PA7,用于8255向外设输入输出8位并行数据。
B口:编号为PB0~PB7,用于8255向外设输入输出8位并行数据。
C口: 编号为PC0~PC7,用于8255向外设输入输出8位并行数据,当
8255工作于应答I/O方式时,C口用于应答信号的通信。
4)8255的工作方式:
8255有3种工作方式,这3种工作方式如表1所示。方式0为基本
I/O输入/输出方式,这是8255最常用,也是最基本的工作方式。方式1
为应答I/O方式,当8255工作于应答I/O方式时,上C口作为A口的通
信线,下C口作为B口的通信线。方式2为双向应答I/O方式,此方式
仅A口使用,B口无双向I/O应答方式。8255的3种工作方式的选择由
8255工作方式选择字决定。
表1 8255的工作方式
5)工作方式选择字:
8255工作方式选择字共8位,如图所示,存放在8255控制寄存器
中。最高位D7为标志位,D7=1表示控制寄存器中存放的是工作方式选
择字,D7 = 0表示控制寄存器中存放的是C口置位/复位控制字。
6)C口置/复位控制字:
8255的C口可进行位操作,即可对8255C口的每一位进行置位或清0
操作,该操作是通过设置C口置/复位字实现的。C口置/复位字共8位,
各位含义如图所示。
三、硬件电路设计:
1、AT89S52单片机最小系统:
2、8255A与AT89S52单片机接口电路设计:
3、8255A驱动16×16 LED点阵电路设计:
8255A的控制口由A1、A0方式字选择,扩展口的0FF28H用于8255A的
PA口,0FF29H用于PB口,0FF2AH用于PC口,0FF2BH用于控制口输出字
选择。
四、软件设计:
1、主程序框图:
2、延时程序框图:
3、8255A输出程序框图:
五、调试与测试结果分析:
1、实验系统连线图:
2、程序调试:
软件为老师所提供提供,其原理在上一模块以作说明,在这里再作
说明,软件经调试无误,直接将其下再到单片机中,看是否达到所要的
效果软件部分是先参考书上的例子,然后自己根据硬件电路写程序,由
于以前所学的是c语言,所以这个系统在编写程序过程中都采用c语言
编写。刚刚开始,编写不会一次性通过,经过仔细分析修改最后编译成
功。但是,在实际写如S52中,LED显示屏出现各种各样的乱码,通过
再次认真仔细分析多次修改程序后,程序能够正常运行。
3、实验结果分析:
通过PC,P1口依次送入汉字的列点阵码,再通过PB/PA对行依次进
行循环扫描,满足行扫描为高电平,列扫描为低电平的交叉处,相对应
的LED灯点亮,否则不亮,由此扫描后所有被点亮的LED灯显示出不同
的“字样”,它们依次循环变现为“东北大学自动化系”八个字样。
六.设计原理阐述
七、参考文献:
1、《单片机原理与接口技术》 马淑华、王凤文、张美金编著,北京
邮电大学出版社;
2、《微型计算机原理与接口技术》 冯博琴、吴宁主编,清华大学出
版社;
3、《单片机原理与接口技术课程设计指导书》东北大学秦皇岛分校自
动化系实验室编著;
4、《单片机原理课程设计指导书—硬件部分》东北大学秦皇岛分校自
动化系实验室编著。
八、设计总结及心得体会
通过这次制作LED点阵屏的学习让我们更加了解单片机AT89S52
的应用,巩固了焊接技术,充分发挥了组员的动手能力,让我们深刻的
体会到团结的力量是无穷的。从老师告诉我们基本方案的制定时,再到
制作电路焊接,最后进行程序调试。在此期间我们遇到很多困难,组员
相互讨论,有些不懂的问老师。我们各自分工,相互协作,一次又一次
品尝到了解决问题的喜悦,最终完成了要求的全部功能,我们学到了很多
东西,最重要的是我们学会了一种精神————永不放弃。还有就是做
什么事都不能急。在以后的时间里面我们会用这种精神去学习。虽然在
制作的过程中有过很多的问题,如、接线错误、程序问题。但是组员都
没有互相指责而是耐心的一起解决问题。当看到产品制作成功时,大家
都很有成就感