16×16点阵LED电子显示屏的设计(可打印修改)

合集下载

4个16x16点阵LED电子显示屏

4个16x16点阵LED电子显示屏

毕业设计论文点阵LED电子显示屏的设计系电子信息工程系专业应用电子技术姓名刘凯班级电子093 学号0901023317 指导教师孙玲职称副教授设计时间2011.9.22-2011.12.23江苏信息职业技术学院毕业设计(论文)目录第一章引言 (3)第二章系统方案设计 (5)第三章系统硬件电路的设计 (6)3.1 单片机系统及其外围电路 (6)3.2 行驱动电路 (6)3.3 列驱动电路 (6)第四章系统程序的设计 (8)4.1 显示驱动程序 (8)4.2 系统主程序 (9)第五章调试及性能分析................... 错误!未定义书签。

第六章控制源程序清单.. (10)6.1 单片机汇编源程序清单...................... 错误!未定义书签。

6.2单片机C源程序清单........................ 错误!未定义书签。

第七章结语 .. (18)参考文献 (19)4个16×16LED点阵电子显示屏的设计摘要:本设计以单片机AT89C52为核心,构成了4个中论文详细介绍了LED点阵显示的硬件设计思路、硬件电路各个部分的功能及原理、相应软件的程序设计,以及使用说明等。

关键词:LED;点阵显示;AT89C52;74LS595江苏信息职业技术学院毕业设计(论文)第一章引言LED显示屏是利用发光二极管点阵模块或像素单元组成的平面式的显示屏,LED显示屏分数码显示屏、图文显示屏和视屏显示屏,都是由LED矩阵块组成。

由于它具有体积小、放光效率高、工作电压低、功耗小、寿命长、组态灵活、色彩丰富、耐冲击性和性能稳定等优点,因而受到广泛的重视而得到发展。

近年LED显示屏已广泛应用于室内、外需要进行服务内容和服务宗旨宣传的公众例如银行、邮电、店铺、商场、车站、交易市场、医院、体育场等多种场合。

目前,对于那些需要显示的信息量不是很大,分辨率不是很高,又需要制造成本相对比较低的场合,使用大、小屏幕LED点阵显示器是比较经济适用的,它可以用单片机控制实现显示字符、数字、汉字和简单图形,可以根据需要使用不同字号、字型。

16×16点阵LED电子显示屏的设计

16×16点阵LED电子显示屏的设计

单片机课程设计16×16点阵LED电子显示屏的设计题目:16×16点阵LED电子显示屏的设计姓名:学号:专业班级:指导老师:摘要:LED显示屏作为一种新型的显示器件,是由多个发光二极管按矩阵形式排列封装而成,通常用来显示时间、图文等信息。

本设计是基于MCS-51单片机的16x16显示屏,其中包含了硬件、软件、调试等方案的设计。

此外、该设计只需简单的级联就能实现显示屏的拓展,但级联时要注意不要超过驱动负载范围。

关键词:MCS-51;LED;单片机一、概述当今社会在飞速发展无疑能源、健康、空间的利用,成了人们着重关注的对象。

而在这个信息传递极速的社会,LED的出现给人们带来了希望之光。

LED的特色之处一是节能(直接功耗,间接耗能),二是基本无电离辐射,三提高空间利用率。

而这些特色又恰好解决了上述的三种问题。

然而LED点阵显示屏的特点不仅仅于此LED点阵显示屏用的是数码管,而数码管具有实用,便宜等优点。

做出来的LED点阵显示很耐用。

LED点阵显示屏之所以受到广泛重视而得到迅速发展,是与LED显示屏本身所具有的优点分不开的。

LED点阵显示屏的发展前景极为广阔,目前正朝着更高亮度、更高耐气候性、更高的发光密度、更高的发光均匀性,可靠性、全色化方向发展。

二、简介组合型led点阵显示器以发光二极体为图素,它用高亮度LED晶粒进行阵列组合后,再透过环氧树脂和塑模封装而成。

具有高亮度、功耗低、引脚少、视角大、寿命长、耐湿、耐冷热、耐腐蚀等特点。

点阵显示器有单色和双色两类,可显示红,黄,绿,橙等。

LED点阵有4×4、4×8、5×7、5×8、8×8、16×16、24×24、40×40等多种;根据图素的数目分为等,双原色、三原色等,根据图素顏色的不同所显示的文字、图像等内容的顏色也不同,单原色点阵只能显示固定色彩如红、绿、黄等单色,双原色和三原色点阵显示内容的顏色由图素内不同顏色发光二极体点亮组合方式决定,如红绿都亮时可显示黄色,如果按照脉冲方式控制二极体的点亮时间,则可实现256或更高级灰度显示,即可实现真彩色显示。

16×16点阵LED电子显示屏设计

16×16点阵LED电子显示屏设计
第十八届大学生专业素质能力竞赛
电子设计竞赛
16×16点阵LED电子 显示屏的设计
硬件设计: 软件设计: 报告设计:
背景介绍


LED电子显示屏是利用发光二极管点阵模块 组成的平面式显示屏幕。他具有发光效率高、使用 寿命长、组态灵活、色彩丰富以及对室内外环境适 应能力强等优点,并广泛用于公交汽车、码头、商 店、学校和银行等公共场合,用于信息的发布和广 告宣传。 自20世纪八十年代开始,LED电子显示屏的应 用领域已经遍布了交通、电信、教育、广告宣传等 各方面。LED电子显示屏发展较快,其无论在成本 和产生的社会效益等方面都有其独特的优势。



仍然感谢这次机会,因为被拒绝是面试后的两种结 果之一。 被拒绝是招聘单位对我们综合考虑的结果,因为我 们最关心的是自己什么地方与用人要求不一致,而 不仅仅是面试中的表现。 不要欺骗自己,说“我本来就不想去”等等。 认真考虑是否有必要再做努力。

必须学会欣然面对的一种结果----被接纳


功能介绍
本作品的功能: 可以显示静态的汉字 可以实现动态显示,显 示的内容有左移、右移、 上移、下移等 可以通过上位机(PC机) 更新显示的内容
作品设Байду номын сангаас介绍

1、点阵发光二极管:LED点阵显示屏通常是由若 干块LED点阵显示模块组成。8×8点阵是最基本 的单元模块,它由64个发光二极管组成,每个发 光二极管是放置在行线和列线的交叉点上。所以 由四块的8×8点阵就可构成一块16×16点阵模块。
5、硬件电路原理图
6、系统PCB图
设计心得

通过这次的电子设计竞赛,让我们 的实践动手能力得到了很大的提高,明 白了理论学习联系到实践应用当中的重 要性,培养了我们团结合作、吃苦耐劳 的精神,而且更让我们认识到一个团队 只有具备良好的团结协作精神才能做出 出色的作品!

LED1616点阵屏设计

LED1616点阵屏设计

单片机课程设计题目:LED 16*16 点阵屏设计一、设计要求(1)使用硬件:89S51(89S52)、LED8*8点阵模块、74LS244、74LS07 (2)编程实现:翻页显示“北方工业大学”或滚动显示。

二、设计原理1、点阵屏原理点阵部结构及外形如下,8X8点阵共由64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一行置1电平,某一列置0电平,则相应的二极管就亮;如要将第一个点点亮,则9脚接高电平13脚接低电平,则第一个点就亮了;如果要将第一行点亮,则第9脚要接高电平,而(13、3、4、10、6、11、15、16)这些引脚接低电平,那么第一行就会点亮;如要将第一列点亮,则第13脚接低电平,而(9、14、8、12、1、7、2、5)接高电平,那么第一列就会点亮.一般我们使用点阵显示汉字是用的16*16的点阵宋体字库,所谓16*16,是每一个汉字在纵、横各16点的区域显示的。

