点阵LED显示原理与点阵汉字库的编码和从标准字库中提取汉字编码的方法.docx
《点阵LED显示原理与点阵汉字库的编码和从标准字库中提取汉字编码的方法.docx》由会员分享,可在线阅读,更多相关《点阵LED显示原理与点阵汉字库的编码和从标准字库中提取汉字编码的方法.docx(9页珍藏版)》请在冰豆网上搜索。
![点阵LED显示原理与点阵汉字库的编码和从标准字库中提取汉字编码的方法.docx](https://file1.bdocx.com/fileroot1/2023-6/22/4084f0ab-242a-4311-8755-f112f12fa765/4084f0ab-242a-4311-8755-f112f12fa7651.gif)
点阵LED显示原理与点阵汉字库的编码和从标准字库中提取汉字编码的方法
点阵LED显示原理与点阵汉字库的编码和从标准字库中提取汉字编码的方法。
2009年06月03日下午04:
27
一.实验要求
编程实现中英文字符的显示。
二.实验目的
1.了解LED点阵显示的基本原理和实现方法。
2.掌握
三.实验电路及连线
点阵显示模块WTD3088的(红色)列输入线接至内部LED的阴极端,行输入线接至内部LED的阳极端(若阳极端输入为高电平,阴极端输入低电平,则该LED点亮)。
发光点的分布如图22-0所示。
Fig22-0WTD3088LED分布
如图22-1示,本实验模块使用74LS374来控制列输入线的电平值。
将74LS374的某输出置0,则对应的LED阴极端被置低。
如图22-2示,本实验模块使用74LS273来控制行输入线,并通过9013提供电流驱动。
将74LS273的某输出置1,则对应的LED阳极端被置高。
每次系统重新开启或总清后,74LS273输出为全0,LED显示被关闭。
通过编程控制各显示点对应LED阳极和阴极端的电平,就可以有效的控制各显示点的亮灭。
Fig22-1LED模块及列扫描电路
Fig22-2行扫描电路
Fig22-3地址译码电路
本实验模块使用4块WTD3088组成16×16点阵,以满足汉字显示的要求。
为了方便的控制四个单元,使用了一片74LS139译码,产生四个地址片选信号:
CLKR1=CSLED,CLKR2=CSLED+1,用于行控制的两片74LS273;CLKC1=CSLED+2,CLKC2=CSLED+3,用于列控制的两片74LS374。
实验接线:
按示例程序,模块的CSLED接51/96地址的8000H。
四.实验说明
使用高亮度LED发光管构成点阵,通过编程控制可以显示中英文字符、图形及视频动态图形。
LED显示以其组构方式灵活、亮度高、技术成熟、成本低廉等特点在证券、运动场馆及各种室内/外显示场合得到广泛的应用。
所显示字符的点阵数据可以自行编写(即直接点阵画图),也可从标准字库(如ASC16、HZ16)中提取。
后者需要正确掌握字库的编码方法和字符定位的计算。
实验盘片中“字符转换”子目录下提供的Basc16.exe,BHz16.exe可方便的将单个字符的码表从标准字库Asc16,Hzk16中提取出来。
具体使用方法是运行上述可执行程序,根据提示输入所需字符(如是汉字还需要先启动dos下的汉字环境,如ucdos,pdos95等)。
程序将该字符的码表提取出来,存放在该字符ASC或区位码为文件名称的.dat文件中。
用户只需将该文件中内容拷贝、粘贴到自己的程序中即可。
但需要注意字节排列顺序、字节中每一位与具体显示点的一一对应关系,必要时还要对码表稍作修改。
同一目录下还提供了上述可执行程序的源文件,使用BC3.1编写,供用户参考。
五.实验程序框图
用户应留心其中行扫描的实现及码表的处理。
六.实验程序:
(一)提供LEDA51演示Asc16字符的简单点阵显示。
;*********LED点阵显示示例程序***********************
;**该程序显示Asc16字符**
;**为了简单起见,程序只显示一个字符**
;**该程序针对T598实验机的模块14**
;****************************************************
CSLEDEQU8000H
CSR1EQUCSLED;行1273
CSR2EQUCSLED+1H;行2273
CSC1EQUCSLED+2H;列1374
CSC2EQUCSLED+3H;列2374
ORG0000H
MOVSP,#60H
INIT:
MOVA,#0H;关闭行
MOVDPTR,#CSR1
MOVX@DPTR,A
MOVDPTR,#CSR2
MOVX@DPTR,A
MOVA,#0FFH;关闭列
MOVDPTR,#CSC1
MOVX@DPTR,A
MOVDPTR,#CSC2
MOVX@DPTR,A
D:
MOVR5,#00H
MOVR4,#01H;每次为单行扫描
DISP:
MOVA,R5
MOVDPTR,#ASCE;此处设定所要显示的字符
MOVCA,@A+DPTR
CPLACC;代码取反,决定显示的阴阳
MOVDPTR,#CSC2
MOVX@DPTR,A
MOVDPTR,#CSR1
MOVA,R4
MOVX@DPTR,A
RLACC
MOVR4,ACC
INCR5
LCALLDELAY
CJNER5,#8H,DISP
MOVA,#0H
MOVX@DPTR,A
MOVR5,#08H
MOVR4,#01H
DISP2:
MOVA,R5
MOVDPTR,#ASCE
MOVCA,@A+DPTR
CPLACC
MOVDPTR,#CSC2
MOVX@DPTR,A
MOVDPTR,#CSR2
MOVA,R4
MOVX@DPTR,A
RLACC
MOVR4,ACC
INCR5
LCALLDELAY
CJNER5,#10H,DISP2
MOVA,#0H
MOVX@DPTR,A
SJMPD
;********延时子程序,协调字符显示速度*************
DELAY:
MOVR7,#1H
DL1:
MOVR6,#00H
DL2:
DJNZR6,DL2
DJNZR7,DL1
RET
;********字符点阵字库***************
;ASC16字符编码排列
;0
;1
;|
;|
;14
;15
;高位D7--D0
;请注意编码的排列次序和实际显示点阵分布的关系
ASCA:
DB00H,00H,10H,38H,6CH,0C6H,0C6H,0FEH
DB0C6H,0C6H,0C6H,0C6H,00H,00H,00H,00H
ASCE:
DB00H,00H,0FEH,66H,62H,68H,78H,68H
DB60H,62H,66H,0FEH,00H,00H,00H,00H
ASCD:
DB00H,00H,0F8H,6CH,66H,66H,66H,66H
DB66H,66H,6CH,0F8H,00H,00H,00H,00H
ASCK:
DB00H,00H,0E6H,66H,66H,6CH,78H,78H
DB6CH,66H,66H,0E6H,00H,00H,00H,00H
;****************************************************
END
(二)LEDHZ51两个示例程序。
和Hz16字符的简单点阵显示。
;*********LED点阵显示示例程序***********************
;**该程序显示hz16字符**
;**为了简单起见,程序只显示一个字符**
;**该程序针对T598实验机的模块14**
;****************************************************
CSLEDEQU8000H
CSR1EQUCSLED;行1273
CSR2EQUCSLED+1H;行2273
CSC1EQUCSLED+2H;列1374
CSC2EQUCSLED+3H;列2374
ORG0000H
MOVSP,#60H
INIT:
MOVA,#0H;关闭LED显示
MOVDPTR,#CSR1
MOVX@DPTR,A
MOVDPTR,#CSR2
MOVX@DPTR,A
MOVA,#0FFH;关闭LED显示
MOVDPTR,#CSC1
MOVX@DPTR,A
MOVDPTR,#CSC2
MOVX@DPTR,A
D:
MOVR5,#00H
MOVR4,#01H
DISP:
MOVA,R5
RLACC
MOVDPTR,#HZAI
MOVCA,@A+DPTR
CPLACC
MOVDPTR,#CSC2
MOVX@DPTR,A
MOVA,R5
RLACC
INCACC
MOVDPTR,#HZAI
MOVCA,@A+DPTR
CPLACC
MOVDPTR,#CSC1
MOVX@DPTR,A
MOVDPTR,#CSR1
MOVA,R4
MOVX@DPTR,A
RLACC
MOVR4,ACC
INCR5
LCALLDELAY
CJNER5,#8H,DISP
MOVA,#0H
MOVX@DPTR,A
MOVR5,#08H
MOVR4,#01H
DISP2:
MOVA,R5
RLACC
MOVDPTR,#HZAI
MOVCA,@A+DPTR
CPLACC
MOVDPTR,#CSC2
MOVX@DPTR,A
MOVA,R5
RLACC
INCACC
MOVDPTR,#HZAI
MOVCA,@A+DPTR
CPLACC
MOVDPTR,#CSC1
MOVX@DPTR,A
MOVDPTR,#CSR2
MOVA,R4
MOVX@DPTR,A
RLACC
MOVR4,ACC
INCR5
LCALLDELAY
CJNER5,#10H,DISP2
MOVA,#0H
MOVX@DPTR,A
SJMPD
;********延时子程序,协调字符显示速度*************
DELAY:
MOVR7,#1H
DL1:
MOVR6,#00H
DL2:
DJNZR6,DL2
DJNZR7,DL1
RET
;********字符点阵字库***************
;HZ16字符编码排列
;01
;23
;|
;|
;2829
;3031
;高位D7--D0
HZAI:
DB00H,78H,3FH,80H,11H,10H,09H,20H
DB7FH,0FEH,42H,02H,82H,04H,7FH,0F8H
DB04H,00H,07H,0F0H,0AH,20H,09H,40H
DB10H,80H,11H,60H,22H,1CH,0CH,08H
HZDI:
DB00H,80H,40H,80H,20H,88H,2FH,0FCH
DB08H,88H,08H,88H,0E8H,88H,2FH,0F8H
DB28H,88H,28H,88H,28H,88H,2FH,0F8H
DB28H,08H,50H,06H,8FH,0FCH,00H,00H
HZKE:
DB01H,00H,01H,04H,0FFH,0FEH,01H,00H
DB01H,10H,1FH,0F8H,10H,10H,10H,10H
DB10H,10H,1FH,0F0H,14H,50H,04H,40H
DB04H,40H,08H,42H,10H,42H,60H,3EH
;****************************************************
(资料素材和资料部分来自网络,供参考。
可复制、编制,期待你的好评与关注)