基于FPGA的汉字点阵显示系统设计

2012-09-15 08:31郭志冬
无锡职业技术学院学报 2012年5期
关键词:字库汉字电路

郭志冬

(三门峡职业技术学院机电工程系,河南 三门峡 472000)

基于FPGA的汉字点阵显示系统设计

郭志冬

(三门峡职业技术学院机电工程系,河南 三门峡 472000)

利用可编程逻辑器件设计了一个16×16的LED点阵显示系统,通过设计VHDL程序从EEPROM(AT28C64)中取出相应的汉字代码,经过FPGA处理后,送给LED点阵显示,在相应电路控制下,能够变换不同的汉字。具有广泛的应用价值。

可编程逻辑器件;现场可编程门阵列;LED显示;超高速硬件描述语言;QuartusII

LED显示屏技术是集光电子技术、微电子技术、计算机技术和视频技术为一体的高科技产品,它的发光部分由LED(即发光二极管)点阵拼装组成,其优点是耗电量少,亮度高,工作电压低,驱动简单,寿命长,性能稳定。显示屏面积可以根据需要由单元模块任意拼装,响应速度快。[1]LED显示屏以其丰富的色彩变化,图案,实时动态地显示模式,完美的多媒体效果和强大的视觉冲击力,将信息以文字、图片、动画及视频等多种方式显示出来,成为信息传播的划时代产品,在铁路、民航、体育场馆、会议厅、高速公路、广场、大型商场、银行、证券市场以及多种监控调度中得到了广泛的应用。

本系统采用FPGA(Field Programmable Gate Arra,现场可编程门阵列)来设计,FPGA是一种高密度可编程逻辑器件,它支持系统可编程,通过写入不同的配置数据就可以实现不同的逻辑功能,使用FPGA来设计电子系统,具有设计周期短、易于修改、可靠性高等明显优点。此外,随着可编程逻辑器件和EDA技术的飞速发展,越来越多的电子系统采用FPGA来设计,一旦该系统达到一定的产量规模,较容易转化为ASIC(专用集成电路)芯片设计,而且具有完全的知识产权。[2]

本设计通过FPGA的引入,利用EDA工具软件QuartusII,设计了一种LED点阵显示控制系统,实现了LED屏自动扫描的功能,大幅提高了LED屏的频率。[3]

1 汉字点阵显示原理

汉字点阵显示系统实际上就是利用FPGA产生EEPROM(AT28C64)的对应地址A9~A0,接收来自EEPROM(AT28C64)的字数据信号D7~D0,同时对外产生16×16LED点阵相应扫描驱动信号。根据设计任务提出的功能要求,整个系统应大致包括如下几个组成部分:汉字选择电路、数据地址产生电路、数据读取电路、显示扫描等部分组成。系统电路组成框图如图1所示。

图1 汉字点阵系统组成框图Fig.1 Chinese characters dot matrix system composition

点阵的结构实际上是一组很小的发光二极管,排列紧密而且规则。当点亮其中的一些灯,而熄灭一些灯时,点阵就可以显示图符。16×16的点阵引脚除电源和地线外还有十六根行扫描引脚,十六根列扫描引脚。点阵工作时,电源和地线固定连接好,当某一些行扫描和列扫描有信号时,点阵中对应交点上发光二极管被点亮。但是使用这种方法只能使点阵显示一个矩形图符。如果需要显示更为复杂的图符,如汉字、图案等则需要用另外一种方法,既行扫描信号是以固定周期和固定次序循环变化,而列扫描信号在行扫描信号在某一特定值时,给出一组特定的数据。当行扫描信号变化周期比较快时,通过肉眼观察到的图符就是一个完整的。通过这种方法,可以用点阵显示复杂的图符。如果设计成点阵显示图符按某种事先指定的方法变化,则可以显示动画或其他信息。[4]

16×16扫描LED点阵的工作原理同多位数码管动态扫描显示类似。它有16个共阴极输出端口,每个共阴极对应有16个LED显示灯。所以其扫描译码地址是4位信号线。EEPROM(AT28C64)存储器是电擦除/编程的只读存储器,容量为8k× 8Bit,有13位并行地址线和8位并行数据线,而一个完整的字符所需的存储空间为32字节即32× 8Bit,也就是说EEPROM(AT28C64)最多可连续存256个16×16点阵字形。存储方式可事先约定好。设计者也可自己利用字模软件产生汉字代码,编写字库。

字库格式如图2所示。这是一16×16点阵字库,一个字占32个字节,例如“正”:

该字所对应的32个字节是:

图2 字库格式Fig.2 Font format

2 系统设计

2.1 系统各电路模块设计

(1)数据地址产生电路设计。根据点阵显示原理,一个16×16点阵汉字共占用32个字节,数据地址产生电路实质上就是一个三十二进制的计数器,以输入脉冲作为地址产生电路的计数时钟信号,待计数至32瞬间地址产生电路则清零并重新计数。重复选择该汉字的32个字节数据,从EEPROM(AT28C64)数据输出端口送出。

