LED显示汉字说明.docx

上传人:b****5 文档编号:7687881 上传时间:2023-01-25 格式:DOCX 页数:17 大小:1.34MB
下载 相关 举报
LED显示汉字说明.docx_第1页
第1页 / 共17页
LED显示汉字说明.docx_第2页
第2页 / 共17页
LED显示汉字说明.docx_第3页
第3页 / 共17页
LED显示汉字说明.docx_第4页
第4页 / 共17页
LED显示汉字说明.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

LED显示汉字说明.docx

《LED显示汉字说明.docx》由会员分享,可在线阅读,更多相关《LED显示汉字说明.docx(17页珍藏版)》请在冰豆网上搜索。

LED显示汉字说明.docx

LED显示汉字说明

2显示原理及控制方式分析

2.1LED点阵模块结构

八十年代以来出现了组合型LED点阵显示器模块,以发光二极管为像素,它用高亮度发光二极管芯阵列组合后,环氧树脂和塑模封装而成。

这种一体化封装的点阵LED模块,具有高亮度、引脚少、视角大、寿命长、耐湿、耐冷热、耐腐蚀等特点。

LED点阵规模常见的有4×4、4×8、5×7、5×8、8×8、16×16等等。

根据像素颜色的数目可分为单色、双基色、三基色等。

像素颜色不同,所显示的文字、图象等内容的颜色也不同。

单色点阵只能显示固定色彩如红、绿、黄等单色,双基色和三基色点阵显示内容的颜色由像素内不同颜色发光二极管点亮组合方式决定,如红绿都亮时可显示黄色,如果按照脉冲方式控制二极管的点亮时间,则可实现256或更高级灰度显示,即可实现真彩色显示。

图2.1示出最常见的8×8单色LED点阵显示器的内部电路结构和外型规格,其它型号点阵的结构与引脚可试验获得。

图2.18×8单色LED模块内部电路

LED点阵显示器单块使用时,既可代替数码管显示数字,也可显示各种中西文字及符号.如5x7点阵显示器用于显示西文字母.5×8点阵显示器用于显示中西文,8x8点阵可以用于显示简单的中文文字,也可用于简单图形显示。

用多块点阵显示器组合则可构成大屏幕显示器,但这类实用装置常通过PC机或单片机控制驱动。

2.2LED动态显示原理

LED点阵显示系统中各模块的显示方式:

有静态和动态显示两种。

静态显示原理简单、控制方便,但硬件接线复杂,在实际应用中一般采用动态显示方式,动态显示采用扫描的方式工作,由峰值较大的窄脉冲电压驱动,从上到下逐次不断地对显示屏的各行进行选通,同时又向各列送出表示图形或文字信息的列数据信号,反复循环以上操作,就可显示各种图形或文字信息。

点阵式LED汉字广告屏绝大部分是采用动态扫描显示方式,这种显示方式巧妙地利用了人眼的视觉暂留特性。

将连续的几帧画面高速的循环显示,只要帧速率高于24帧/秒,人眼看起来就是一个完整的,相对静止的画面。

最典型的例子就是电影放映机。

在电子领域中,因为这种动态扫描显示方式极大的缩减了发光单元的信号线数量,因此在LED显示技术中被广泛使用。

以8×8点阵模块为例,说明一下其使用方法及控制过程。

图2.1中,红色水平线Y0、Y1……Y7叫做行线,接内部发光二极管的阳极,每一行8个LED的阳极都接在本行的行线上。

相邻两行线间绝缘。

同样,蓝色竖直线X0、X1……X7叫做列线,接内部每列8个LED的阴极,相邻两列线间绝缘。

在这种形式的LED点阵模块中,若在某行线上施加高电平(用“1”表示),在某列线上施加低电平(用“0”表示)。

则行线和列线的交叉点处的LED就会有电流流过而发光。

比如,Y7为1,X0为0,则右下角的LED点亮。

再如Y0为1,X0到X7均为0,则最上面一行8个LED全点亮。

现描述一下用动态扫描显示的方式,显示字符“B”的过程。

其过程如图2.2

