单片机系统课程设计1616LED点阵Word文档下载推荐.docx
- 文档编号:16558356
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:11
- 大小:138.67KB
单片机系统课程设计1616LED点阵Word文档下载推荐.docx
《单片机系统课程设计1616LED点阵Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《单片机系统课程设计1616LED点阵Word文档下载推荐.docx(11页珍藏版)》请在冰豆网上搜索。
掉电时能保存显示的信息。
选做:
设计系统与上位机的串行通信电路,用上位计算机控制LED显示器的显示内容。
二设计方案
1任务分析
LED点阵显示屏是利用发光二极管点阵模块或像素单元组成的平面式显示屏幕。
它具有发光效率高、使用寿命长、组态灵活、色彩丰富以及对室内外环境适应能力强等优点。
并广泛的应用于公交汽车,码头,商店,学校和银行等公共场合的信息发布和广告宣传。
LED显示屏经历了从单色,双色图文显示屏到现在的全彩色视频显示屏的发展过程,自20世纪八十年代开始,LED显示屏的应用领域已经遍布交通、电信、教育、证券、广告宣传等各方面。
LED点阵显示屏可以显示数字或符号,通常用来显示时间、速度、系统状态等。
文章给出了一种基于MCS-51单片机的16×
16点阵LED显示屏的设计方案。
包括系统具体的硬件设计方案,软件流程图和部分汇编语言程序等方面。
在负载范围内,只需通过简单的级联就可以对显示屏进行扩展,是一种成本低廉的图文显示方案。
2方案设计
按照系统设计的功能的要求,采用动态扫描方式。
动态扫描方式是逐行轮流点亮,这样扫描驱动电路就可以实现多行的同名列共用一套列驱动器。
以16×
16点阵为例,把所有同一行的发光管的阳极连在一起,把所有同一列的发光管的阴极连在一起(共阳的接法),先送出对应第1行发光管亮灭的数据并锁存,然后选通第1行使其燃亮一定的时间,然后熄灭;
再送出第2行的数据并锁存,然后选通第2行使其燃亮相同的时间,然后熄灭;
…第16行之后,又重新燃亮第1行,反复轮回。
当这样轮回的速度足够快(每秒24次以上),由于人眼的视觉暂留现象,就能看到显示屏上稳定的图形。
该方法能驱动较多的LED,控制方式较灵活,而且节省单片机的资源。
采用扫描方式进行显示时,每一行有一个行驱动器,各行的同名列共用一个驱动器。
显示数据通常存储在单片机的存储器中,按8位一个字节的形式顺序排放。
显示时要把一行中各列的数据都传送到相应的列驱动器上去,这就存在一个显示数据传输的问题。
从控制电路到列驱动器的数据传输可以采用并列方式或串行方式。
显然,采用并行方式时,从控制电路到列驱动器的线路数量大,相应的硬件数目多。
当列数很多时,并列传输的方案是不可取的。
3系统构图
三系统硬件设计
1硬件选择
此次设计的硬件选择如下:
AT89C51芯片、LED、74LS138、LED的驱动三极管、电阻等一些单片机外围应用电路组成。
2单片机的最小系统
ATMEL公司生产的AT89C51单片机它是硬件电路的核心部分,时钟电路晶振使用12MHz,复位电路采取按键复位方式。
单片机系统的晶振电路
单片机系统的复位电路
3点阵驱动设计
74ls138作为列驱动
74LS138为3线-8线译码器,其工作原理如下:
当一个选通端(G1)为高电平,另两个选通端(/(G2A)和/(G2B))为
低电平时,可将地址端(A、B、C)的二进制编码在一个对应的输出端以低
电平译出。
利用G1、/(G2A)和/(G2B)可级联扩展成24线译码器;
若外接一个反
相器还可级联扩展成32线译码器。
用两片74ls138接成的4线——16线译码器
第
(1)片74LS138工作而第
(2)片74LS138禁止,将的0000~0111这8个代码译成8个低电平信号。
而式(3.3.9)表明时,第
(2)片74LS138工作,第
(1)片74LS138禁止,将的1000~1111这8个代码译成8个低电平信号。
这样就用两个3线-8线译码器扩展成一个4线-16线的译码器了。
同时用P1口控制74ls138的输入
用单片机的P0口,P2口作为行驱动
注意:
必须要加上拉电阻。
单片机的自身驱动能力很小,必须要接大电阻进行分压,才能正常运行。
4led点阵的介绍
8*8单色点阵共需要64个发光二级管组成,且每个发光二级管放在行线与列线的叉点上。
8*8点阵内部结构图如下:
点阵内部图
4个8*8点阵级联构成16*16点阵如下图:
5led点阵显示模块的方法
1)水平方向扫描,即逐列扫描,此时用一个P口输出列码决定哪一列能亮(相当于位码),用另外的一个P口输出行码(列数据),决定该行上哪个led亮(相当于断码)。
能亮的列从左到右扫描完16列(相当于位码循环移动16次)即显示出一个完整的图像。
2)竖直方向扫描,即逐行扫描,此时用一个P口输出决定哪一行能亮(相当于位码,另外一个P口输出列码决定该行上哪些led灯亮(相当于断码)。
能亮的行从上到下扫描完16行即显示一帧完整的图像。
本设计采用的第一种扫描方式,即水平扫描法。
四系统软件设计
1主程序设计
系统软件的主要功能是向LED显示器提供显示数据,并产生行扫描信号和其它控制信号,配合完成LED显示器的扫描显示工作。
其中要有延时程序,即显示程序之后调用延时。
系统软件可用汇编语言完成,也可以用C语言编写。
系统主程序开始以后,首先初始化;
然后根据设计好的效果显示图形或文字。
由于单片机没有停机指令,所以可以设置系统不断地循环执行显示效果。
显示驱动程序在进入中断后首先要对定时器重新赋初值,以保证LED显示器刷新率的稳定性。
然后显示驱动程序查询当前燃亮的行号,从显示缓冲区内读取下一行的显示数据,并发送出去。
为消除在切换行显示数据的时候产生拖尾现象,驱动程序首先要关闭显示器,即消隐,等显示数据打入输出锁存器并锁存,然后再输出新的行号,重新打开显示。
2主程序流程图
3延时程序模块
本次设计采用了c51编程方法,相比汇编,在字节上长但是语句很少,延时程序编写很简单,但是需要注意的是扫描间隙延时,时间太长会造成闪烁,太短会重影。
voiddelay(unsignedintcnt)
{
while(--cnt);
}
五、调试及性能分析
1调试分析
软件调试主要是程序调试。
对主程进行分块调试,即对各个子功能模块进行调试。
硬件调试主要是检测硬件电路是否有短路、断路、虚焊等。
具体步骤及测试结果如下:
(1)检查电源与地线是否全部连接上,用万用表对照电路原理图测试各导线是否完全连接,对未连接的进行修复。
(2)参照原理图,检查各个器件之间的连接是否连接正确,是否存在虚焊,经测试,各连接不存在问题。
软件调试初期,发现led并不能正常显示,发现不能换字,才发现在程序中和软件系统中没有加入复位清零端,不能保证74138正常驱动,稍加改动后,可以换字,但是却有重影的问题,得知扫描时间给的过短,不断更改调试,最终趋于稳定。
硬件调试中,在焊接完后,发现在封装画板的时候画错了很多地方,晶振电路电源接反,要在后面用线重连,点阵也有行列画反的情况,出来的现象是阴文,也要在后面进行搭线才能完成。
2性能分析
此点阵能够正常上电,复位,显示正常,亮度刚好,但是由于只能显示一个字,在生活中并不常用,在此基础上可以稍加扩展,做更大的多字点阵。
六、心得体会
虽然本设计只使用了一块16×
16LED点阵,电路简单,但是已经包涵了LED显示屏的电路基本原理和基本程序,在设计的过程中应该使显示图形和文字稳定、清晰无串扰。
图形或文字显示有静止、移入移出等显示方式。
本系统具有硬件少,结构简单,容易实现,性能稳定可靠,成本低等特点。
在此次设计中通过查阅大量的相关资料,详细了解了LED的发光原理和LED显示屏的原理,了解了LED的现状,清楚地了解了LED显示屏与其它显示屏相比较有那些优点,明确了研究目标。
通过这次课程设计,重新复习并进一步学习了MCS-51;
熟练掌握了WORD软件的使用。
进一步提高了自己在实际设计过程中研究问题、发现问题、解决问题的能力。
但是从中也存在不足之处:
对知识的积累还不够,有些问题自己不能够独立解决,对实验操作还要进一步熟练,只有这样才能让自己在不断的学习中提高自己。
七、参考文献
[1]胡汉才.单片机原理与接口技术[M].北京:
清华大学出版社,1995.6.
[2]楼然苗等.51系列单片机设计实例[M].北京:
北京航空航天出版社,2003.3.
[3]何立民.单片机高级教程[M].北京:
北京航空航天大学出版社,2001.
[4]赵晓安.MCS-51单片机原理及应用[M].天津:
天津大学出版社,2001.3.
[5]薛均义、张彦斌.MCS-51系列单片微型计算机及其应用.--西安:
西安交通大学出版社2005.1
[6]夏继强.单片机实验与实践教程[M].北京:
北京航空航天大学出版社,2001.
附录一:
系统原理图
附录二:
程序清单
#include<
reg52.h>
sbitD1=P3^0;
unsignedcharconstone[]={0x00,0x00,0x3C,0x06,0x30,0x46,0x36,0x66,0x36,0x66,0x36,0x66,0x36,0x66,0x77,0xFE,0x77,0xFE,0x36,0x66,0x36,0x76,0x36,0x7E,0x36,0x6E,0x30,0x66,0x3C,0x06,0x00,0x00};
unsignedcharconstsecond[]={0x00,0x00,0x18,0x04,0x1A,0x0C,0x5B,0x1C,0x79,0xB0,0x78,0xE0,0x1F,0xF0,0x1C,0x1C,0x18,0x08,0x00,0x00,0x1F,0xF0,0x00,0x00,0x00,0x03,0x7F,0xFE,0x7F,0xFC,0x00,0x00};
unsignedcharconstthird[]={0x10,0x08,0x31,0x0C,0x3F,0xF8,0x3F,0xF8,0x31,0x10,0x30,0x12,0x10,0x36,0x10,0x34,0x7F,0xFC,0x16,0xB8,0x16,0xB0,0x16,0xB0,0x7F,0xFC,0x7F,0xFC,0x10,0x36,0x00,0x20};
unsignedcharcodeseg[]={0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f};
/*------------------------------------------------
延时程序
------------------------------------------------*/
voiddelay(unsignedintcnt)
主程序
main()
unsignedinti=0,j=0,k=0;
P0=0x00;
P2=0x00;
while
(1)
{
for(k=0;
k<
=900;
k++)
P0=one[i];
//取显示数据
i=i+1;
P2=one[i];
//取位码
D1=1;
P1=seg[j];
delay(300);
//扫描间隙延时,时间太长会造成闪烁,太短会重影
D1=0;
i++;
j++;
if(i==30)i=0;
if(15==j)j=0;
delay(50);
}
/*******************/
P0=second[i];
P2=second[i];
}
/******************/
P0=third[i];
P2=third[i];
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 系统 课程设计 1616 LED 点阵