(2)数据读取电路设计。当提供给EEPROM(AT28C64)相应的地址后,EEPROM(AT28C64)即在I/OK口输出8位并行数据,根据设计任务分析,只要求读出字库数据并显示,所以可以直接将EEPROM(AT28C64)的片选端(CE)、输出使能端(OE)直接接地,这样读取数据只需要提供地址就可以了。读出的数据送到LED点阵的行线上。

(3)汉字选择电路设计。根据EEPROM(AT28C64)中汉字数据存放的特点,可以分析出前第一个汉字的地址为0000000000000―00000 0001 1111,第二个汉字的字节地址为0 0000 0010 0000—0 0000 0011 1111,……通过观察,我们不难分析出每个汉字的所有数据地址低5位都是相同的,要想选择不同的汉字,只要改变高8位地址即可。在这里本项目提供的字模数为23个汉字。因此只需提供一个23进制的计数器就可以循环选择不同的汉字。通过LED点阵屏显示出来。

(4)显示扫描电路设计。从EEPROM(AT28C64)读出的数据,要正确的显示在LED点阵屏上,必须将数据送到相应的位置,读出的单个汉字数据要依次放在W0,W1,W2,…,W31列。而其中W0―W15在上半部分,W16―W31在下半部分。因而读出的每个字前十六个数据地址为********00000―********0 1111,后十六个数据地址为********1 0000―********1 1111,通过观察分析可以发现,前十六个数据地址和后十六个数据地址中只有ADDR4不同,其余地址范围都是从0000―1111变化,因此用ADDR4来分配数据的上、下两部分。同时低四位地址用来将数据显示在 W0―W31相应位置,最终还原出一个汉字。

2.2 系统整体设计

根据以上对系统各部分电路功能的分析,整个系统包括以下三个模块:字库点阵数据地址产生模块ADDR、汉字点阵数据选择地址产生模块HZ_SEL、汉字点阵页面数据分配模块PAGE。系统整体原理图如图3所示。

图3 汉字点阵系统整体原理图Fig.3 Chinese characters dot matrix system principle diagram

3 VHDL源程序设计及仿真

本系统三个模块:字库点阵数据地址产生模块ADDR、汉字点阵数据选择地址产生模块HZ_SEL、汉字点阵页面数据分配模块PAGE,均在EDA开发工具软件QuartusII中采用VHDL语言文本输入设计法进行设计输入,并在QuartusII中实现仿真、编译。[5]以字库点阵数据地址产生模块为例,其VHDL源程序设计如下:

字库点阵数据地址产生模块的仿真波形如图4所示。

图4 字库点阵数据地址产生模块仿真波形Fig.4 Simulation waveform of font bitmap data address generation module

4 小 结

本系统在点阵显示的设计中,利用动态扫描显示的原理,同时利用读取数据的地址作为扫描的信号,大大简化了程序的设计。此外,可以扩展系统工作的外围电路:扫描信号发生器、直流工作电源、地址译码电路等,使其成为一个完整的独立系统。还可以考虑增加系统功能,如使汉字进行旋转或按照一定位移速度移动显示等,使整个系统更实用。基于FPGA的汉子点阵显示系统性能更稳定,显示效果更多样化,而且便于实现,尤其在大批量生产时其优势更为明显,具有广泛的市场应用价值。[6]

[1] 张著,程震先,刘继华.数字设计—电路与系统[M].北京:北京理工大学出版社,2001.

[2] 晓晖,熊建国.出租车计费器的FPGA设计[J].现代电子技术,2009(23):210-212.

[3] 童星,熊文龙.基于CPLD的LED显示控制板[J].武汉理工大学学报:交通科学与工程版,2007(1):144-147.

[4] 赵世强.电子电路EDA技术[M].西安:西安电子科技大学出版社,2000.

[5] 潘松,王国栋.VHDL实用教程[M].成都:电子科技大学出版社,2000.

[6] 唐杨波.基于单片机和CPLD共同控制的LED大屏幕显示系统的设计与实现.科技创新导报 [J],2009(13):24-25.

The Design of Chinese Characters Dot Matrix Display System Based on the FPGA

GUO Zhidong
(Department of Mechanical and Electronic Engineering,Sanmenxia Polytechnic,Sanmenxia 472000,China)

Use of programmable logic devices to design a 16×16LED dot matrix display system,through the design of VHDL program from EEPROM(AT28C64)out of the corresponding Chinese characters code,after treatment with FPGA,to the LED dot matrix display,in the corresponding circuit control,it can transform different Chinese characters.The system has a broad application value.

PLD;FPGA;LED display;VHDL;QuartusII

TP 316

A

1671-7880(2012)05-0045-04

2012-06-26

郭志冬(1981— ),男,河南焦作人,助教,河南科技大学控制工程专业硕士在读。

猜你喜欢
字库汉字电路
电路的保护
No.2 喜茶联合汉仪字库推出微型书和书签
解读电路
巧用立创EDA软件和Altium Designer软件设计电路
基于MATLAB模拟混沌电路
论计算机字库单字的著作权保护
——以方正诉宝洁案为例
汉字这样记
汉字这样记
老家的惜字库
字库之战