范例五汉字点阵
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
范例五汉字点阵
一.系统概述
1.课题背景
自上世纪90年代以来,随着LED显示屏的设计制造水平的不断提高,LED显示屏已经在生产和生活中大量使用,如今在证券交易所、飞机场、火车站、体育馆等公共场所LED显示屏随处可见。现代社会是信息社会,LED显示屏作为视觉传播媒体的主要产品之一无疑会有更大的发展空间。
LED点阵显示屏按照显示的内容可以分为图文显示屏、图像显示屏和视频显示屏。与图像显示屏相比,图文显示屏的特点就在于无论是单色还是彩色显示屏都没有颜色上的灰度差别,因此图文显示屏也就体现不出色彩的丰富性,而视频显示屏不仅能够显示运动、清晰和全彩色的图像,还能够播放电视和计算机信号。虽然这三者有一些区别,但它们最基础的显示控制原理都是相似的。
2.设计思路
考虑到用LED点阵显示汉字的时候,需要将汉字的字模提取出来。考虑到成本问题,该设计中字模的解析由PC端完成。而MCU方则负责将接受PC方发送过来的解析好的汉字,并将它显示出来。
二.硬件设计
1.主要构成
LED点阵条屏是由12个8*8的LED点阵块组成,形成16*48矩形点阵,可以显示16*16汉字3个。以飞思卡尔的08系列单片机M68HC908JL8为控制核心。显示屏的其他主要硬件有:①带锁存输出的8位移位寄存器74HC595,作为LED的列线驱动输入;②四六译码器74LS154,作为LED行线的译码选择;③三极管TIP127,连接四六译码器的十六个输出端,作为开关使用,驱动LED的行线④芯片MAX232起到与PC机进行通讯的作用。具体的连接方式见图6-39所示。
JL8芯片使用的引脚如下:PA0-PA3与4-16译码器74LS154的输入口A、B、C、D相连接。PB0-PB3与74HC595的输入口SI、SCK、RCK相连接。PD6-PD7作为串口通信使用跟RxD、TxD相连接。
4-16译码器74LS154的16个输出端连接到16个三极管TIP127的基极B。三极管的发射极E连接5V电源。集电极C连接到三个汉字点阵的16个行控制端。
图6-39 连接框图
点阵的48列数据线驱动由6片74HC595级联组成。前一片74HC595的QH’引脚连接下一片的SI引脚,各片的SCK、RCK、SCLR、G引脚分别并联。
2.LED点阵块
8*8的LED点阵为单色行共阳模块,单点的工作电压为正向(Vf)=1.8 v ,正向电流(IF)= 8-10 mA 。静态点亮器件时(64点全亮)总电流为640mA,总电压为1.8 v,总功率为1.15 W。动态时取决于扫描频率(1/8或1/16秒),单点瞬间电流可达80-160 mA。16*16点阵静态时16*16*10mA,动态时单点电流80-160mA。
其具体接线方式如下:
当某一行线打高时,某一列线为低时,其行列交叉的点就被点亮;某一列线为高时,其行列交叉的点为暗;
当某一行线打低时,无论列线如何,对应这一行的点全部暗。
图6-40 点阵及引脚示意图
图6-41 74HC595管脚图图6-40为共阳极的点阵模块,其具体引脚控制行列如下所示。
控制第五行显示接高9 控制第一行显示接高
控制第七行显示接高10 控制第四列显示接低
控制第二列显示接低11 控制第六列显示接低
控制第三列显示接低12 控制第四行显示接高
控制 第八行显示 接高 13 控制 第一列显示 接低 控制 第五列显示 接低 14 控制 第二行显示 接高 控制 第六行显示 接高 15 控制 第七列显示 接低 控制 第三行显示 接高 16 控制 第八列显示 接低
3.移位寄存器74HC595
74HC595是带锁存输出的8位移位寄存器,其管脚见图6-41,其中SI 是串行数据的输入端;VCC 、GND 分别为电源和地;RCK 是存储寄存器的输入时钟,SCK 是移位寄存器的输入时钟,SCLR 是移位寄存器的输入清除,QH ’是串入数据的输出,G 是对输入数据的输出使能控制,QA~QH 串入数据的并行输出。从SI 口输入的数据在移位寄存器的SCK 脚上升沿的作用下输入到74HC595中,在RCK 脚的上升沿作用下将输入的数据锁存在74HC595中,当G 为低电平时时,数
据并行输出。SCLR 为移位寄存器的输入清除端。 74HC595与JL8的连接:SI 【14脚】,SCK 【11脚】,RCK 【12脚】分别接到JL8的B0【21脚】,B1【20脚】和B2【18脚】上。
图6-42 74LS154引脚图
图6-43 主程序流程
其他脚连接:G 【13脚】接地,使其始终输出;SCLR 【10脚】接+5V ,使输入数据永不清除;QH ’【9脚】是连接下一片74HC595的SI 脚;QA ,QB 到QH 分别连接到LED 点阵的1至8列的列线脚上,是第一列【13脚】,第二列【3脚】,第三列【4脚】,第四列【10脚】,第五列【6脚】,第六列【11脚】,第七列【15脚】,第八列【16脚】。
4.4-16译码器74LS154
74LS154是一个4-16译码器,其管脚如图6-42所示。A 、B 、C 、D 为译码器的输入端,值的范围从0000到1111,Y1~Y15是对应于A 、B 、C 、D 输入端输入译码后的输出引脚,其中被选中的线输出低电平,没有被选中的输出高电平。1G 、2G 是使能端,只有输入相应D 低电平才能使译码器正常工作。
74LS154与JL8的连接:A 【23脚】,B 【22脚】,C 【21脚】,D 【20脚】分别接到JL8的A0【2脚】,A1【6脚】,A2【8脚】和A3【9脚】上。
其他脚连接:G1【18脚】,G2【19脚】接地,使芯片工作;Y1【1脚】~Y15【17脚】连
接到电阻上;其中GND【12脚】,VCC【24脚】。
三.软件设计
该设计中软件部分由MCU方和PC方组成。MCU方主要负责数据的接收、存储和扫描显示三大功能。而PC方则主要实现两大功能。一是汉字字库的提取。另一个是通过串口将提取的汉字发送到MCU,以便LED显示。
图6-44 串行中断程序流程
图6-45 串行传送数据子程序
1.MCU方主程序
刚开机时主程序主要完成整个硬件系统的初始化,包括对CONFIG的初始化、堆栈初始化、I/O口的定义和初始化、串行口的定义和设置、擦写程序的初始化设置和默认显示时各个参数的设置。主程序从上电一开始显示的是原来设置好的汉字,然后根据接收的数据,调用相应子程序显示,程序流程如图6-43所示
2.串行通信程序
每当向PC机方应用程序里输入新显示内容并发送给单片机时,单片机就产生串行中断,接收待显示的点阵数据。进入中断后,首先关闭中断,防止接收数据出错,然后将收到的显示信息数据存入变量,接收到的点阵数据在反馈给PC机确认后依次写入指定FLASH空间内,同时根据标记位判断数据接收是否全部结束,最后开中断返回主程序。程序流程如图6-44所示。