1、汉字点阵显示系统一、项目简介LED 电子显示屏是随着计算机及相关的微电子光电子技术的迅猛发展而形成的一种新型信息显示媒体。它利用发光二极管构成的点阵模块或像素单元组成可变面积的显示屏幕,它具有高清晰度、色彩鲜艳、视角大、工作稳定、寿命长、功耗低等优点。由于采用单元模块化结构,屏体大小可按用户要求灵活拼制;它的超高亮度,使它在户内外显示中具有不可替代的作用。以可靠性高、使用寿命长、环境适应能力强、性能价格比高、使用成本低等特点,迅速成长为平板显示的主流产品,在信息显示领域得到了广泛的应用。广泛应用到军事、车站、宾馆、体育、新闻、金融、证券、广告以及交通运输等许多行业。目前 LED 显示屏作为新一
2、代的信息传播媒体,已经成为城市信息现代化建设的标志。本设计的 LED 点阵显示系统自带字库。其显示和动态效果(主要是显示内容的滚动)的实现主要依靠硬件扫描驱动,该方法方便,且易于实现。二、电路原理1、系统总体框图采用常用的 89C51 控制。技术比较熟练,应用广泛,现在的 51 系列技术硬件发展的也非常得快,也出现了许多功能非常强大的单片机,因此使用单片机可以实现要求的基本功能。下面是简单的用单片机处理的框图(图 1) 。2、显示原理采用 16 个 LED8*8 显示屏,构成 16 行*64 列点阵显示点阵显示屏由 16 个 88 点阵 LED 显示模块。16 片 88 点阵 LED 显示模块
3、利用总线形组成一个 1664 的 LED 点阵,用于同时显示 4 个 1616 点阵汉字或 8 个 168 点阵的字母字符或数字。单元显示屏可以接收来自控制器(主控制电路板)或上一级显示单元模块传输下来的数据信息和命令信息,并可将这些数据信息和命令信息不经任何变化地再传送到下一级显示模块单元中,因此显示板可扩展至更多的显示单元,用于显示更多的显示内容。LED 显示模块:LED 是英文 light emitting diode(发光二极管)的缩写,它的基本结构是一块电致发光的半导体材料,置于一个有引线的架子上,然后四周用环氧树脂密封,起到保护内部芯线的作用,所以 LED 的抗震性能好。 当其处于
4、正向工作状态时(即两端加上正向电压) ,电流从 LED 阳极流向阴极时,半导体晶体就发出从紫外到红外不同颜色的光线,光的强弱与电流有关。汉字的显示原理:LED 汉字显示模块采用动态扫描的方式来显示不同的内容。所谓动态显示就是逐行轮流点亮,这样扫描驱动电路就可以实现多行的同名列共用一套驱动器。以 1616 点阵为例,所有同一行发光管的阳极连在一起,所有同一列的发光管的阴极连在一起,先送出对应第一行发光管亮灭的数据并锁存,然后选通第一行使其点亮一定的时间,然后熄灭;再送第二行的数据并锁存,然后选通第二行使其点亮一定的时间,然后熄灭;。第 16 行之后又重新点亮第一行,这样反复轮回。只要速度足够快(
5、每秒 24 次以上),由于人眼的视觉暂停作用,我们就能看到显示屏上稳定的图形或文字了。用动态扫描的方法显示汉字的关键在于显示的亮度和显示内容的稳定性。亮度的高低由单位时间内通过的电流大小有关,内容的稳定性是指人眼对显示内容的感觉,在单位时间内,屏幕刷新的次数越多,人在视觉残留效应的影响下,就会感觉内容越稳定。T 03、字模的制作与保存本次设计设计的字模(1616)都是使用字模提取软件来获取的;如图所示,为本次取字的字模示意图。取字原理:由于采用共阴极的 LED 显示模块,故在取字符时,取字符阴码,即点亮LED 灯的信号为 1。取模顺序是从左到右,逐行取位,即第一个点作为最高位。每取 8 个点作
6、为一个字节。取字的字体由软件写入时的字体决定,每个 LED 灯的亮灭都是由一个数位来标志的。每一个字由 16 行 16 列的点阵组成显示。即国标汉字库中的每一个字均由256 点阵来表示。我们可以把每一个点理解为一个像素,而把每一个字的字形理解为一幅图像。事实上这个汉字屏不仅可以显示汉字, 也可以显示在 256 像素 范围内的任何图形。以下为用字模提取软件取的“河南大学通信工程系”的字模(C51 格式):/*- 文字: 河 -*/*- Fixedsys12; 此字体下对应的点阵为:宽 x 高=16x16 -*/0x20,0x00,0x17,0xFE,0x10,0x08,0x00,0x08,0x8
7、8,0x08,0x4B,0xC8,0x52,0x48,0x12,0x48,0x22,0x48,0x23,0xC8,0xE2,0x48,0x20,0x08,0x20,0x08,0x20,0x08,0x20,0x28,0x20,0x10/*- 文字: 南 -*/*- Fixedsys12; 此字体下对应的点阵为:宽 x 高=16x16 -*/0x01,0x00,0x01,0x04,0xFF,0xFE,0x01,0x00,0x02,0x00,0x3F,0xFC,0x24,0x24,0x22,0x44,0x2F,0xF4,0x21,0x04,0x3F,0xFC,0x21,0x04,0x21,0x04,
8、0x21,0x14,0x21,0x08,0x00,0x00/*- 文字: 大 -*/*- Fixedsys12; 此字体下对应的点阵为:宽 x 高=16x16 -*/0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0xFF,0xFE,0x01,0x00,0x02,0x80,0x02,0x80,0x02,0x40,0x04,0x40,0x04,0x20,0x08,0x10,0x10,0x18,0x20,0x0E,0x40,0x04/*- 文字: 学 -*/*- Fixedsys12; 此字体下对应的点阵为:宽 x 高=16x16 -*/0x01
9、,0x08,0x10,0x8C,0x0C,0xC8,0x08,0x90,0x7F,0xFE,0x40,0x04,0x8F,0xE8,0x00,0x40,0x00,0x80,0x7F,0xFE,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x02,0x80,0x01,0x00/*- 文字: 通 -*/*- Fixedsys12; 此字体下对应的点阵为:宽 x 高=16x16 -*/0x40,0x00,0x27,0xF8,0x20,0x90,0x00,0x60,0x07,0xF8,0x04,0x48,0xE7,0xF8,0x24,0x48,0x24,0x48,0
10、x27,0xF8,0x24,0x48,0x24,0x68,0x24,0x50,0x50,0x00,0x8F,0xFE,0x00,0x00/*- 文字: 信 -*/*- Fixedsys12; 此字体下对应的点阵为:宽 x 高=16x16 -*/0x08,0x80,0x0C,0x60,0x18,0x40,0x17,0xFE,0x30,0x00,0x33,0xF8,0x50,0x00,0x93,0xF8,0x10,0x00,0x13,0xF8,0x12,0x08,0x12,0x08,0x12,0x08,0x13,0xF8,0x12,0x08,0x00,0x00/*- 文字: 工 -*/*- Fix
11、edsys12; 此字体下对应的点阵为:宽 x 高=16x16 -*/0x00,0x00,0x3F,0xFC,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0xFF,0xFE,0x00,0x00,0x00,0x00/*- 文字: 程 -*/*- Fixedsys12; 此字体下对应的点阵为:宽 x 高=16x16 -*/0x0D,0xF8,0x71,0x08,0x11,0x08,0x11,0x08,0xFD,0x08,0x
12、11,0xF8,0x30,0x00,0x3B,0xFC,0x54,0x40,0x50,0x40,0x93,0xFC,0x10,0x40,0x10,0x40,0x10,0x40,0x17,0xFE,0x10,0x00/*- 文字: 系 -*/*- Fixedsys12; 此字体下对应的点阵为:宽 x 高=16x16 -*/0x00,0x7C,0x3F,0x80,0x02,0x20,0x04,0x20,0x08,0x40,0x1F,0x80,0x03,0x20,0x0C,0x10,0x3F,0xF8,0x10,0x8C,0x04,0xA0,0x08,0x90,0x10,0x88,0x20,0x84
13、,0x42,0x84,0x01,0x004、系统电路硬件电路大致上可分为单片机系统及外围电路、列驱动电路和行驱动电路 3 部分。单片机采用 89C51 及其兼容系列,采用 24M 晶振以获得较高的屏幕刷新率,使显示更稳定。单片机的串口与列驱动相连,用来送显示数据。P1 口低 4 位与行驱动相连,送行选信号。P1.5P1.7 口则用来发送控制信号。P0 口和 P2 口可在必要时扩展 ROM 或RAM,以显示更多的文字。列驱动电路由 74HC595 构成,它具有一个 8 位串入并出的移位寄存器和一个 8 位输出锁存器,而且移位寄存器和输出锁存器的控制是各自独立的,可以实现在显示本行各列数据的同时,
14、传送下一行的列数据,达到重叠处理的目的。P1 口低四位输出的行号经 4 线-16 线译码器 74LS154 译码后生成 16 行选通信号线,再经过行驱动器驱动相应的行线。1 条行线上要带动 16 列的 LED 进行显示,按每一 LED器件 20mA 电流计算,16 个 LED 同时发光时,需要 320mA 电流,选用三极管 8550 作为驱动管可以满足要求。三、 系统主程序1、程序架构和实现a扫描模块的实现 由于 LED 的扫描驱动是一个重复的不间断的过程,自然,定时中断是最好的实现方法b刷新模块的实现程序设计中,一般将此模块置于定时中断中或主程序循环体中,通过检测对应的消息来决定其是否需要执
15、行数据的刷新。 c. 字符、点阵发生器主要是通过定义相应的点阵来保存各种需要显示数据。 2、程序流程系统主程序开始以后首先是对系统环境初始化,包括设置串口、定时器、中断和端口。然后以“卷帘出”效果显示一个图形。停留约 3 秒,接着以上滚动、左滚动、右滚动等不同效果显示“河南大学通信工程系”等字库里的汉字。设置系统不断地循环执行。以下是软件显示驱动流程图。对定时器赋初始值的计算:刷新率(帧频)= T0 溢出率= 1616t0)-(53 2fosc四、安装与调试1、简要的安装说明(1)、筛选测试全部元器件(2)、检查印制板质量。(3)、正确安装和焊接元器件。(4)、最后检查安装正误和焊接质量(5)
16、、编写控制程序(6)、用 KeilC51 调试程序无误。(7)、用专用的程序烧写装置烧入 EM78P153S。(8)、插入对应 IC 插座等候调试2、简要的调试说明(1) 、用万用表测试电源通道不短路后加电。(2) 、检测电源电压是否 5V。(3) 、测试集成块管脚电压是否正常。可能出问题的地方:电源输出不正常、集成块查错、点阵块查错、三极管驱动错误。五、扩展与再开发本项目的电路设计功能是有限的,也不够完善,仅为抛砖引玉只用。同学们在现有软硬件基础上结合所学的专业知识,可进一步再开发扩展功能,提高性能。使之具有更先进、更实用、更有独创性的好产品出现。下面给出几个开发扩展题目供参考:1、 增加 ROM 的扩展电路,使系统能够显示更多的汉字。2、 增加与计算机串行通信电路,使汉字可以通过计算机输入。3、 编制程序,使系统能够调用计算机的汉字库。结 束 语本课程给出了汉字点阵显示的一种实现方案。尽管功能不强,但显示原理是相同的,可以通过本设计学到相关的知识,修改设计方案,利用计算机控制或功能更强大的 ARM或 DSP 来实现大规模的点阵显示系统。同学们应该在本次学习的基础上不断的充实和提高自己。最后祝大家:学业有成,事业成功!