首页 > 范文大全 > 正文

基于EZ-USB FX2的LED点阵图文显示屏

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于EZ-USB FX2的LED点阵图文显示屏范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘 要:介绍一种基于ez-usb fx2单片机的led点阵显示屏控制系统的实现方法,讨论USB 控制器EZ_ USB FX2(CY7C68013)的性能,给出该系统的软硬件实现方案,包括CY7C68013的固件程序和计算机主机用户程序。将系统读取的上位机数据通过USB接口传输到FX2单片机,由单片机端点2缓冲区寄存器进行存储,再对数据进行读取和显示,从而实现由FX2单片机完成USB通信及显示控制,省去额外的单片机当控制器。具有友好的人机交互界面和快速实时显示的特点。经过实践证明,该方案实现的LED点阵显示屏系统能基本满足符号和文字显示的需要。

关键词:EZ-USB FX2;LED点阵显示屏;点阵汉字库;固体程序

中图分类号:TP368.1文献标识码:A

文章编号:1004-373X(2010)02-034-04

LED Dot_matrix Display Based on EZ-USB FX2

HUANG Jianbin,QIU Hebo,DAI Xiang,CHENG Shuying,LIN Peijie

(College of Physics and Information Engineering,Fuzhou University,Fuzhou,350108,China)

Abstract:An implementation of LED dot_matrix display based on EZ-USB FX2 MCU is introduced.The performance of USB controller EZ_ USB FX2 (CY7C68013 ) and its hardware and software implementation are discussed,including firmware design of CY7C68013 MCU and computer host user program.The display data from computer are transmitted to FX2 MCU through USB interface and stored in endpoint 2 register,the data can be read and displayed.Thus the FX2 MCU can complete USB communication and display control,while it can get rid of additional MUC controller.The system has characteristics of fast real_time display and it can provide a friendly interface between human and machine.It is proved that the LED dot_matrix display system based on this solution can satisfy the requirement of symbol and word display.

Keywords:EZ-USB FX2;LED dot_matrix display;dot_matrix Chinese character library;firmware program

0 引 言

LED显示屏能直观形象地显示各种不同的图案、文本等信息,是现代都市的一种常用信息手段。它广泛用于证券交易、金融、交通、体育、商场导购促销显示、新闻及广告显示、车站机场班次时间资讯显示,比赛电子记分牌等。当前市场上流行的脱机LED显示屏控制系统的特点可以概括为两点:

(1) 人机交互系统由计算机控制,每一种显示屏控制系统对应着一种控制软件,LED显示屏用户将要显示的文本或图片通过上位机程序输入计算机,然后由上位机程序提取文本或图片的点阵信息并保存;

(2) 通信传输系统为有线控制,采用有线电缆作为传输介质――多数为RS 232总线或是RS 485总线,根据PC机配置的标准串行接口,进行电平转换。计算机通过上述总线将点阵信息送给显示屏扫描控制系统扫描显示[1]。

这两种方式都需要单片机控制器,增加了成本,而且采用RS 232总线,插拔不方便,会给用户带来不便。本文介绍的方案是可将EZ-USB作为USB接口与PC相连,通过PC机将要显示的汉字字模提取出来,利用EZ-USB内置的8051处理器控制点阵LED显示在屏上,省去了单片机控制器。具有人机界面好、速度快、可实时热插拔、成本低等优点。

1 系统硬件设计

1.1 CY7C68013芯片介绍

这里选用的CY7C68103[2]芯片属于Cypress公司的EZ-USB FX2系列。该芯片的封装为56_pin SSOP,它是该系列中功耗最低的。考虑到EZ-USB FX2系列芯片的内部结构相同,这里将主要介绍FX2的特点。Cypress EZ-USB FX2是世界上第一款USB 2.0集成微控制器。它在一个芯片内集成了USB收发器、串行接口引擎(SIE),增强型8051微控制器(CPU)和一个通用可编程接口(GPIF)。图1是EZ-USB FX2的56_pin封装结构简图\。

图1 EZ-USB FX2内部结构图

集成的USB收发器通过USB电缆的D+和D-线连接到主机,再经串行接口引擎(SIE)进行数据的编码和解码,完成错误校验、位填充等与USB协议有关的功能。最终,SIE传输来自或者送往USB接口的数据。EZ-USB FX2的SIE可以在12 Mb/s和480 Mb/s两种速率下运行。CPU采用具有更快执行速度和更多特点的增强型8051,它的内部RAM可用于程序和数据存储。对于典型的基于EZ-USB FX2的USB设备,CY7C68013的CPU具有双重功能[2]。

(1) 它执行高级的USB协议。该功能通过控制端点(端点0)服务与主机请求实现;