图2.2用动态扫描显示字符“B”的过程

假设X,Y为两个8位宽的字节型数据,X的每位对应LED模块的8根列线X7-X0,同样Y的每位对应LED模块的8根行线Y7-Y0。

在这个示例中,Y叫行扫描线,行扫描线在每个时刻只有一根线为“1”即有效行选通电平,X叫列数据线,其内容就是点阵化的字模数据的体现。

下面用伪代码描述动态显示的过程。

(1).Y=0x01,X=0xFF,如图2.2第一帧;

(2).Y=0x02,X=0x87,如图2.2第二帧;

(3).Y=0x04,X=0xBB,如图2.2第三帧;

(4).Y=0x08,X=0xBB,如图2.2第四帧;

(5).Y=0x10,X=0x87,如图2.2第五帧;

(6).Y=0x20,X=0xBB,如图2.2第六帧;

(7).Y=0x40,X=0xBB,如图2.2第七帧;

(8).Y=0x80,X=0x87,如图2.2第八帧;

(9).跳到第

(1)步循环。

如果高速地进行

(1)到(9)的循环,且两个步骤间的间隔时间小于1/24秒,由于视觉暂留。

LED显示屏上将呈现出一个完整的“B”字符。

这就是动态扫描的原理。

只不过实际运用的时候,列线和行线通常不止8位,还要根据列线和行线的数量来决定是用行线或列线来做扫描线。

例如0601条屏(每行6个汉字,共1行),行线有16根,列线有96根。

如果用列线来做扫描线,则每列LED在每96次循环扫描中只可能亮一次,则其发光视觉平均亮度为直流亮度的1/96。

如果用行线来做扫描线,则每16次循环,每行LED就能亮一次,其发光视觉平均亮度为直流情况下的1/16。

可见,用行线做扫描线,因为其发光周期的占空比较大,其视觉亮度是用列线做扫描线的6倍。

因而发光效率比前者高。

在实际运用的时候,还要在每两帧之间加上合适的延时,以使人眼能清晰的看见发光。

在帧切换的时候还要加入余辉消除处理。

比如先将扫描线全部设置为无效电平,送下一行的列数据后再选通扫描线,避免出现尾影。

3.1显示单元的考虑

显示一个简体汉字,至少需要16×16点阵来描述。

为了在较远距离处获得清晰的视觉效果,本设计采用4个8×8点阵,像素直径5mm的LED模块拼接成16×16点阵的LED阵列。

这样每个16×16汉字能够获得12×12cm的显示尺寸,因此在50米处仍能清晰阅读。

3.7总体电路结构及工作原理

3.7.1硬件电路框图

通过前面对各种方案的比较与分析,初步构建硬件系统框图如图3.1

图3.1LED显示屏硬件框图

在图3.1中,X0、X1—Xn为显示单元。

每个显示单元由一个16×16点阵的LED模块和一个16位宽的移位锁存器(串行—并行转换器)构成。

所有显示单元的16根行线均连接到公共的行扫描驱动电路。

而每个显示单元的列数据则由16位移位锁存器并行输出口提供。

中央微处理器MCU负责与所有外围设备的协调通信,以及各种算法的处理。

MCU用通用I/O口来驱动行扫描驱动电路。

用通用I/O口模拟同步串行接口以实现和列数据锁存器(移位锁存器)之间的单向通信。

MCU通过内部集成的SPI接口和字库芯片进行双向通信。

PC机(上位机)的RS-232C电平经过转换后,通过UART接口与MCU进行双向通信。

电源则为各个模块提供稳定的电压以及足够的电流。

3.7.2工作原理

单片机上电后就检测单片机P3.2脚(DownLoad)的电平,如果按住LED显示屏上的“DownLoad”键开机,则单片机P3.2脚被强制拉为低电平,显示屏被引导进入下载模式。

这时单片机把UART异步串行口初始化为“方式一”工作,波特率为115200bps。

之后不断检测从UART传入的数据,如果连续接收到的两字节数据与程序中约定的两字节数据帧同步码(0xA0,0xFA)相同。

则判定下载命令合法,真正进入下载流程。