也就是说得用四个8*8点阵组合成一个16*16的点阵。

如下图所示,要显示“你”则相应的点就要点亮,由于我们的点阵在列线上是低电平有效,而在行线上是高电平有效,所以要显示“你”字的话,它的位代码信息要取反,即所有列(13~16脚)送(11111,0xF7,0x7F),而第一行(9脚)送1信号,然后第一行送0。

再送第二行要显示的数据(13~16脚)送(11111,0xF7,0x7F),而第二行(14脚)送1信号。

依此类推,只要每行数据显示时间间隔够短,利用人眼的视觉暂停作用,这样送16次数据扫描完16行后就会看到一个“你”字;第二种送数据的方法是字模信号送到行线上再扫描列线也是同样的道理。

同样以“你”字来说明,16行(9、14、8、12、1、7、2、5)上送(00000,0x00,0x00)而第一列(13脚)送、“0”。

同理扫描第二列。

当行线上送了16次数据而列线扫描了16次后一个“你”字也就显示出来了。

16×16 LED点阵设计-毕业设计.

16×16 LED点阵设计-毕业设计.

16×16 LED点阵设计学生:指导教师:内容摘要:LED点阵电子显示屏的发展越来越好广泛,它成为一个宣传信息的重要平台,已经得到了社会的普遍认同。

LED点阵显示屏是利用发光二极管点阵模块或像素单元组成的平面式显示屏幕。

它具有发光效率高、使用寿命长、组态灵活、色彩丰富以及对室内外环境适应能力强等优点。

该设计是一个16×16LED点阵电子显示屏显示数字的设计。

整块电子显示屏的控制核心是40引脚的单片机AT89S51,说明了LED点阵电子显示屏用AT89S51为控制系统的动态的设计和开发的具体过程。

通过该芯片控制两个列驱动器74HC595来驱动显示屏显示,本设计就是使用4块8×8点阵显示模块来组成16×16点阵显示屏,采用动态扫描显示,程序编写的实现是使用简单流通性强的C语言,该设计的结果证明,系统显示清晰,结构合理,误差小,扩展能力强,性能稳定。

关键词:AT89S51 LED点阵数字显示Design of 16*16 LED dot matrixAbstract:LED electronic display found the screen better and better.It has become an important platform of a promotional information,it has been widely accepted by the society,LED dot matrix display is the use of plane composition LED lattice module or pixel unit display screen ,It has the advantages of high light efficiency ,long.The designed is a digital design of a 16*16 LED dot matrix display ,control the core piece of electronic display is the 40 pin of the microcontroller AT89S51.Describes the specific process of the design and development of LED dot matrix display with AT89S51 as the control system dynamic.Through the control two columns drive chip 74HC595 are needed to drive the display shows that this design is to use 4 pieces of 8 x 8 dot matrix display module to form a 16 * 16 dot matrix display screen, a dynamic scans showed that the realization of the programming is simple to use strong liquidity of C language, and the design results show that the system shows clear, reasonable structure, little error and extension ability strong, stable performance.Keywords: AT89C51 dot matrix LED the digital display screen目录前言 (1)1 设计方案的论证与选择 (1)2 硬件电路设计 (3)2.1 系统的结构框图 (3)2.1.1 单片机控制模块 (3)2.1.2 时钟电路 (4)2.1.3 复位电路 (4)2.1.4 显示模块 (5)2.1.5 驱动模块 (7)2.2 单片机的最小系统图 (9)3 单片机系统 (10)3.1 8051引脚为40个的单片机芯片 (11)3.1.1 引脚为Vcc和Vss 的主电源 (11)3.1.2 外接晶体引脚XTAL1和XTAL2 (11)3.2 I/O口线的引脚排列及管脚的说明 (11)3.3 RST键 (13)3.4 PEROM阵列和锁定位 (13)4 系统软件设计 (13)4.1 主程序的设计及流程图 (13)4.2 显示程序的设计 (14)5 硬件的制作与调试 (15)5.1 系统的组装 (15)5.2 程序的调试 (16)6 结束语 (17)附录 (18)附录1:程序清单 (18)附录2:仿真结果图 (22)附录3:Protel原理图 (23)附录4:4个8*8LED组成的显示屏 (24)附录5:PCB图 (25)参考文献 (26)16×16 LED点阵电子显示屏的设计前言LED点阵电子显示屏的制作简单,并且便于安装,被广泛的应用于各个公共场合,但是LED 电子显示屏也只能用于单一的图像数字汉字的显示,如果要改变显示的内容,必须要在上位机上进行实现。

单片机课程设计--+16x16点阵LED电子显示屏的设计

单片机课程设计--+16x16点阵LED电子显示屏的设计

单片机课程设计-- 16x16点阵LED电子显示屏的设计第一章系统总体方案设计LED驱动显示采用动态扫描方法, 动态扫描方式是逐行轮流点亮, 这样扫描驱动电路就可以实现多行的同名列共用一套列驱动器。

以16×16点阵为例, 把所有同一行的发光管的阳极连在一起, 把所有同一列的发光管的阴极连在一起(共阳的接法), 先送出对应第1行发光管亮灭的数据并锁存, 然后选通第1行使其燃亮一定的时间, 然后熄灭;再送出第2行的数据并锁存, 然后选通第2行使其燃亮相同的时间, 然后熄灭;…第16行之后, 又重新燃亮第1行, 反复轮回。

当这样轮回的速度足够快(每秒24次以上), 由于人眼的视觉暂留现象, 就能看到显示屏上稳定的图形。

该方法能驱动较多的LED, 控制方式较灵活, 而且节省单片机的资源。

显示数据传输采用串行传输的方法, 控制电路可以只用一根信号线, 将列数据一位一位传往列驱动器, 在硬件方面无疑是十分经济的。

但串行传输过程较长, 数据按顺序一位一位地输出给列驱动器, 只有当一行的各列数据都已传输到位之后, 这一行的各列才能并行地进行显示。

对于串行传输方式来说, 列数据准备时间可能相当长, 在行扫描周期确定的情况下, 留给行显示的时间就太少了, 以致影响到LED的亮度。

采用串行传输中列数据准备和列数据显示的时间矛盾, 可以采用重叠处理的方法。

即在显示本行各列数据的同时, 传送下一行的列数据。

为了达到重叠处理的目的, 列数据的显示就需要有锁存功能。

对于列数据准备来说, 它应能实现串入并出的移位功能。

这样, 本行已准备好的数据打入并行锁存器进行显示时, 串行移位寄存器就可以准备下一行的列数据, 而不会影响本行的显示。

系统框图如图一图一点阵显示器硬件系统框图第二章系统硬件电路的设计硬件电路大致上可以分为单片机系统及外围电路、列驱动电路和行驱动电路三部分。

一. 单片机系统及外围电路单片机采用89C51或更高频率的晶振, 以获得较高的刷新频率, 使得显示更稳定。

(完整版)16×16点阵LED电子显示屏的设计_毕业论文

(完整版)16×16点阵LED电子显示屏的设计_毕业论文

16×16点阵LED电子显示屏的设计摘要LED点阵显示屏作为一种新兴的显示器件,是由多个独立的LED发光二极管封装而成. LED点阵显示屏可以显示数字或符号, 通常用来显示时间、速度、系统状态等。

