基于某8086地LED点阵屏设计.docx

上传人:b****4 文档编号:868141 上传时间:2022-10-13 格式:DOCX 页数:15 大小:555.37KB
下载 相关 举报
基于某8086地LED点阵屏设计.docx_第1页
第1页 / 共15页
基于某8086地LED点阵屏设计.docx_第2页
第2页 / 共15页
基于某8086地LED点阵屏设计.docx_第3页
第3页 / 共15页
基于某8086地LED点阵屏设计.docx_第4页
第4页 / 共15页
基于某8086地LED点阵屏设计.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

基于某8086地LED点阵屏设计.docx

《基于某8086地LED点阵屏设计.docx》由会员分享,可在线阅读,更多相关《基于某8086地LED点阵屏设计.docx(15页珍藏版)》请在冰豆网上搜索。

基于某8086地LED点阵屏设计.docx

基于某8086地LED点阵屏设计

基于8086的LED点阵屏设计

1、设计内容

LED电子显示屏是随着计算机技术及相关的微电子、光电子技术的迅猛发展而形成的一种新型信息显示媒介。

它利用发光二极管构成的点阵或像素单元组成可变面积的显示屏幕,以可靠性高、使用寿命长、环境适应能力强、性价比高等特点,在短短的十几年中,迅速成长为平板显示的主流产品。

由于LED电子显示屏具有显示内容信息量大,外形美观大方,操作使用方便灵活,用户可随时任意自行编辑修改显示内容,显示方式图文并茂等优点,因此被广泛应用于商场、学校、银行、邮局、机场、车站、码头、金融证券市场、文化中心、信息中心休息设施等公共场所。

Proteus是英国Labcenterelectronics公司开发的EDA工具软件。

它不仅具有其他EDA工具软件的仿真功能,也是目前最好的仿真单片机及外围器件的工具。

Proteus从原理图布图、代码调试到微处理器与外围电路协同仿真,一键切换到PCB设计,真正实现将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、8086、HC11、AVR、ARM和MSP430等。

在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。

本课程设计在Proteus仿真平台上完成了8086控制的32×32LED点阵屏设计。

2、设计原理及方案

本课程设计采用基于8086微处理器的接口电路对外围设备进行控制。

主要涉及到8086CPU接口电路的设计与搭建、点阵屏的组装、点阵屏与接口电路的连接、点阵屏扫描方案等。

2.1设计原理

原理部分主要介绍8086CPU各引脚的功能以便说明接口电路的连接原理;点阵屏的基本概念和扫描方法。

2.1.18086微处理器

8086是Intel系列的16位微处理器,芯片上有4万个晶体管,采用HMOS工艺制造,用单一的+5V电源,时钟频率为4.77MHz~10MHz。

8086有16根数据线和20根地址线,它既能处理16位数据,也能处理8位数据。

可寻址的内存空间为1MB。

图18086实物图(左)8086引脚图(右)

8086有两种工作模式,分别是最大模式和最小模式。

当CPU处在不同的工作模式时,其部分引脚的功能是不同的,因此在设计时必须首先确定CPU的工作方式。

本设计采用最小模式,CPU各引脚功能如下:

1)AD15~AD0(addressdatabus):

地址/数据总线,双向,三态。

2)A19/S6~A16/S3(address/status):

地址/状态信号,输出,三态。

3)BHE(低)/S7(bushighenable/status):

允许总线高8位数据传送/状态信号,输出,三态。

4)RD/(read):

读信号,输出,三态,低电平有效。

5)READY(ready):

准备就绪信号,输入,高电平有效。

6)INTR(interruptrequest):

可屏蔽中断请求信号,输入,高电平有效。

7)TEST/(test):

等待测试控制信号,输入,低电平有效。

8)NMI(non-maskableinterrupt):

非屏蔽中断请求信号,输入,高电平有效。

9)RESET(reset):

复位信号,输入,高电平有效。

10)CLK(clock):

时钟信号,输入。

11)VCC电源输入引脚。

12)GND:

接地引脚。

13)MN/MX/(minimum/maximum):

最小/最大模式输入控制信号。

14)IO/M/(memoryI/Oselect):

存储器、I/O端口选择控制信号。

15)WR/(write):

写信号,输出,低电平有效。

16)INTA/(interruptacknowledge):

可屏蔽中断响应信号,输出,低电平有效。

17)ALE(addresslockenable):

地址锁存允许信号,输出,高电平有效。

18)DT/(datatransmitorreceive):

数据发送/接收信号,输出,三态。

19)DEN/(dataenable):

数据允许控制信号,输出,三态,低电平有效。

20)HOLD(busholdrequest):

总线保持请求信号,输入,高电平有效。

21)HLDA(holdacknowledge):

总线保持响应信号,输出,高电平有效。

2.1.2点阵屏及其工作原理

LED点阵屏通过LED点阵组成,以红色或绿色灯珠亮灭来显示文字、图片、动画、视频等,是各部分组件都模块化的显示器件,通常由显示模块、控制系统及电源系统组成。

LED点阵显示屏制作简单,安装方便,被广泛应用于各种公共场合,如汽车报站器、广告屏以及公告牌等。

图28×8点阵块

下面详细介绍点阵屏的工作原理。

以简单的8×8点阵为例(图3右),它共由64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一行置1电平,某一列置0电平,则相应的二极管就亮;如要将第一个点点亮,则9脚接高电平13脚接低电平,则第一个点就亮了;如果要将第一行点亮,则第9脚要接高电平,而(13、3、4、10、6、11、15、16)这些引脚接低电平,那么第一行就会点亮;如要将第一列点亮,则第13脚接低电平,而(9、14、8、12、1、7、2、5)接高电平,那么第一列就会点亮.

图3不同极性的点阵屏结构图