(2) 通常的系统应用。对于CPU来说,由于USB 2.0支持的数据传输速率太高,使其不能直接处理USB数据。所以,CPU只是简单的配置接口,当EZ-USB FX2的FIFO在USB与外部接口之间开始传输数据后就退出该通信通路。

1.2 USB控制电路设计

USB控制器及其电路组成了LED点阵显示屏的控制和数据传输模块,这部分电路主要负责传输来自PC上位机的数据到LED点阵显示屏显示,并负责与PC通信。由于CY7C68013集成了多重功能,所以外部电路就显得相对简单,减少了一般电路复杂的外部数据线和信号线的连接。USB控制器部分电路原理图如图2所示。

CY7C68013用自带的片内晶振电路和一个外部24 MHz晶振组成系统的时钟电路。它有一个片内锁相环(PLL)电路,利用PLL可以把24 MHz振荡器频率倍频至48 MHz,供收发器使用[4]。CY7C68013内部计数器把24 MHz的频率分频为内部8051需要默认的12 MHz的时钟频率。SCL和SDA分别为I2C总线的时钟线和数据线,在CY7C68013中,I2C控制器的漏极是开路的,因此将这两个引脚分别通过一个2.2 kΩ的上拉电阻连接到3.3 V电源上。RESERVED引脚通过一个10 kΩ电阻接地,否则不能正确找到USB设备。该设计没有使用WAKEUP引脚,所以可通过100 kΩ上拉电阻连接到3.3 V电压[5]。

图2 USB控制器的部分电路原理图

1.3 LED点阵显示屏电路设计

LED显示屏是采用8块8×8点阵显示屏连接而成的16×32的点阵显示屏,其中搭接的晶体管用于驱动LED点阵显示屏;利用并行接口向该点阵显示屏传送数据,还有利用74154译码器对点阵显示屏进行列选,再利用7404芯片对两块74154进行片选,这样可以节省24个并行接口,其电路如图3所示。

图3 LED点阵显示屏电路

由于点阵显示需要较大的驱动电流,所以将16位行选数据线经两块74LS245芯片进行电流放大来驱动LED点阵显示屏显示。

2 系统软件设计

2.1 固件程序设计

固件程序是指运行在设备CPU中的程序。固件程序负责初始化,处理标准USB设备请求及LED点阵显示控制。Cypress公司为CY7C68013提供了固件程序框架和固件函数库,在Keil C环境下进行开发。由于开发框架的引入,大大提高了用户开发的效率。固件程序由以下几部分组成:

(1) Fw.C固件框架程序。用于完成USB设备的基本功能,主要包含初始化、处理标准USB设备请求以及USB挂起时的电源管理等[6]。

(2) bulkloop.C是执行USB外设功能的程序。固件的设计主要针对这个文件,本设计中主要实例化 TD_Init函数、TD_Poll函数和端点2中断服务程序,实现了读取上位机数据和控制LED点阵显示的功能。

① TD_Init()。该函数负责整体状态变量的初始化,规定各种端点资源、中断的使用以及配置接口的输入/输出等。本设计中对PA,PB和PD初始化为输出方式,将端点2配置成传输方式为Bulk,传输方向为out,每个数据包为512 B的数据块,并开启端点2的中断,在接收到数据时,在端点2的中断服务子程序中对数据进行读取和处理。

② TD_Poll()。该函数在设备工作期间被反复调用。它主要用于执行外设功能,在处理完高优先级的任务后返回。本设计中LED显示屏需要实时动态扫描,所以利用框架在空闲时对TD_Poll的不断调用实现。在TD_Poll中写入点阵显示屏的驱动程序,实现了显示屏的静止显示和滚动显示。

(3) DSCR.A51是描述表文件。负责设备的描述工作,CY7C68013在上电后自动利用其中的VID和PID取代默认的VID和PID。

框架程序首先调用TD_Init()做初始化工作,然后开始重枚举设备直到端口0检测到Setup包。一旦检测到setup包,框架程序就开始执行任务调度程序。流程如图4所示[5]。

图4 固件程序框图

2.2 PC方主控软件设计

主控软件包括两个部分:一个是对汉字字库的提取,实现汉字点阵转换;另一个是通过USB口实现计算机对显示屏的显示控制。

2.2.1 汉字字库的提取

在不同的计算机操作环境下实现汉字字模提取方法的原理不同。传统方法为使用UCDOS 的点字库,即在计算机系统中,利用二个字节的代码表示一个汉字。在计算机系统内部,处理和存储汉字使用的是两个字节的机内码。为了保证中西文兼容,即与ASCII 码的使用不发生冲突,汉字中两个字节的最高位均为1。1981年我国正式国家标准:《信息交换用汉字编码字符集――基本集》(GB2312_80)。在这个标准中,GB2312国标字符集构成一个三维平面,分成94行,94列行号称为区号,列号称为位号,每一个汉字或字符在码表中都有各自的位置,因此各有一个惟一的位置编码,该编码就是字符所在区号(行号) 及位号(列号) 的二进制代码(7 位区号在左,7位位号在右,共14 位) ,这就叫汉字的区位码。区位码指出该汉字集中的位置[7]。