本设计是1616××16点阵LED电子显示屏的设计。

整机以美国ATMEL公司生产的40脚单片机AT89C51为核心,介绍了以它为控制系统的LED点阵电子显示屏的动态设计和开发过程。

通过该芯片控制一个行驱动器74LS154和两个列驱动器74L373来驱动显示屏显示。

该电子显示屏可以显示各种文字或单色图像,采用4块8 x 8点阵LED显示模块来组成一个16x16点阵显示模式。

显示采用动态显示,使得图形或文字能够实现静止、移入移出等多种显示方式。

文中详细介绍了LED点阵显示的硬件设计思路、硬件电路各个部分的功能及原理、相应软件的程序设计,以及使用说明等。

关键词:AT89C51单片机 LED 点阵显示动态显示AbstractAs a popular display device component, LED dot-matrix display board consists of several independent LED (Light Emitting Diode).The LED dot-matrix display board can display the number or sign,and it is usually used to show time, speed, the state of system etc.This design is 1 16 ×16 lattice LED electron display monitor design.The whole equipment is with the 40-pin AT89C51 MCU (Micro Controller Unit) produced by the American ATMEL company at thecore, introduced take it as the control system LED lattice electron display monitor dynamic design and the development process. Controls good driver 74LS154 an two row driver 74L373 through thischip actuates the display monitor demonstration. The electronic screen can show all kinds of written or monochrome images, one full screen display Chinese characters, four pieces of 8 x 8 dot-matrix LEDdisplay modules to form the 16x16 dot matrix display mode. Show dynamic show that makes static graphic or text can be achieved, shifted out of various formats. This paper describes the of the LEDdot matrix display, and the principle function of the various parts ofthe circuit, the corresponding software program design and the use of some such. Key words: AT89C51 Micro Controller U nitUnit; LED; LatticeDisplay;Dynamic Display目录第1章绪论1.1 选题背景LED显示屏是八十年代后期在全球迅速发展起来的新型信息显示媒体,显示屏由几万……几十万个半导体发光二极管像素点均匀排列组成。

16×16点阵LED电子显示屏的设计_864

16×16点阵LED电子显示屏的设计_864

告宣传。

自20世纪八十年代开始,LED电子显示屏的应
用领域已经遍布了交通、电信、教育、广告宣传等
各方面。LED电子显示屏发展较快,其无论在成本
和产生的社会效益等方面都有其独特的优势。
功能介绍
本作品的功能:
可以显示静态的汉字
可以实现动态显示,显 示的内容有左移、右移、 上移、下移等
可以通过上位机(PC机) 更新显示的内容
作品设计介绍
1、点阵发光二极管:LED点阵显示屏通常是由若 干块LED点阵显示模块组成。8×8点阵是最基本 的单元模块,它由64个发光二极管组成,每个发 光二极管是放置在行线和列线的交叉点上。所以 由四块的8×8点阵就可构成一块16×16点阵模块。
2、图文显示原理: 控制相关位置的发光二极管的点亮
要性,培养了我们团结合作、吃苦耐劳
的精神,而且更让我们认识到一个团队
只有具备良好的团结协作精神才能做出
出色的作品!
谢 谢 大 家!
The end
祝电子设计大赛圆 满成功!!
16×16点阵LED电子显示屏的设计
16×16点阵LED电子 显示屏的设计
硬件设计: 软件设计: 报告设计:
背景介绍

LED电子显示屏是利用发光二极管点阵模块
组成的平面式显示屏幕。他具有发光效率高、使用
寿命长、组态灵活、色彩丰富以及对室内外环境适
应能力强等优点,并广泛用于公交汽车、码头、商
店、学校和银行等公共场合,用于信息的发布和广
或熄灭,即可产生文字或图案的效果。通常把要显示的 图形或文字转换成点阵,再按照显示控制的要求以一定 的格式形成显示数据。
3、硬件电路设计

本次设计硬件电路大致上可以分为单片机系统及外

16乘16点阵LED电子显示屏的设计

16乘16点阵LED电子显示屏的设计

16乘16点阵LED电子显示屏的设计概述本文将讨论16乘16点阵LED电子显示屏的设计。

这是一个可以显示图形和文字的电子屏幕,使用16列和16行LED灯来组成一个点阵,可以显示256个像素。

这样的屏幕可以广泛应用于科技展示、娱乐游戏和家庭电子设备等领域。

设计硬件LED灯基本的LED操作和驱动电路在这里不再赘述。

需要注意的是,对于16行LED 灯和16列LED灯,需要使用合适的电流控制电路并且保证它们可以受到足够的电流。

此外,将需要16个NPN晶体管来控制16列LED灯,和16个PNP晶体管来控制16行LED灯。

控制器在控制器的选择上推荐使用ATmega328p微控制器。

这个控制器也是Arduino Uno的基础。

软件代码结构代码文件应当按照以下结构进行组织:Libraries/SevSeg/SevSeg.hLedControl/LedControl.hLedControl.cppMAX7219.hMAX7219.cppSPI.hSPI.cpp16x16LEDMatrix/16x16LEDMatrix.inoREADME.md这里我们使用SevSeg和LedControl库。

打包由于ATmega328p微控制器的内存限制,将需要对代码进行压缩,以减小程序的尺寸,使它适合在所预算的存储设备中运行。

可以通过使用压缩工具完成这个任务。

推荐使用zip或tar。

结论在这篇文档中,我们讨论了16乘16点阵LED电子显示屏的设计。

我们详细介绍了硬件和软件方面的设计需求以及代码结构的组织。

通过对这些内容的了解,你可以开始创建你自己的16乘16点阵LED电子显示屏!。

16x16点阵课程设计--16×16点阵LED电子显示屏的设计

16x16点阵课程设计--16×16点阵LED电子显示屏的设计

天津理工大学中环信息学院电子系单片机课程设计报告题目:16×16点阵LED电子显示屏的设计班级 10信科一指导教师田野设计成员陈诗静林樟侯成飞电子系2013年07月 05日三、课程设计进度计划及检查情况记录表四、成绩评定与评语目录一.课程设计意义 (2)二.课程设计任务书 (3)三、课程设计进度计划及检查情况记录表 (4)四、成绩评定与评语 (4)一、总体设计方案 (6)1.1 总体设计 (6)1.2 硬件设计 (7)1.3 软件设计 (14)二、设计内容 (16)2.1 系统硬件原理图与仿真 (16)2.2 程序清单 (18)三.结论、建议及课程设计体会 (22)四.参考文献 (22)一、总体设计方案1.1 总体设计1.1.1 工作原根据功能要求,应采用动态显示的设计方法,同时为简化设计,减少硬件数量,显示数据的传输采用串行传输方式。

(1)熟悉AT89S51单片机系统的使用方法。

(2)掌握动态显示原理及实现方法。

(3)初步掌握AT89S51单片机编程方法。

(4)掌握串行数据传输方式的应用。

(5)实现利用AT89S51单片机控制的LED图文屏正常工作。

1.1.2 硬件部分总体设计根据功能要求,采用AT89C51单片机,动态显示的设计方法,同时为简化设计,减少硬件数量,显示数据的传输采用串行传输方式,列扫描地址用P1口控制,总体结构框图如下:图1-1 系统总体结构框图1.2 硬件设计系统的组成,硬件的选用,芯片的特点1.2.1 8051系列的单片机AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

图片见下图:图 1-2 89C51管脚图(1).管脚说明VCC:供电电压。

GND:接地。

P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。