设置两字节同步码是为了降低误码干扰的概率。

进入下载流程后,擦除连续从0x2600地址开始的5个E2PROM扇区,每个扇区512字节。

然后连续接收上位机发出的7字节设置数据,并从E2PROM第一个扇区首地址0x2600开始依次存放。

这样,第一个扇区就保存了上位机对下位机的所有设置数据,包括刷新率,移动速度,显示模式以及总共需要显示的字符数等等。

保存好以上7字节的设置数据后,紧接着连续地接收上位机发出的不大于2048个内码数据,并依次保存在第二个E2PROM扇区中。

因为第二到第五扇区是连续编址的,所以第二扇区存满后会自动存放在第三扇区,以次类推。

汉字内码的数据量由上位机确定。

当单片机接收到下载结束符0x8F时,执行软件复位,强迫程序在AP区从头运行。

这时若仍然按住“DownLoad”键,则再一次进入下载模式。

如果开机的时候不按下“DownLoad”键,则单片机程序被引导进入显示模式。

进入显示模式后,首先把单片机的SPI接口初始化为“空闲低电平/上升沿驱动”模式,为读写字库芯片作准备。

在单片机内部的扩展数据存储器(xdata区)中开辟192字节(1536位)动态显示缓冲区Display_Buffer和32字节的字模数据缓存区Temp_Buffer,两个缓存区编址连续。

Display_Buffer中的一位与LED的一个点阵一一对应。

(详细对应关系见章节5.3.1——显示缓存技术与映射关系)经过这样的映射处理,使字符在显示中的移动算法变得简单灵活,不论进行何种显示效果处理,只需要对Display_Buffer进行操作。

遵循结构化的程序设计思路。

把单片机的在显示模式的所有工作量分为以下三个任务:

一.扫描显示任务:

扫描显示任务负责把Display_Buffer中的数据依次发送到列驱动器74HC595,并按严格的时序高电平选通十六根行扫描线(Y0—Y15),使每一列数据对应着一个行线状态。

二.移动处理任务:

移动处理任务负责完成显示字符逐点阵向左移动的算法处理,这是最基本的显示效果。

其它大部分显示效果如左移六字暂停,全屏定格显示等都是以逐位左移为基础。

对显示字符的移动,实质上是对显示缓冲区Display_Buffer内数据的移动。

该算法是将Display_Buffer和Temp_Buffer中的数据首尾相接地左移一位,并不断把Temp_Buffer移入Display_Buffe。

三.字符更新任务:

在单片机的xdata区开辟了32字节的字模数据缓存区Temp_Buffer。

该缓存区与Display_Buffer编址连续。

当调用字符更新任务时,程序从E2PROM内码区指定位置读取相邻两字节的汉字内码数据。

并通过一定的算法,把内码数据变换为该内码对应汉字的字模数据在字库芯片中的地址。

单片机通过SPI接口,向字库芯片发送读命令和地址,字库芯片返回连续32字节的全角汉字字模数据或16字节的ASCII半角字模数据。

这些字模数据就存储在32字节的字模数据缓存区中。

字模数据缓存区Temp_Buffer中的数据可通过调用移动处理任务而逐位转移至动态显示缓冲区Display_Buffer中。

三个任务彼此独立,又相互联系。

下面用实际的C51程序来说明一下如何实现简单的左移显示效果。

voidDis_Mode_1(void)//左移显示效果

