摘要:设计了一种LED显示屏模组测试系统,系统采用FPGA为核心器件,以verilog hdl作为编程语言,通过产生横线.竖线.斜线等不同图案,检测LED显示屏常见的几种扫描方式和走线方式.本系统携带方便.通用性好.操作简便.
1.引言
随着信息时代高新技术的飞速发展,人们对及时获取并显示各类信息的欲望日益强烈,对传播媒体的要求也越来越高.而LED显示屏以亮度高.功耗小.视角广.故障率低.组合灵活.使用寿命长.显示内容多样.显示方式丰富等优点,成为多个领域信息显示的重要媒体之一.但是,由于目前LED显示屏种类繁多,国内.国际LED显示屏生产厂家很多,多数公司没有实行标准化生产,还是按着订单生产,导致不同厂家以及同一产品不同批次之间的差异较大.给LED显示屏的安装.检测.维修带来一定的麻烦,所以,为了能实时掌握LED显示屏的相关特性,设计一种能自动识别LED显示屏模组特性的智能系统是必要的.本文介绍的是一个以Altera公司的EP2C8Q208C8为核心器件和一个转接板组成的LED显示屏模组测试系统,该系统支持几种常见的LED显示屏接口(08,12).该系统通过产生横线.竖线.斜线.红色.绿色.蓝色等不同图案,来检测LED显示屏模组的扫描方式和走线方式,及L E D是否有坏点,方便显示屏的安装和维修.
2.LED显示屏模组的原理
LED是发光二极管(Light Emittingdiode)的英文缩写,早期的L E D产品是单个的发光管,随着数字化设备的出现,LED数码管和字符管得到了广泛的应用,而LED点阵模块的出现,更是适应了信息化社会发展的需要,成为大众传媒的重要工具,应用领域广泛.为了适应各种场合的需要,LED点阵模块的LED发光灯的个数.排列方式等各不相同.典型的LED点阵模块有4*4.8*8.16*16等多种结构形式,如图1所示为8*8的LED点阵模块结构图.
从图1看,该点阵模块需要64个LED发光灯,且每个发光灯都置于行列的交叉点处,按着行共阳极.列共阴极的结构排列,如果需要点亮某个LED发光灯,只需将它所在的行置为高电平,所在的列置为低电平即可.
LED显示屏模组的驱动方法主要有两种:
扫描型和锁存型.扫描型是指LED显示屏上的16行,8行或4行等若干行LED共用一行驱动寄存器,一般分别称为1/16扫,1/8扫和1/4扫.
对应这几种扫描方式,有相应的走线方式与之呼应,为了方便描述,用统一的特征码表示:xx-Pyy-[aa-bb],方括号表示可以重复多次,如图2为相应代码的解释.1/16扫描的模组可以简单的描述成16-P16,一路数据带16行.1/8扫描的模组有三种走线方式:8-P8.8-P16-8上蛇形和下蛇形.1/4扫描的模组有六种走线方式:4-P4.4-P8-8上蛇形和下蛇形.4-P16-8上蛇形和下蛇形.4-P16-8-8-16.如图3为1/8扫描方式8-P16-8上蛇形走线方式的图解.锁存型是指显示屏上的每一个LED灯都有一个独立的驱动寄存器,与扫描型一样,锁存型也有对应的走线方式与之呼应,典型的有1-P16-16.1-P8-1-4-4和1-P8-4-4-16,如图4为静态扫描方式1-P8-1-4走线方式图解,图5为静态扫描方式1-P8-4-4-16走线方式图解.
3.硬件部分设计
本论文采用FPGA作为主控芯片,FPGA具有丰富的基本可编程逻辑单元.布局布线资源.I/O引脚.运行速度快等优点,能完成比较复杂的设计.为了能够测试常用的几种接口(08.12)的LED显示屏模组,本系统设计了一块转接板.如图6所示为LED显示屏模组测试系统的硬件框图.
本硬件系统包括两个部分:主控卡和转接卡.主控卡的核心器件FPGA选用Altera公司生产的EP2C8Q208C8,该器件寄存器资源丰富,可以实现大量数据的产生.通过使用VerilogHDL语言对其编程,产生LED显示屏驱动电路所需的各种时序信号.电源.晶振.按键等都属于该FPGA的外围电路,电源通过连接12V的外接电源,通过电源芯片转换成1.2V,3.3V和1.8V,以满足FPGA所需的各种电压需求.晶振采用50MHZ的频率,按键主要包括复位和电源开关按键,主控卡上的两排排针,用于与转接板对接.它们一起组成主控卡部分.转接卡主要包括74HC245.各种接口对应的插针.各种按键和LED指示灯等器件.74HC245主要作用是放大从主控卡接收到的各种驱动信号,并分配给相应接口(08.12)的引脚.各种接口对应的插针用于与LED显示屏引出的接口对接.按键用于显示方式.颜色.扫描方式和走线方式的切换.LED指示灯用于显示该转接板是否处于工作状态.
4.软件部分设计本系统软件部分使用Verilog HDL语言完成软件编程,Verilog HDL语言简洁.高效.功能强,是目前世界上最流行的硬件描述语言之一,它能很好的描述数字系统的结构和行为.因此,本系统选用Verilog HDL作为FPGA的编程语言.如图7所示为FPGA内部的模块框图,以16*16LED显示屏模组为例.本系统主要包括4个模块:PLL模块.数据产生模块.颜色切换模块.双口RAM读写模块和LED显示屏驱动模块.
PLL模块用于产生后面四个模块需要的时钟信号,数据产生模块是根据需要显示的图形信息.LED显示屏模组的扫描方式和走线方式,给出相应的数据,图形信息包括横线.竖线.斜线.全亮,如图8为数据产生模块流程图.
该模块首先接收来自转接板上扫描方式.走线方式和显示方式切换按键的值,每按一次,相应计数器就加1,默认状态扫描方式是16扫,走线方式直行走线,显示方式是横线.
系统刚上电时,该模块按着默认的状态产生相应的数据,并进行数据组织,以满足显示屏的走线方式,每产生一个数据,数据个数计数器加1,直到数据个数计数器的值大于256,停止计数,将计数器清零,继续产生竖线.斜线等数据,循环往复.
颜色切换模块负责接收数据产生模块的数据,并根据不同的颜色组合,给R.G.B三种LED发光灯分配相应的值,颜色组合包括单红.单绿.单蓝.红和绿双色.全白,如图9为颜色切换模块流程图.该模块接收来自转接板上颜色切换按键的值,每按键一次,颜色切换计数器就加1,默认的颜色是红色,根据颜色切换计数器的值确定R.G.B哪些赋值,哪些不赋值.每赋值一次,数据个数计数器就加1,直到计数器的值大于256,停止计数,将计数器的值清零,并将R.G.B的值置1.
双口RAM读写模块主要是负责存储显示屏的数据,以便满足显示屏的刷新率.最后,LED显示屏模组驱动模块从双口RAM读写模块读取数据,并将读取来的数据传输给LED显示屏的驱动电路,并由驱动电路驱动LED显示屏显示相应的图形.颜色信息,如图10为LED显示屏驱动模块流程图.该模块接收转接板上扫描方式切换按键的值,每按一次,扫描方式计数器就加1,默认是16扫,即每次锁存1行数据并显示,根据扫描方式,确定每次锁存的行数(1,2,4或者16).在锁存数据的同时,分别给LED显示屏驱动电路的OE使能信号.CLK时钟信号.行选信号及译码器片选信号分配相应的数据值.
5.结束语
本论文以FPGA为核心器件,设计了LED显示屏模组测试系统,能自动识别LED显示屏的扫描方式和走线方式,及能检测LED显示屏是否有坏点.该系统与传统的通过连接计算机的控制卡,给显示屏发送特定图片的方式相比,该系统更方便携带.操作简单.测试效率更高,使LED显示屏的安装.维修更方便.简单.