当P1口的管脚第一次写1时,被定义为高阻输入。

P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。

在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

16乘16点阵LED电子显示屏的设计

16乘16点阵LED电子显示屏的设计

邢台职业技术学校Xingtai Polytechnic Institute 毕业设计(论文)题目16×16点阵LED电子显示屏的设计班级应电081姓名杨艳德指导教师唐俊英16×16点阵LED电子显示屏的设计目录摘要 (3)关键词 (3)前言 (4)1.背景介绍 (5)1.1 LED及LED显示屏 (5)1.2 MCS-51系列单片机简介 (6)1.2.1 MCS-51系列单片机及其特点 (6)1.2.2 单片机的发展历史简介 (6)3.功能要求 (7)4.方案实现 (7)4.1 系统硬件电路的设计 (8)4.1.1单片机系统及外围电路 (9)4.1.2列驱动电路 (9)4.2.系统程序的设计 (11)4.2.1显示驱动程序 (11)4.2.2系统主程序 (12)5性能分析 (19)5.1 性能分析 (19)总结 (20)摘要LED点阵显示屏作为一种新兴的显示器件,是由多个独立的LED发光二极管封装而成. LED点阵显示屏可以显示数字或符号, 通常用来显示时间、速度、系统状态等。

文章给出了一种基于MCS-51单片机的16×16 点阵LED显示屏的设计方案。

包括系统具体的硬件设计方案,软件流程图和部分汇编语言程序等方面。

在负载范围内, 只需通过简单的级联就可以对显示屏进行扩展,是一种成本低廉的图文显示方案。

关键词:MCS-51;LED;单片机前言LED显示屏显示画面色彩鲜艳,立体感强,静如油画,动如电影,广泛应用于车站、码头、机场、商场、医院、宾馆、银行、证券市场、建筑市场、拍卖行、工业企业管理和其它公共场所。

在实际应用中的显示屏由于成本和可靠性的因素常采用一种称为动态扫描的显示方法。

本文设计的是一个室内用16x16的点阵LED图文显示屏,图形或文字显示有静止、移入移出等显示方式。

LED显示屏分为数码显示屏、图文显示屏和视频显示屏,均由LED矩阵块组成。

LED数码显示屏的显示器件为7段码数码管,适于制作时钟屏、利率屏等,显示数字的电子显示屏。

16乘16点阵LED电子显示屏的设计

16乘16点阵LED电子显示屏的设计

邢台职业技术学校Xingtai Polytechnic Institute 毕业设计(论文)题目16×16点阵LED电子显示屏的设计班级应电081姓名杨艳德指导教师唐俊英16×16点阵LED电子显示屏的设计目录摘要 (3)关键词 (3)前言 (4)1.背景介绍 (5)1.1 LED及LED显示屏 (5)1.2 MCS-51系列单片机简介 (6)1.2.1 MCS-51系列单片机及其特点 (6)1.2.2 单片机的发展历史简介 (6)3.功能要求 (7)4.方案实现 (7)4.1 系统硬件电路的设计 (8)4.1.1单片机系统及外围电路 (9)4.1.2列驱动电路 (9)4.2.系统程序的设计 (11)4.2.1显示驱动程序 (11)4.2.2系统主程序 (12)5性能分析 (19)5.1 性能分析 (19)总结 (20)摘要LED点阵显示屏作为一种新兴的显示器件,是由多个独立的LED发光二极管封装而成. LED点阵显示屏可以显示数字或符号, 通常用来显示时间、速度、系统状态等。

文章给出了一种基于MCS-51单片机的16×16 点阵LED显示屏的设计方案。

包括系统具体的硬件设计方案,软件流程图和部分汇编语言程序等方面。

在负载范围内, 只需通过简单的级联就可以对显示屏进行扩展,是一种成本低廉的图文显示方案。

关键词:MCS-51;LED;单片机前言LED显示屏显示画面色彩鲜艳,立体感强,静如油画,动如电影,广泛应用于车站、码头、机场、商场、医院、宾馆、银行、证券市场、建筑市场、拍卖行、工业企业管理和其它公共场所。

在实际应用中的显示屏由于成本和可靠性的因素常采用一种称为动态扫描的显示方法。

本文设计的是一个室内用16x16的点阵LED图文显示屏,图形或文字显示有静止、移入移出等显示方式。

LED显示屏分为数码显示屏、图文显示屏和视频显示屏,均由LED矩阵块组成。

LED数码显示屏的显示器件为7段码数码管,适于制作时钟屏、利率屏等,显示数字的电子显示屏。

16×16-LED点阵电子显示屏的设计

16×16-LED点阵电子显示屏的设计

嵌入式系统原理课程设计目录一、课程设计的目的: ............................................ 错误!未定义书签。

二、课程设计的任务 (1)三:课程设计实验原理及步骤 (1)3.1系统硬件总体设计 (2)3.2系统的软件设计 (5)四、调试 (6)五、课程设计代码 (7)六、总结 (11)七、人员分配 (11)一、课程设计的目的:通过本次课程设计实践,熟悉和掌握嵌入式系统的软件、硬件设计方法,设计步骤,提高综合应用所学知识及动手和分析问题,解决问题的能力;同时还应达到以下目的:1、了解点阵LED显示的基本工作原理和工作过程;2、熟悉cortex-M3的GPIO使用及其相关API函数;3、熟悉混合总线通信编程方法及通信格式;4、学习HD7279键盘、显示接口芯片的工作方式及应用编程;5、学习16*16LED点阵显示汉字的控制方法及应用编程。

二、课程设计的任务:设计一个波形发生器电路,通过键盘的按键,控制产生不同的波形输出;1、采用DA转换器进行数/模转换,产生连续的正弦波和锯齿波输出。

2、通过键盘的按键控制输出的波形;如:按一下一个键,输出正弦波;再按一下另一个键,输出锯齿波,如此循环。

3、使用cortex-M3的SSI模块,通过SPI模式,控制DA转换器完成转换。

提示:1)、用LM3S9B96的SSI模块,通过SPI模式,控制DA转换器完成转换。

2)、由TLV5616DA转换器芯片,实现正弦波和锯齿波输出。

3)、由HD7929键盘、显示接口芯片,进行键盘按键值的输入。

三:课程设计实验原理及步骤3.1系统硬件部分设计系统硬件部分电路大致上可以分成电源电路、单片机最小系统电路及外围电路、列扫描电路、行扫描电路和LED显示屏电路五部分。

3.1.1整体模块设计本设计行、列驱动电路,显示屏电路,运用单片机的智能化,系统的将每个功能电路模块连接在一起,总体结构设计如下图2.1所示:图2.1 系统结构设计总图总体硬件电路设计在整个电路设计中,用两片8位输出锁存移位寄存器74HC595作为列扫描,用两片74LS164芯片作为行扫描,用单片机AT89S52对74HC595和74HC164进行控制和驱动。

16×16点阵LED电子显示屏的设计

16×16点阵LED电子显示屏的设计

机器人创新设计课程设计报告书题目:16×16点阵LED电子显示屏的设计:津学号:1613010320专业:国际经济与贸易指导老师:于大泳设计时间:2017年3月管理学院目录1. 引言 (3)1.1 设计意义 (3)1.2 系统功能要求 (3)2. 方案设计 (4)3. 硬件设计 (5)4. 软件设计 (8)5. 系统调试 (9)6. 设计总结 (11)7. 附录A.:源程序 (11)8. 附录B.:作品实物照片 (16)9. 参考文献 (17)16×16点阵LED电子显示屏的设计1.引言1.1 设计意义目前广告牌具有显示容丰富、信息量大、信息更换速度快等特点。