2.1.3点阵屏扫描方式

LED点阵扫描方式有很多种类,主要有四种扫描方式,分别是逐行式、逐列式、列行式、行列式。

各种扫描方式应用在不同的场合,逐行式扫描主要是应用在行数较少并且非滚动显示的场合,优点是数据稳定,缺点是较难实现滚动显示汉字,不能合理利用有限的LED点阵屏数目;逐列式扫描主要应用在列数较少行数较多的场合,并且显示的汉字有多个不受LED点阵屏数目限制,可以循环显示,应用在较多的地方,合理地利用了LED点阵的数目节约了资源和成本。

下面介绍一下逐行式扫描方式的原理。

一般我们使用点阵显示汉字是用的16×16的点阵宋体字库,所谓16×16,是每一个汉字在纵、横各16点的区域内显示的。

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

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

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

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

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

同理扫描第二列。

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

图4用动态扫描显示字符的过程

2.2设计方案

本课程设计中,设计了一个32×32的点阵屏并采用基于8086微处理器的接口电路作为显示控制单元。

因此在此部分将介绍接口电路设计的方案以及大点阵屏组成的设计。

2.2.1接口电路

图5I/O译码电路原理图

在I/O译码电路中,除了核心的8086外,地址的确定就是由4-16译码器决定。

从图中可以看出一共有16个I/O端口,地址是00H、10H、20H、……0FH。

其余相关知识在接口课程和实验中已经讲解得十分详细,在此就不在赘述,直接使用即可。

2.2.2点阵屏组成

Proteus中只有5×7和8×8等LED点阵,并没有32×32的LED点阵,而在实际应用中,要良好地显示一个汉字,至少需要16×16的点阵。

若是需要显示简单图形则需要更大的点阵。

本课程设计使用的是32×32的点阵,所以需要使用8×8的点阵进行组合。

下面介绍使用8×8点阵构建32×32点阵的方法,并构建一块32×32的点阵用于本例的显示任务。

首先,从Proteus的元件库中找到“MATRIX-8×8-GREEN”元器件,并将16块点阵放入文档编辑区。

此时需要注意每块点阵的行引脚和列引脚。

然后将四块点阵排成一行形成一个8×32的点阵块,如图6所示

图68×32点阵行引脚

由于此时点阵块的上方引脚是行引脚,因此每块点阵的引脚编号均为R0-R7,表示前8行。

而下方引脚对应的是列引脚,因此列引脚的范围是C0-C31。

如图7所示。

图78×32点阵列引脚

最后只要将四块这样的点阵拼接成32×32的点阵即可。

需要注意的是其余三块这样的点阵的行引脚编号分别对应R8-R15、R16-R23、R24-R31。

成品如图8所示。

图832×32点阵屏

2.2.3行扫描电路

本课程设计中的点阵屏采用逐行扫描的方式。

因此一共需要32位的行数据来控制某行是否被点亮。

由于8086的寄存器是16位的,不满足行数据的要求。

因此最直接的方法就是采用两片4-16译码器扩展成一个5-32译码器,这要只需要寄存器中的5位即可。

行控制译码电路如图9所示。

图9行扫描控制电路

2.2.3显示驱动电路

对于点阵屏的显示驱动,通常采用的做法是使用74HC595移位寄存器进行数据的存储与驱动。

这要只要接口电路串行输出显示数据即可,对于大点阵屏显示驱动的软件设计十分方便。

但是需要串口的支持。

对于现在的单片机来说这已经不是什么大问题,因为现在的单片机都内置了串行通信的芯片。

而8086仅仅实现了中央处理器的功能,并没有集成任何辅助芯片。

想要实现串行通信必须外接串口通信芯片8251A。

但是由于本设计的点阵屏规模较小,并不一定需要采用这种方法,我们只需要采用四块通用的8位寄存器即可将32位数据分4次送入点阵屏。

具体电路如图10所示。

图10显示驱动电路

3点阵屏有关软件设计

在第二部分已经介绍了整个设计的硬件设计思路并搭建了完整的点阵屏显示电路。

但是点阵屏要能显示必须要有数据和相应的驱动程序。

点阵屏显示汉字需要的是字模数据,显示图形也要求类似字模的数据,因为实际上不管是英文字幕还是中文汉字,在显示的时候都是图形。

3.1字模简介

文字的字模是一组数字,但它的意义却与数字的意义有着根本的变化,它是用数字的各位信息来记载英文或汉字的形状。

在电脑硬件中,根本没有汉字这个概念,也没有英文的概念,其认识的概念只有——内码(将ASCII表的高128个很少用到的数值以两个为一组来表示汉字,即汉字的内码。

而剩下的低128位则留给英文字符使用,即英文的内码)。

如果你用启动盘启动系统后用DIR命令可能得到一串串莫名其妙的字符,但那确确实实是汉字,如果你启动UCDOS或其他的汉字系统后,就会看到那是一个个熟悉的汉字。

在硬件系统内,英文的字模信息一般固化在ROM里,即使在没有进入系统的CMOS里,也可以让你看到英文字符。

而在DOS下,中文的字模信息一般记录在汉字库文件里(将制作好的字模放到一个个标准的库中,这就是点阵字库文件)。

本设计中采用已有的取模软件获得需要显示图形的数据,如图11所示。

图11汉字取模

得到显示图形数据后只要保存在汇编程序的数据段中即可。

3.2驱动程序设计

ROWSELEQU20H

COLSEL1EQU40H

COLSEL2EQU60H

COLSEL3EQU80H

COLSEL4EQU0A0H

datasegment

tab1DB00H,00H,00H,00H,00H,00H,00H,00H,00H,01H,0C0H,00H,00H,01H,0C0H,00H,00H,0

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

当前位置:首页 > 高中教育 > 语文

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

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