{

unsignedchari,j,k;

unsignedintn;

unsignedintstrings;

while

(1)//所有显示效果都是无限循环

{

for(n=0;n

{

strings=EEPROM_read(ADDR+n);//从EEPROM中读取内码高字节

strings<<=8;//左移8位以合成16位数据

strings+=EEPROM_read(ADDR+n+1);//从EEPROM中读取内码低字节

k=Load_Next_Charctor(strings);//调用更新字符任务,半角返回8全角返回16

for(i=0;i

{

for(j=0;j

LED_Scan(Refesh_Speed,Back_Ground);//调用扫描任务

Shift_Left_One_bit();//调用移动处理任务

}

}

}

}

第4章硬件电路设计

4.1显示单元电路设计

为了提高点阵LED的视觉亮度,本设计用行线做扫描线,列线做数据线。

每行的显示占空比为直流情况下的1/16。

为了再进一步的提高视觉亮度,选用了红绿双色LED点阵模块YLM2388ASRG,每个点阵内部有红色,绿色两个发光体。

两组发光管公用8根行线,列线独立。

本设计将两组LED合成一组使用。

由于红光和绿光的光子能量不同,红色LED的发光门限电压要比绿光稍低,因此红绿LED不能简单并联使用。

如果这样,绿色LED的端电压就会受红色LED的钳制而不发光。

为此,在红绿色LED各自的阴极回路(列线回路)中串联了一个分压电阻,以削弱红色LED的电压钳制作用,使两组LED均能正常发光,根据色光的合成原理,红绿色加光混合后呈现黄色。

本设计显示单元以及行列驱动电路如图4.1

图4.116×16LED点阵显示单元以及行列驱动电路

4.1.2列驱动电路设计

如图4.1下面虚线框内,本设计中,每个16×16点阵的列驱动电路由两个串联的8位移位锁存器74HC595构成。

74HC595,是为Motorola的SPI总线开发的一款串并转换芯片。

由于74HC595的输入输出电平兼容LSTTL,NMOS,CMOS电平,且具有较强的输出负载能力,而被广泛地运用于MCU(微控制器)、MPU(微处理器)的I/O口扩展。

74HC595在5V供电的时候能够达到30MHz的时钟速度,每个并行输出端口均能承受20mA的灌电流和拉电流。

这个特点保证了不用增加额外的扩流电路即可轻松的驱动LED。

它输入端允许500nS的上升(下降)时间,对严重畸形的时钟脉冲仍能检测。

这样就可以容纳较大的传输线对地电容,使本设计的抗干扰能力增强。

74HC595并行输出端与LED模块列线之间通过20Ω的电阻连接,这里电阻起到分压,去除红色LED的并联嵌位作用。

使红绿两组LED均能正常发光。

由于LED显示屏的工作电流时刻在变化,造成了系统电压的波动。

这种电压波动有高频成分,也有低频成分。

轻则对周围无线电环境造成电磁污染,重则使系统时钟紊乱,逻辑错误。

为避免此,在每个74HC595的电源VCC和GND旁边都并联了两个电容,用于滤波和退耦。

稳定系统电压,旁路掉电源中的高频脉动成份。

消除自激,减小对外杂散电磁辐射,提高EMI电磁兼容性。

74HC595的引脚及逻辑功能如图4.2

图4.274HC595管脚图74HC595逻辑图

74HC595的管脚功能描述见表4.1:

管脚号

管脚名称

管脚功能描述

1

QB

锁存器输出,三态

2

QC

锁存器输出,三态

3

QD

锁存器输出,三态

4

QE

锁存器输出,三态

5

QF

锁存器输出,三态

6

QG

锁存器输出,三态

7

QH

锁存器输出,三态

8

GND

电源地

9

SQH

串行输出,用于级联。

无三态输出功能

10

Reset

低电平有效,当此管脚上出现低电平时,将复位内部的移位寄存器,但不影响8位锁存器的值

11

ShiftClk

移位寄存器时钟输入,上升沿将把A脚上的数据移入内部寄存器

12

LatchClk

锁存时钟输入,上升沿将把内部移位寄存器的值锁存起来

13

OutputEnable

低电平有效,将锁存器的输出映射到输出并行口(QA-QH)上。

当输入高电平时,高阻态,同时本芯片的串行输出无效

14

A

串行数据输入,数据从这个管脚移进内部的8位串行移位寄存器

15

QA

锁存器输出,三态

16

VCC

电源正,2-6VDC

表4.174HC595的管脚功能描述

4.1.3行驱动电路设计

因为本设计要求的行驱动电流较大,目前尚无合适的集成电路来胜任。

因此本设计的行驱动电路采用三极管扩流方式,如图4.3。

图4.3两种三极管扩流方式(共集,共射)

共集驱动方式,又称射极跟随器,当电源电压足够时,在负载上获得的电压始终等于基极对地电压Ub减去发射结压降Ube。

硅管的Ube一般为0.7V左右,因此在5V供电系统中,在负载上最多能获得4.3V的电压,若Ic=1A则在三极管上的管耗为1A×0.7V=0.7W,管耗较大,需选用中功率的管子。

还有一个重要的特点,共集电路的基极是用高电平驱动,而单片机在复位期间,所有I/O口都呈现高电平。

这样的话,在开机上电复位的瞬间,在所有的行线上都会获得电压。

而造成开机瞬间全屏显示或造成巨大的浪涌电流冲击,使电源电压跌落,单片机工作异常。

而使用共射驱动方式的话,同样的电源电压下,负载端能获得4.7V的电压,Ic=1A时的管耗只有0.3W。

因此可选用小功率器件。

共射电路的基极驱动是用低电平,这就不会造成上述共集电路的浪涌电流影响。

同时,大部分单片机的I/O是弱上拉输出,也即是单片机能承受较大的灌电流,而只能提供微弱的拉电流。

因此,综合权衡利弊,本设计采用PNP管共射电路作为行扫描线驱动。

现对行驱动电路各元件参数进行计算。

4.1.4行驱动电路元件参数计算

假设条屏使用在极端情况下,每一行的所有LED全部点亮。

每行共96点阵,每个点阵包含红色,绿色两个LED。

因此每行共192个LED。

普通LED的安全工作电流在5~20mA之间,为获得较高亮度,又要兼顾其工作寿命。

本设计中,每只LED工作电流取15mA。

如此可知,当一行全点亮的时候

总电流:

管耗:

Pc=IC×VCEsat(管饱和压降)=2.88A×0.3V=0.86W;

STC12C系列单片机的每个I/O口能独立承受20mA的灌电流,也即是能够给共射驱动电路基极提供20mA的偏置电流。

根据上述集电极电流和基极电流的比值,可计算出行扫描驱动三极管的直流电流放大系数β.

直流电流放大系数:

;

对于基极偏流电阻,则起到对基极20mA偏置电流限流作用:

基极限流电阻:

根据上述计算,综合其成本、封装、散热等因素考虑。

本设计最终采用三只C8550D小功率PNP管并联成一只PNP中功率管使用。

其主要参数见图4.4。

C8550D官方数据手册摘录.

图4.4C8550D官方数据手册摘录

从C8550D的官方数据手册上可知:

最大集电极电流:

Ic=-1.5A;

最大集电极耗散功率:

Pc=1W;

直流电流放大系数:

β=160~300;

三管并联,其Ic可以扩展到4.5A,β不变,Pc扩展到3W。

本人所购买的50只同一批号的C8550D,经实测,β均在150左右。

因此三管并联无须增加射极均流电阻。

根据β确定基极电流Ib和基极限流电阻R分别为:

基极电流:

则基极限流电阻:

在实际设计中,基极限流电阻使用标准序列值200Ω。

采用贴片1206封装,便于缩小PCB体积,增加整体美感。

4.5对于系统电源及通信电缆的选择

4.5.1对于LED显示屏的电源要求

本系统没有设置独立的5V稳压器件,因此要求外部能对其提供相对稳定的电压。

为保证单片机等集成电路的稳定工作,要求电源电压的最大波动范围在4.8~5.2V之间。

本系统的工作电流随着显示内容的不同有很大变化。

在LED全灭的状态下,耗电电流为60mA左右;在LED全亮的情况下,工作电流可以达到3A;在滚动显示汉字的时候,耗电约为500mA左右。

因此,要求供电电源在负载电流变化较大的情况下能保持相对稳定的电压输出。

同时,条屏一般是全天候工作,对电源系统的长时间工作的稳定性要求较高。

考虑到上述因素,本设计采用功率容量75W,输出5V/10A的成品单端反激式开关电源来为条屏系统供电。

10A的电流容量对于条屏系统3A的满负荷电流仍有较大的余量。

这保证了长时间使用稳定性。

4.5.2开关电源在条屏应用中的优势

使用开关电源,相对于线性电源来说,有以下几个明显的优势。

成本低廉:

同等电压和电流容量的开关稳压电源的成本,是传统的工频变压器线性稳压电源的30%左右。

因此,在许多场合,开关电源已逐步取代线性电源。

高效率:

体现在极高的转换效率和极低的调整损耗上,开关电源的换能器是工作在开关状态下,因此转换的效率极高,长时间满负荷工作也不会引起电源过热。

正好满足条屏的应用场合。

功率密度大:

开关电源能够轻松地提供10A以上的电流。

在同等输出功率下,开关电源的体积只有线性电源的四分之一,重量为线性电源的十分之一。

功率越大,其优势越明显。

对于通信电缆的选择,本设计是将通信线和电源输入合并在一个DB9连接器上。

外部电缆使用多芯屏蔽电缆。

这样的设计,紧凑美观,坚固耐用。

第5章软件设计

5.1开发工具及语言

本系统的处理器是兼容8051指令集的高速单片机STC12C5412AD。

为此,首选KeilμVision作为其开发工具。

Keil μVision是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统。

其功能强大,生成的代码紧凑,是目前世界上使用最广的51系列兼容单片机开发工具。

本设计中,单片机软件是采用C51语言编写,C51语言是ANSIC的扩展集,其语法结构、关键字等与ANSIC绝大部分是相同的。

与汇编相比,C51语言在功能上、结构性、可读性、可移植性、可维护性上有明显的优势。

5.2单片机软件流程

根据本设计的应用要求,设计流程如图5.1示。

图5.1单片机软件流程

5.3单片机软件中几个重要算法的实现

5.3.1显示缓存技术与映射关系

本设计是采用软件算法来实现LED显示屏的动态显示及移动。

为此,在单片机内部的外扩数据存储器区(xdata区)开辟一个连续编址的8位宽动态显示缓冲区Display_Buffer,使显示缓冲区的每个字节与LED点阵模块的每行8个点一一对应。

如图5.2。

图5.2显示缓冲区与点阵模块的映射关系

如图5.2示,将实际的LED点阵与虚拟的显示缓存数组建立映射。

例如:

Display_Buffer_Y0表示LED点阵中最上一行的缓存数组,Display_Buffer_Y0[0]即Display_Buffer_Y0数组的第一个元素,与最上一行,最左边的八列LED点阵相对应。

5.3.2LED点阵与显示缓冲区见建立连续编址映射的算法

unsignedcharxdataDisplay_Buffer_Y0[14]_at_0x0000;

unsignedcharxdataDisplay_Buffer_Y1[14]_at_0x000e;

unsignedcharxdataDisplay_Buffer_Y2[14]_at_0x001c;

……………//Y3-Y14省略

unsignedcharxdataDisplay_Buffer_Y15[14]_at_0x00d2;

算法中的xdata关键词是将Display_Buffer_Yn[]数组存放在片内外部数据存储器中,_at_修饰符是将该数组从后面指定的地址开始存放。

各行数组中的第0到11号元素是显示缓冲区,第12、13号元素是字模点阵缓冲区。

经过这样的映射处理,极大的简化了动态扫描的算法难度,同时也简化了各种移动算法的实现。

要更新某行的列数据,只须将该行对应的缓存数组数据逐字节地移入列数据锁存器74HC595即可。

若要进行移动,只需将每行显示缓存的各数组元素首尾相接的进行逐位移动即可。

5.3.3实现动态显示的算法

voidLED_Scan()

{

WDT_CONTR=0x3C;//喂狗

HC595_OE_Disable();//设置74HC595的输出为高阻态,强行关闭显示

Write_HC595_12Byte(Display_Buffer_Y0);//向列数据锁存器74HC595移入第0行缓冲区12字节数据

Select_Y0();//选通第0行,使第0行的行线上获得+5V的电压

HC595_OE_Enable();//设置74HC595的输出为开漏,第0行开始显示

Delay_mS(delay_time);//延时一小段时间,使肉眼能看到LED发光

HC595_OE

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

当前位置:首页 > PPT模板 > 简洁抽象

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

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