因此传统的LED显示屏控制系统已经越来越不能满足现代广告宣传业的需要。

而利用PC 机通信技术控制LED显示屏,则具有显示容丰富,信息更换灵活等优点。

1.2 系统功能要求本设计是一16×16点阵LED电子显示屏的设计。

整机以40脚单片机AT89C51为核心,通过该芯片控制列驱动器74HC595来驱动显示屏显示。

该电子显示屏可以显示各种文字或单色图像,全屏能显示1个汉字。

显示可以采用动态显示,使得图形或文字能够实现静止、移入移出等多种显示方式。

开关控制显示“矿大电气五班”、“电子综合设计”的字幕。

同时还要实现的功能:5V的电压输入,时钟电路的设置,复位电路的设置,单片机给74HC154芯片同时给E1和E2低电平,74LS154才能正常的工作。

例如如果想使左上角LED点亮,则Y0=1,X0=0即可。

应用时限流电阻可以放在X轴或Y,16*16LED点阵如图1.2.1所示。

图1.2.12.方案设计16X16点阵LED 工作原理说明 : 16X16点阵共需要256个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一列置1电平,某一行置0电平,则相应的二极管就亮;因此要实现一根柱形的亮法,对应的一列为一根竖柱,或者对应的一行为一根横柱,因此实现柱的亮的方法如下所述:一根竖柱:对应的列置1,而行则采用扫描的方法来实现。

16乘16点阵显示综合设计报告

16乘16点阵显示综合设计报告

一、方案设计本设计大概包括时钟源、CPLD芯片,显示器。

此次实验所用的可编程逻辑器件的主芯片为EPF10K10LC84-3。

通过VHDL语言进行编程分别把程序模块进行编译仿真。

所编的十六进制计数器控制花样信号对字符库进行选择,计数器产生的花样信号和时钟信号共同控制行选信号和列选信号(列选频率一定要比字选频率大很多)把相应的值输入点阵,控制显示器显示相应的字符。

时钟源信号要高于24HZ 。

所分模块有:1、字选模块:为十六进制计数器模块,其时钟源信号要比列选信号小得多。

2、列选信号:通过给定的时钟信号用来选中列,再对列进行扫描。

3、显示模块:经过字选信号和列选信号输出十六位二进制用来显示一行。

4、顶层模块:该模块采用图形模式(图3),把所有模块按要求连接起来,再加上顶层输入信号。

二、实验原理16×16扫描LED点阵的工作原理同8位扫描数码管类似。

它有16个共阴极输出端口,每个共阴极对应有16个LED显示灯。

所以其扫描译码地址需4位信号线。

2864E2PROM存贮器是电可擦除/编程的只读存贮器,容量为8k×8bit ,有13位并行地址线和8位并行数据线,而一个完整的字符所需的存贮容间为32字节即32×8 bit,也就是说2864最多可连续存256个16×16点阵字形。

存贮方式可事先约定好。

本实验就是要通过CPLD芯片产生读时序,将字形从2864中读出,然后产生写时序,写入16×16的点阵,使其扫描显示输出。