UCDOS为用户提供了大多数汉字的16点阵和24点阵字库。本设计采用16点阵的汉字库,其字库文件为HZK16。汉字点阵字模代码是按照区位码的顺序在文件HZK16中存放的。在程序中容易获得汉字的机内码,如果知道区位码和机内码之间的关系,就可以编程得到字模代码[1]。

区位码和机内码的关系为:

机内码高字节=区码+ A0H;机内码低字节=位码+ A0H。

经上述分析可得,获取汉字字模的基本步骤是获取汉字的机内码;通过汉字的机内码推算出区位码;由区位码计算出汉字在字库中的位置偏移地址offset:offset=[(区码-1)×94+(位码-1)]×32;

从该偏移地址读取 32 个字节,就是相关汉字的点阵字模代码[6]。

2.2.2 USB传输控制

PC端主机应用程序是操作系统与用户之间的接口,Windows系统把每一个设备都抽象为文件,应用程序通过调用对文件操作的应用编程接口(API)函数实现与USB设备的通信[8]。本程序实现EZ-USB FX2与计算机的通信,在界面软件中输入所要显示的汉字,经USB传输到单片机中,使显示屏可固定、平移地显示汉字。

该应用程序采用VC 6.0编译器进行编译[9],界面程序使用C++语言编写[10]。当下位机上电并与计算机连接后,应用程序首先检测USB设备是否与上位机连接成功,直到设备重枚举,程序与设备能正常通信为止,如图5所示。数据通过块传输方式向USB设备的端点2传送数据。软件工作具体过程是打开应用程序,应用程序首先进行初始化查找USB设备,获得设备句柄。当启动传输后,程序先检测是否已输入要显示的汉字;若检测到已输入,则提取输入汉字的字模数据。通过USB发送字模数据到下位机端点2缓冲区。程序流程框图如图6所示。

图5 上位机程序界面

图6 应用程序流程图

通过USB 2.0芯片Cy7C68013的硬件连接设计和系统软件设计,实现了LED显示屏的滚动显示。硬件调试效果见图7。

3 结 语

该方案在实现将USB控制芯片进行传输控制的同时,实现了LED显示屏的显示控制。相比其他USB系统省去了单片机控制器,节约了成本。相比于使用其他串行传输方式,使用USB传输方式更方便易用。经过实际制作证明,该方案实现的LED点阵显示屏能基本满足图片文字显示的需要。

图7 硬件调试效果图

参考文献

[1]邓宏贵,汪龙峰,李志坚,等.基于USB_host技术显示控制系统的扩展研究[J].光电子技术,2008,28(1):55_59.

[2]贾宝金,王宝珠,李晓玲.基于USB的数据采集系统的设计与研究[J].现代电子技术,2007,30(24):187_190.

[3]许永和.USB设备设计与应用――EZ-USB FX 系列单片机应用[M].北京:北京航空航天大学出版社,2002.

[4]陈茜,刘文怡,熊继军,等.基于EZ-USB与FX2的通用数据传输模块[J].微计算机信息,2006,22(35):74_76.

[5]钱峰.EZ-USB FX2单片机原理、编程及应用[M].北京:北京航空航天大学出版社,2006.

[6]王保华.利用VC++实现汉字字模的提取与小汉字库的生成[J].单片机与嵌入式系统应用,2002(1):41_42.

[7]黄金龙.点阵汉字字模提取软件设计[J].南昌职业技术师范学院学报,2001(5):3_18,25.

[8]李波,刘嘉勇,蒋瑜,等.基于EZ-USB FX2的单向传输系统设计与实现[J].信息与电子工程,2008,6(1):46_50.

[9]王艳平,张铮.Windows程序设计[M].2版.北京:人民邮电出版社,2008.

[10]钱能.C++程序设计教程[M].2版.北京:清华大学出版社,2008.

[11]刘振波,熊庆国,唐明涛.FPGA和EZ-USBFX2在采集图像数据中的应用\.现代电子技术,2009,32(8): 31_32.

[12]韩昌,赖松林,程树英.基于USB接口的电化学沉积仪器数据采集系统的研究\.现代电子技术,2009,32(9):149_152.

作者简介 黄建斌 男,1988年出生,福建福安人。研究方向为电子科学与技术。

邱河波 男,1988年出生,福建漳州人。研究方向为电子科学与技术。

戴 祥 男,1987年出生,福建泉州人。研究方向为电子科学与技术。

程树英 女,1966年出生,福建武夷山人,教授。研究方向为光电薄膜材料、光电器件及应用。