三、单元电路设计1)十六进制计数器用VHDL语言十六进制计数器进行设计,程序如下:LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.std_logic_unsigned.all;ENTITY JISHU ISPORT(CLK,RST,LOAD:IN STD_LOGIC;DIN:IN STD_LOGIC_VECTOR(3 DOWNTO 0);DOUT:BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0));END JISHU;ARCHITECTURE SHILIU OF JISHU ISBEGINPROCESS(CLK,RST,LOAD,DIN)BEGINIF (CLK'EVENT AND CLK='1') THENIF(RST='1')THEN DOUT<=(OTHERS=>'0');ELSIF (LOAD='1') THEN DOUT<=DIN;ELSIF (DOUT=8) THENDOUT<="0000";ELSEDOUT<=DOUT+1;END IF;END IF;END PROCESS;END SHILIU;设计完成后,器件图如图1图1十六进制计数器2)对行列控制模块进行及字库进行设计行列控制模块进行及字库程序如下:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity zhi isport( din : in std_logic_vector(3 downto 0);selout : buffer std_logic_vector(3 downto 0);clk,rst: in std_logic;dotout : out std_logic_vector(15 downto 0));end zhi;architecture one of zhi isbeginprocess(clk,rst,din,selout)variable b:std_logic_vector(15 downto 0);beginif rst='1'then selout<="0000";elsif clk'event and clk='1' thencase din iswhen "0000"=>selout<=selout+1;case selout iswhen "1111" =>b:="0000000000000000";when "0000" =>b:="0010001000011100";when "0001" =>b:="0001000100001000";when "0010" =>b:="0000100010010000";when "0011" =>b:="0000000000100010";when "0100" =>b:="0011100001000100";when "0101" =>b:="0001000000001000";when "0110" =>b:="0001000000010000";when "0111" =>b:="0111111111100000";when "1000" =>b:="0111111111111100";when "1001" =>b:="0001000000000100";when "1010" =>b:="0001010000000100";when "1011" =>b:="0001100000000100";when "1100" =>b:="0011000000000100";when "1101" =>b:="0000000000011100";when others =>b:="0000000000000000";end case;when"0001"=>selout<=selout+1;case selout iswhen "1111" =>b:="0000000000000000";when "0000" =>b:="0000000000000000";when "0001" =>b:="0000000110000000";when "0010" =>b:="0000001100000000";when "0011" =>b:="0000011000000000";when "0100" =>b:="0000110000010000";when "0101" =>b:="0000000000001000";when "0110" =>b:="0111111111111100";when "0111" =>b:="0111111111111110";when "1000" =>b:="0000000000000000";when "1001" =>b:="0000110000000000";when "1010" =>b:="0000011000000000";when "1011" =>b:="0000001100000000";when "1100" =>b:="0000000110000000";when "1101" =>b:="0000000000000000";when others =>b:="0000000000000000";end case;when"0010"=> selout<=selout+1;case selout iswhen "1111" =>b:="0000000000000000";when "0000" =>b:="0000000000000110";when "0001" =>b:="0001100000000110";when "0010" =>b:="1001100000000110";when "0011" =>b:="1101100110000110";when "0100" =>b:="0111100110000110";when "0101" =>b:="0011100110000110";when "0110" =>b:="0001100110000110";when "0111" =>b:="0001100110000110";when "1000" =>b:="0011100110000110";when "1001" =>b:="0111100110000110";when "1010" =>b:="1101100110000110";when "1011" =>b:="1001100000000110";when "1101" =>b:="0000000000000110";when others =>b:="0000000000000000";end case;when "0011"=> selout<=selout+1;case selout iswhen "1111" =>b:="0000000000000000";when "0000" =>b:="0000000000000100";when "0001" =>b:="0000000000001100";when "0010" =>b:="0001000000011100";when "0011" =>b:="0101011011110000";when "0100" =>b:="0101011101100000";when "0101" =>b:="0101010110000000";when "0110" =>b:="1111010111111111";when "0111" =>b:="0101010111111110";when "1000" =>b:="0101010101100100";when "1001" =>b:="0101011000110000";when "1010" =>b:="0001000000011000";when "1011" =>b:="0000000000001100";when "1100" =>b:="0000000000000100";when "1101" =>b:="0000000000000000";when others =>b:="0000000000000000";end case;when"0100"=> selout<=selout+1;case selout iswhen "0000" =>b:="0000000000011000";when "0001" =>b:="0000011000110000";when "0010" =>b:="0110011011000000";when "0011" =>b:="0111111111111100";when "0100" =>b:="0111111111111110";when "0101" =>b:="0110011110000000";when "0110" =>b:="0000011011100000";when "1000" =>b:="0000000000000000";when "1001" =>b:="0000011111110000";when "1010" =>b:="0000011111100000";when "1011" =>b:="0000000000001000";when "1100" =>b:="0111111111111100";when "1101" =>b:="0111111111111110";when "1110" =>b:="0000000000000000";when others =>b:="0000000000000000";end case;when"0101"=> selout<=selout+1;case selout iswhen "0000" =>b:="0000000000000000";when "0001" =>b:="0000111000000010";when "0010" =>b:="0000111000000110";when "0011" =>b:="0000100110001000";when "0100" =>b:="0000100110010110";when "0101" =>b:="0000100110101110";when "0110" =>b:="0110100111010110";when "0111" =>b:="0110101110100110";when "1000" =>b:="0110100110000110";when "1001" =>b:="0000100110010110";when "1010" =>b:="0000100110001110";when "1011" =>b:="0000100110000110";when "1100" =>b:="0000111000000110";when "1101" =>b:="0000111000000010";when "1110" =>b:="0000000000000000";when others =>b:="0000000000000000";end case;when"0110"=> selout<=selout+1;case selout iswhen "1111" =>b:="0000000000000000";when "0000" =>b:="0000000000000010";when "0010" =>b:="0110000110000110";when "0011" =>b:="0110000110000110";when "0100" =>b:="0110000110000110";when "0101" =>b:="0110000110000110";when "0110" =>b:="0111111111111110";when "0111" =>b:="0111111111111110";when "1000" =>b:="0110000110000110";when "1001" =>b:="0110000110000110";when "1010" =>b:="0110000110000110";when "1011" =>b:="0110000110000110";when "1100" =>b:="0110000000000110";when "1101" =>b:="0000000000000010";when others =>b:="0000000000000000";end case;when "0111"=> selout<=selout+1;case selout iswhen "0000" =>b:="0000000000100100";when "0001" =>b:="0010001000011000";when "0010" =>b:="0010010100011000";when "0011" =>b:="0010110010100100";when "0100" =>b:="0011000001001010";when "0101" =>b:="0010010010101010";when "0110" =>b:="0010010010101010";when "0111" =>b:="0010010010101010";when "1000" =>b:="0111111111111110";when "1001" =>b:="0010010010101010";when "1010" =>b:="0010010010101010";when "1011" =>b:="0010010010101010";when "1100" =>b:="0011111110001010";when "1101" =>b:="0000010000001010";when "1110" =>b:="0000010000000010";when others =>b:="0000000000000000";end case;when"1000"=> selout<=selout+1;case selout iswhen "0000" =>b:="0000000001111100";when "0001" =>b:="0000100011000000";when "0010" =>b:="0010100100100000";when "0011" =>b:="0010101000010000";when "0100" =>b:="0111111111001000";when "0101" =>b:="0010100100000100";when "0110" =>b:="0010100100000010";when "0111" =>b:="0000100000000010";when "1000" =>b:="0000000000000010";when "1001" =>b:="0100010001110010";when "1010" =>b:="0100100010001010";when "1011" =>b:="0101000010001010";when "1100" =>b:="0110010010001010";when "1101" =>b:="0111111001110010";when "1110" =>b:="0000000000000000";when others =>b:="0000000000000000";end case;when"1001"=>selout<=selout+1;case selout iswhen "1111" =>b:="0000111100001111";when "0000" =>b:="0000111100001111";when "0001" =>b:="0000111100001111";when "0010" =>b:="0000111100001111";when "0011" =>b:="1111000011110000";when "0100" =>b:="1111000011110000";when "0101" =>b:="1111000011110000";when "0110" =>b:="1111111111110000";when "0111" =>b:="0000111100001111";when "1000" =>b:="0000111100001111";when "1001" =>b:="0000111100001111";when "1010" =>b:="0000111100001111";when "1011" =>b:="1111000011110000";when "1101" =>b:="1111000011110000";when "1110" =>b:="1111000011110000";when others =>null;end case;when"1010"=>selout<=selout+1;case selout iswhen "1111" =>b:="1111000011110000";when "0000" =>b:="1111000011110000";when "0001" =>b:="1111000011110000";when "0010" =>b:="1111000011110000";when "0011" =>b:="0000111100001111";when "0100" =>b:="0000111100001111";when "0101" =>b:="0000111100001111";when "0110" =>b:="0000111100001111";when "0111" =>b:="1111000011110000";when "1000" =>b:="1111000011110000";when "1001" =>b:="1111000011110000";when "1010" =>b:="1111000011110000";when "1011" =>b:="0000111100001111";when "1100" =>b:="0000111100001111";when "1101" =>b:="0000111100001111";when "1110" =>b:="0000111100001111";when others =>null;end case;when"1011"=>selout<=selout+1;case selout iswhen "1111" =>b:="0000000011111111";when "0000" =>b:="0000000011111111";when "0001" =>b:="0000000011111111";when "0010" =>b:="0000000011111111";when "0011" =>b:="0000000011111111";when "0100" =>b:="0000000011111111";when "0101" =>b:="0000000011111111";when "0111" =>b:="1111111100000000";when "1000" =>b:="1111111100000000";when "1001" =>b:="1111111100000000";when "1010" =>b:="1111111100000000";when "1011" =>b:="1111111100000000";when "1100" =>b:="1111111100000000";when "1101" =>b:="1111111100000000";when "1110" =>b:="1111111100000000";when others =>null;end case;when"1100"=> selout<=selout+1;case selout iswhen "1111" =>b:="1111111100000001";when "0000" =>b:="0111111100000011";when "0001" =>b:="0011111100000111";when "0010" =>b:="0001111100001111";when "0011" =>b:="0000111100011111";when "0100" =>b:="0000011100111111";when "0101" =>b:="0000001101111111";when "0110" =>b:="0000000111111111";when "0111" =>b:="1111111110000000";when "1000" =>b:="1111111011000000";when "1001" =>b:="1111110011100000";when "1010" =>b:="1111100011110000";when "1011" =>b:="1111000011111000";when "1100" =>b:="1110000011111100";when "1101" =>b:="1100000011111110";when "1110" =>b:="1000000011111111";when others =>null;end case;when"1101"=> selout<=selout+1;case selout iswhen "0000" =>b:="1111111111111111";when "0001" =>b:="1111110011111111";when "0010" =>b:="1111000011111111";when "0011" =>b:="1110000011111111";when "0100" =>b:="1111100011111111";when "0101" =>b:="1111110011001111";when "0110" =>b:="1111111001000111";when "0111" =>b:="1100000000000011";when "1000" =>b:="1110001100111111";when "1001" =>b:="1110011100011111";when "1010" =>b:="1111111100000111";when "1011" =>b:="1111111100001111";when "1100" =>b:="1111111100111111";when "1101" =>b:="1111111111111111";when "1110" =>b:="1111111111111111";when others =>null;end case;when"1110"=> selout<=selout+1;case selout iswhen "1111" =>b:="1111111111111111";when "0000" =>b:="1111111111111111";when "0001" =>b:="1111111111111111";when "0010" =>b:="1111111111111111";when "0011" =>b:="1111000000001111";when "0100" =>b:="1111011100001111";when "0101" =>b:="1111001101101111";when "0110" =>b:="1111000111101111";when "0111" =>b:="1111011110001111";when "1000" =>b:="1111011011001111";when "1001" =>b:="1111000011101111";when "1010" =>b:="1111000000001111";when "1011" =>b:="1111111111111111";when "1100" =>b:="1111111111111111";when "1110" =>b:="1111111111111111";when others =>null;end case;when"1111"=> selout<=selout+1;case selout iswhen "1111" =>b:="1111111111111111";when "0000" =>b:="1111111111111111";when "0001" =>b:="1111111111111111";when "0010" =>b:="1111111111111111";when "0011" =>b:="1111111111111111";when "0100" =>b:="1111111111111111";when "0101" =>b:="1111111111111111";when "0110" =>b:="1111111111111111";when "0111" =>b:="1111111111111111";when "1000" =>b:="1111111111111111";when "1001" =>b:="1111111111111111";when "1010" =>b:="1111111111111111";when "1011" =>b:="1111111111111111";when "1100" =>b:="1111111111111111";when "1101" =>b:="1111111111111111";when "1110" =>b:="1111111111111111";when others =>null;end case;when others=>null;end case;end if;dotout<=b;end process;end one;设计完成后,该模块器件图如图2图2 行列控制模块四、总原理图把十六进制计数器和行列控制模块连接成一个器件,总原理图如图3图3 总原理图其引脚图如图4图4 总器件引脚图图5为部分字符仿真波形,如下图5 部分字符仿真波形五、结论16×16点阵显示综合设计基本符合要求。

16乘16点阵屏

16乘16点阵屏

电子设计与制作课程设计16*16点阵显示一、设计方案该设计使用单片机STC90C51作为主控制模块,利用简单的外围电路来驱动16×16的点阵LED显示屏。

在本设计中主要用两个74HC595来驱动16×16点阵显示屏的列,用两个74HC138来驱动16×16点阵显示屏的行,然后动态扫描可以最终实现——“物电学院”四个汉字的自动循环左移。

动态扫描的意思简单地说就是逐行轮流点亮,这样扫描驱动电路就可以实现多行(比如16行)的同名列共用一套列驱动器。

具体就16×16的点阵来说,我们把所有同一行的发光管的阳极连在一起,把所有同一列的发光管的阴极连在一起(共阳的接法),先送出对应第一行发光管亮灭的数据并锁存,然后选通第一行使其燃亮一定的时间,然后熄灭;再送出第二行的数据并锁存,然后选通第二行使其燃亮相同的时间,然后熄灭;……第十六行之后又重新燃亮第一行,这样反复轮回。

硬件电路大致上可以分成单片机系统及外围电路、列驱动电路和行驱动电路三部分。

从而可以实现一个室内用的16×16点阵LED,显示有静止、移入移出等显示方式。

最后,利用烧录器可以很方便的实现单片机与PC机等外围存储设备的数据传输,并能利用软件方便的进行显示内容的多样变化。

在负载范围内,只需通过简单的级联就可以对显示屏进行扩展。

二、设计模块1、总模块2、列驱动电路列驱动电路有集成电路74HC595构成。

它具有一个8位串入并出的移位寄存器和一个8位输出锁存器的结构,而且移位寄存器和输出锁存器的控制是各自独立的,可以实现在显示本行列数据的同时,传送下一行的列数据,既达到重叠处理的目的。

74HC595的外形及内部结构如图所示。

它的输入侧有8个串行移位寄存器,每个移位寄存器的输出都连接一个输出锁存器。

引脚SI是串行数据的输入端。

引脚SCK是移位寄存器的移位时钟脉冲,在其上升沿发生移位,并将SI的下一个数据打入最低位。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

机器人创新设计课程设计报告书题目:16×16点阵LED电子显示屏的设计姓名:张津学号:1613010320专业:国际经济与贸易指导老师:于大泳设计时间:2017年3月管理学院目录1. 引言 (3)1.1 设计意义 (3)1.2 系统功能要求 (3)2. 方案设计 (4)3. 硬件设计 (5)4. 软件设计 (8)5. 系统调试 (9)6. 设计总结 (11)7. 附录A.:源程序 (11)8. 附录B.:作品实物照片 (16)9. 参考文献 (17)16×16点阵LED电子显示屏的设计1.引言1.1 设计意义目前广告牌具有显示内容丰富、信息量大、信息更换速度快等特点。

因此传统的LED显示屏控制系统已经越来越不能满足现代广告宣传业的需要。

而利用PC机通信技术控制LED显示屏,则具有显示内容丰富,信息更换灵活等优点。

1.2 系统功能要求本设计是一16×16点阵LED电子显示屏的设计。

整机以40脚单片机AT89C51为核心,通过该芯片控制列驱动器74HC595来驱动显示屏显示。

该电子显示屏可以显示各种文字或单色图像,全屏能显示1个汉字。

显示可以采用动态显示,使得图形或文字能够实现静止、移入移出等多种显示方式。

开关控制显示“矿大电气五班”、“电子综合设计”的字幕。

同时还要实现的功能:5V的电压输入,时钟电路的设置,复位电路的设置,单片机给74HC154芯片同时给E1和E2低电平,74LS154才能正常的工作。

例如如果想使左上角LED点亮,则Y0=1,X0=0即可。

应用时限流电阻可以放在X轴或Y,16*16LED点阵如图1.2.1所示。

图1.2.12.方案设计16X16点阵LED工作原理说明 : 16X16点阵共需要256个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一列置1电平,某一行置0电平,则相应的二极管就亮;因此要实现一根柱形的亮法,对应的一列为一根竖柱,或者对应的一行为一根横柱,因此实现柱的亮的方法如下所述:一根竖柱:对应的列置1,而行则采用扫描的方法来实现。

一根横柱:对应的行置0,而列则采用扫描的方法来实现。

需要实现的功能如下图流程图图 2.2所示图2.2本电路使用AT89C51实现行驱动,对显示模块从上至下的扫描,用74HC154和三极管实现列驱动,对显示模块从左至右的扫描,然后显示字符。

在中规模集成电路中译码器有几种型号,使用最广的通常是74HC154译码器,74HC154是一款高速CMOS器件,74HC154引脚兼容低功耗肖特基TTL(LSTTL)系列。

2.硬件设计3.1 单片机系统及外围电路3.1.1 单片机的选择本设计选用了AT89C51单片机作控制3.1.2 AT89C51芯片介绍概述:AT89C51为40 脚双列直插封装的8 位通用微处理器,采用工业标准的C51内核,在内部功能及管脚排布上与通用的8xc52 相同,其主要用于会聚调整时的功能控制。

功能包括对会聚主IC 内部寄存器、数据RAM及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接收解码及与主板CPU通信等。

主要管脚有:XTAL1(19 脚)和XTAL2(18 脚)为振荡器输入输出端口,外接12MHz 晶振。

RST(9 脚)为复位输入端口,外接电阻电容组成的复位电路。

VCC(40 脚)和VSS(20 脚)为供电端口,分别接+5V电源的正负端。

P0~P3 为可编程通用I/O 脚,其功能用途由软件定义,在本设计中,P0 端口(32~39 脚)被定义为N1 功能控制端口,分别与N1的相应功能管脚相连接,13 脚定义为IR输入端,10 脚和11脚定义为I2C总线控制端口,分别连接N1的SDAS(18脚)和SCLS(19脚)端口,12 脚、27 脚及28 脚定义为握手信号功能端口,连接主板CPU 的相应功能端,用于当前制式的检测及会聚调整状态进入的控制功能。

AT89C51的引脚图如下图 3.1所示:图3.13.1.3 单片机系统外围电路单片机外围电路一般有两块:时钟电路(如图 3.1.3)和复位电路(3.1.4)时钟电路由一个晶振和两个小电容组成,用来产生时钟频率。

复位电路由一个电阻、按键和一个电容组成,用来产生复位信号,使单片机上电的时候复位。

图 3.1.3AT89C52单片机芯片内部有一个反向放大器构成的振荡器,XTAL1和XTAL2分别为振荡器电路的输入端和输出端,时钟可由内部和外部生成,在XTAL1和XTAL2引脚上外接定时元件,内部振荡电路就会产生自激振荡。

系统采用的定时元件为石英晶体和电容组成的并联谐振回路。

晶振频率选择12MHz,C1、成的电容值取22PF,电容的大小频率起微调的作用图3.1.4单片机有多种复位电路,本系统采用电平式开关复位与上电复位方式,当上电时,C1相当于短路,使单片机复位,在正常工作时,按下复位时单片机复位。

在有时碰到干扰时会造成错误复位,但是大多数条件下,不会出现单片机错误复位,而可能会引起内部某些寄存器错误复位,在复位端加一个去耦电容,则会得到很好的效果。

3.2 驱动电路3.2.1 74HC154芯片简介74HC154译码器可接受4位高有效二进制地址输入,并提供16个互斥的低有效输出。

74HC154的两个输入使能门电路可用于译码器选通,以消除输出端上的通常译码“假信号”,也可用于译码器扩展。

该使能门电路包含两个“逻辑与”输入,必须置为低以便使能输出端。

任选一个使能输入端作为数据输入,74HC154可充当一个1-16的多路分配器。

当其余的使能输入端置低时,地址输出将会跟随应用的状态。

3.2.2 驱动电路的构成本设计的驱动电路由三极管的集电极输出给点阵显示屏,使其足够亮。

其驱动电压为5V。

行驱动由P0口列驱动电路如图 3.3.2所示:图3.2.23.3 16*16LED显示屏电路和原理16*16LED显示屏电路在proteus仿真中由四个8*8LED点阵组成的,其中二极管的正极控制器也就是AT89C51,负极接译码器也就是74HC154。

显示屏可以显示字符、汉字、动画等任何图形。

该电路充分利用了单片机的I/O口资源.使整机硬件达到最简。

16*16点阵的原理:点阵LED扫描法介绍点阵LED一般采用扫描式显示,实际运用分为三种方式:(1)点扫描;(2)行扫描;(3)列扫描。

若使用第一种方式,其扫描频率必须大于16×64=1024Hz,周期小于1ms即可。

电路如图3.3所示:图3.33.4 电源电路本设计采用电源线直接从家用电路中接入电源,经变压为5V,为电路供电。

3.软件设计本软件要求实现如下要求:汉字要稳定、明亮并且文字要以一定速度上升滚动显示。

显示屏软件模块:初始化程序、主程序、多字滚动、显示程序、扫描程序。

显示程序的主要功能是向屏体提供显示数据,并产生各种控制信号,使屏幕按设计的要求显示。

软件设计中,显示屏的软件系统分为两层;第一层是底层的显示驱动程序,第二层是上层的系统应用程序。

显示驱动程序负责向屏体送显示数据,并负责产生行扫描信号和其他控制信号,配合完成LED显示屏的扫描显示工作。

显示驱动器程序由定时器T0中断程序实现。

系统应用程序完成系统环境设置(初始化)、显示效果处理等工作,由主程序来实现。

4.1显示驱动程序显示驱动程序在进入中断后首先要对定时器T0重新赋初值,以保证显示屏刷新率的稳定,1/16扫描显示屏的刷新率(帧频)计算公式如下:刷频率(帧频)=1/16×T0溢=1/16×f/12(65536-t )其中f 位晶振频率,t 为定时器T0初值(工作在16位定时器模式)。

然后显示驱动程序查询当前燃亮的行号,从显示缓存区内读取下一行的显示数据,并通过串口发送给移位寄存器。

为消除在切换行显示数据的时候产生拖尾现象,驱动程序先要关闭显示屏,即消隐,等显示数据打入输出锁存器并锁存,然后再输出新的行号,重新打开显示。

图六为显示驱动程序(显示屏扫描函数)流程图图4.1.14.2系统主程序本设计的系统软件能使系统LED显示屏各点亮度均匀、充足,可显示图形和文字,显示图形和文字应稳定、清晰无串扰。

图形或文字显示有静止、移入移出等显示方式。

系统主程序开始以后,首先是对系统环境初始化,包括设置串口、定时器、中断和端口;然后以“卷帘出”效果显示图形,停留约几秒;接着向上滚动显示“--------”这几个汉字及一个图形,然后以“卷帘入”效果隐去图形。

由于单片机没有停机指令,所以可以设置系统程序不断的循环执行上述显示效果。

单元显示屏可以接收来自控制器(主控制电路板)或上一级显示单元模块传输下来的数据信息和命令信息,并可将这些数据信息和命令信息不经任何变化地再传送到下一级显示模块单元中,因此显示板可扩展至更多的显示单元,用于显示更多的显示内容。

如果想改变些事内容,先用字模产生字代码,将用这段代码覆盖原来的代码,即可显示你想要的内容。

图4.2.1是系统主程序流程图。

5.系统调试◆调试主要分为硬件调试和软件调试:硬件调试:在焊接电路板的时候,应该从最基本的最小系统开始,分模块,逐个进行焊接测试。

在对各个硬件模块进行测试时,要保证软件正确的情况下去测试硬件,要不然发生错误时,不知道到底是哪一方出错了。

当然,在设计的过程中也存在着失误和不足,在调试中进行修改了。

焊接完成后,检验点阵、及线路的好坏:烧进检验程序,点阵将自第一排向下(上)点亮。

检验无异常,下载主程序◆软件调试:软件为老师所提供提供,其原理在上一模块以作说明,在这里再作说明,软件经调试无误,直接将其下再到单片机中,看是否达到所要的效果软件部分是先参考书上的例子,然后自己根据硬件电路写程序,由于以前所学是单片机汇编语言,所以这个系统在编写程序过程中都采用汇编语言编写。

刚刚开始,编写不会一次性通过,经过仔细分析修改最后编译成功。

但是,在实际写如S51中,LED 显示屏出现各种各样的乱码,通过再次认真仔细分析多次修改程序后,程序能够正常运行6.设计总结本文设计的点阵LED 图文显示屏,能够在目测条件下LED显示屏各点亮度均匀、充足,可显 示 图形 和 文 字,显 示 的 图 形 和 文 字 较 稳 定、清 晰。

在本次设图4.2.1计过程中,我们得到以下体会:通过两个星期和大家的一起的努力,我收获了很多,本设计是用四个8x8的点阵显示模块组成的16x16的点阵LED图文显示屏,能够在目测条件下LED显示屏各点亮度均匀、充足,可显示图形和文字,显示图形和文字应稳定、清晰无串扰。

图形或文字显示有静止、移入移出等显示方式。

本系统具有硬件少,结构简单,容易实现,性能稳定可靠,成本低等特点。

总结本文的研究工作,主要做了下面几点工作:一、通过查阅大量的相关资料,详细了解了LED的发光原理和LED显示屏的原理,了解了LED的现状,清楚地了解了LED显示屏与其它显示屏相比较有那些优点,明确了研究目标。

相关文档
最新文档