电子工程师的网站
首 页 |  新闻资讯 | 最新产品 | 解决方案 | 技术参数
设计应用
电路图 | 技术资料 | 芯片资料 | 技术论坛
  现在位置: 首页 > 设计应用 > 显示/光电技术 > 详细信息
显示/光电技术:基于DSP的液晶模块的显示原理及实现
来源:   时间: 2007-11-9 2:42:20    
  摘要:介绍了一种基于TMS320F206 DSP以及硬件汉字库的液晶模块的设计。给出了硬件接口设计框图、接口的设计实现以及硬件汉字库的制作方法,同时给出了液晶初始化和显示模块的设计思路以及软件实现。

  关键词:SEDl335控制器 TMS320F206 DSP 硬件汉字库

1、硬件电路接口的设计



  图1给出了液晶显示模块的硬件电路接口设计框图,该系统采用TI公司的TMS320F206芯片(以下简称F206),其内部带有4KB的FLASH存储器,可以根据系统需要外挂EEPROM作为外部程序存储区。

  SEDl335控制器是日本EPSON公司生产的一款液晶显示屏控制器,与同类产品相比,功能最强。主要特点有:

有较强功能的I/O缓冲器;
指令功能丰富;
四位数据并行发送;
图形和文本方式混合显示。

  可编程控制器芯片GALl6V8的输入端连接到DSP上,输出为硬件汉字库、液晶控制器、键盘扫描电路提供所需的片选和使能信号。该芯片编程实现容易,可以随时修改其逻辑关系,在一定程度上提高了开发的通用性。硬件汉字库的片选信号为CE=A15+PS,F206的外部程序空间起始地址为08000H。由于F206的程序寻址范围可以达到64KB,要寻址256KB的程序空间,需扩展外部的程序空间。为此,将F206的100~2与硬件汉字库AT27C020A的地址高三位相连,以达到扩展程序寻址的目的。在显示汉字时,可以实现分页管理,共分成8页,每页32KB,占用DSP系统的程序空间的8000~FFFFH。

  为保证F206与SED1335能正常通信,SED1335的数据总线(D0~D7)直接连接到F206的低字节数据总线(D0-D7)上。SED1335片选信号由F206的A15(最高位地址线)、A14、IS(I/O空间选择信号)共同决定,其逻辑关系为CE=A15+A14+IS,且SED1335的A0接至F206的A0(最低位地址线)。

2、硬件汉字库的制作

  硬件汉字库使用了AT27C020A,该产品是ATMEL公司生产的256KB的FLASH ROM,在具体电路设计时应注意引脚定义和逻辑关系,并在烧录时选择相应的型号。本设计采用UCDOS软件中的HZK16点阵文件,字模大小为16x16,在该文件中,按汉字区位码从小到大依次存有国标区位码中的所有汉字,每个汉字占用32个字节,每个区为94个汉字。如果显示其属性,可以看出其大小为262KB。当写人AT27C020A时,可以将多于256KB的部分截去。实际上,在国标汉字点阵字库中,二级汉字排到第87区,从第88区开始就是空白,所以将多余部分截去不会影响实际操作中硬件汉字库的制作,和普通的程序存储器的编程没什么不同。因此,从中截去87区后的字库,补上8×16的ASCII码点阵数据。烧写过程中采用通用编程器spectrum-48进行编写,将HZK16文件调入时要使用二进制方式打开,编程并校验成功后,即可将存储器取下备用。这样,一个硬件汉字库就制作好了。

  针对不同的应用,可以选用大容量存储器甚至是串行数据存储器,从而扩展硬件汉字库的使用范围。在此使用容量为512KB的存储器,除了可以存储全部的国标汉字外,还可以存储8×16的ASCII码点阵数据以及汉字语句编码数据,使用起来非常方便。

3、DSP控制液晶显示的软件设计及实现

  通过初始化液晶显示屏以及调用硬件汉字库显示连续的汉字来具体说明DSP控制液晶显示屏的设计思想。从程序的可移植性和通用性方面考虑,选用了C语言进行软件模块的设计实现。

  液晶控制器指令的写入端口地址是C001H,写参数及显示数据端口地址为C000H,定义形式如下:

extern ioport uint poac000;//数据写入地址
extern ioport uint poac001;//指令写入地址
#define LCDCMD poac001//指令写入端口地址
#define LCDDATA portc000//写参数及显示数据地址

  系统硬件上电复位后,首先完成DSP的初始化,然后根据用户系统的需要对控制器的各项指令代码及其参数进行设置,以完成液晶模块的参数(如液晶的行数、列数、扫描频率、光标的位置等)以及显示方式等一系列过程的初始化。在MPU操作SED1335及其控制的液晶显示模块时,必须首先写入SYSTEM SET 40H指令。如果该指令设置出现错误,则显示必定不正常。液晶模块软件初始化设计的流程图如图2所示。

F206初始化程序如下:
asm(“clrc cnf");
asm(“ldp #Oh”);
abm(“setc INTM”);

设置液晶控制器的系统指令及参数的程序如下:

typedef unsigned int uint;
uint SYSTAB[8]={0x30,0x87,0x07,0x27,0x42,0xf0,0x28,0x00); //系统设置指令参数
uint SCROLLTAB[10]={0,0,Oxf0,0xb0,0x04,0xf0}; //SCROLL指令参数
void command(uint m)
{
LCDCMD=m; //向1335中写入指令代码
}
void data(uint n)
{
LCDDATA=n; //向1335中写入数据及指令参数
}
//清除显示区数据
void cleardata(uint csfi,uint csrh,uint datal)
{
uint i,j;
command(0x46); //写入光标地址指令
data(csd); //光标地址的低8位
data(csrh); //光标地址的高8位
command(0x4c); //光标自动右移指令
command(0x42); //数据写入命令
for(i=0;i<240;i++)
{
for(j=0;j<320;j++)
data(datal); //向液晶显示区写人数据
}
}

液晶显示屏的初始化程序如下:
void init()
{
uint i;
command(0x40); //系统设置指令
for(i=0;i<8;i++)
{
data(SYSTAB[i]);
}
command(0x44); //设置SCROLL.指令
for(i=0;i++;i<10)
{
data(SCROLLTAB[i]);
}
command(Ox5a); //设置点单元卷动位置
data(0x00); //无卷动参数
command(0x5b); //设置双层合成显示方式
data(0x00); //光标显示不闪烁
delay(2);
cleardata(0,0,0x00); //第一显示区清0
cleardata(Ox80,Ox04,Ox00); //第二显示区清0
comnland(Ox46); //设置光标地址指令
data(0x00); //第一显示区首地址
data(0x00);
command(0x5d); //设置光标形状
data(0x04); //光标长度5
data(0x86); //光标宽度7
command(0x4c); //设置光标自动右移
command(0x59);
data(Oxl6); /第一、二显示区开显示
}

  程序经过编译,汉字将以内码的形式表示。要在液晶屏上正确显示16X16点阵的汉字,必须将之转换成区位码,算出偏移量,从硬件汉字库中找到相应的位置,取出其后连续32个字节的字模。

将内码转换成区位码的方法如下:
qh=c1-0xa0,wh=c2-OxaO,
其区位码就是:
qw=qhxOxff+wh,
该汉字在字库中离起点的位置是:
offset=(94x(qh-1)+(wh-1))x32;
汉字定位显示的汇编源程序如下:
.mmregs
.global_zimotake
.ref_offset
.def_buffer
_zimotake:
mar *,ar2
lar ar2,#_buffer
rpt #031
blpd #_offset,*+;将汉字字模存人缓冲区buffer[32]

ret

在图形方式下显示连续汉字的程序如下:
void displayhanzi(uint x,uint y,char*s)
{
uint i,j,csl,csh,k;
uint cs;
long qh,wh;
command(0x4f); //设置光标向下移动
cs=0x04bO+2*x*Oxl40+y*Ox02;

//设置汉字显示的光标地址

while(*s)
{
qh=*(s)-0xa0; //汉字区位码
wh=*(s+1)-OxaO;
offset=(94*(qh-1)+(wh-1))*32;
//计算该汉字在字库中的偏移量
ASPCR=0x100f; //异步串口的初始化
IOSR=0x1800+((offset&0x38000)>>15);
offset&=0xfffff;
if(offset<0x8000)
offset+=Ox8000;
s=s+2; //s为要显示的连续汉字
zimotake(); 似字模库中读取相应字模
cel=(cs&Ox00ff); //显示文字的地址低8位
csh=((cs&0xff00)>>8);//显示文字的地址高8位
command(0x46); //CSRW代码
data(csl); //设置光标地址CSR
data(csh);
command(0x42); //MWRITE代码
for(j=0;j<16;J++)
{
data(buger[j*2]); //写人数据
}
cs=cs+0x01;
csl=(cs&0x00ff); //显示文字的地址低8位
csh=((cs&0xff00)>>8);//显示文字的地址高8位
command(Ox46); //CSRW代码
data(csl); //设置光标地址
data(csh);
command(Ox42); //MWRITE代码
for(i=0;i<16;i++)
{
data(buffer[2*i+1]);
}
cs=cs+0x01;
}
}

  以上程序均在TMS320C2X系列的软件环境CCS下调试通过。液晶屏能够正常显示连续的汉字、字符以及图形,在语言教学系统中得到了实际的应用。通过移植本文的程序,修改其中的一些指令,可以完成更加复杂的功能,并且具有缩短开发周期、加快产品上市等优点,因此非常适用于便携式设备的界面显示系统,如PDA、示波器、手机的界面开发等。

相关信息
发表评论
打印本页 关闭本页
TMS320F206外围电路典型设计
  1 引 言数字信号处理DSP芯片是一种能够实时快速地实现各种数字信号处理算法控制的微处理器,已经在通信与信息系统、信号与处理、自动控制、雷达、航空航天、医疗等许多领域得到了广泛的应用。目前生产DSF 芯片的厂家主要有TI公司、AD公司、Motorola公司等。其中TI公司推出的 TMS320C2xx系列是继TMS320C2x和TMA320C5x之后的一种低价格、高性能16位定点运算DSP。TMS320F206(以下简称F206)是...
>>详细内容
基于TMS320LF2407A控制SED1335液晶显示方案
  1 硬件设计 1.1 TMS320LF2407A的特点 TMS320LF2407A芯片作为DSP控制器24x系列的新成员,是TMS320C2000平台下的一种定点DSP芯片,也是目前TMSC2000家族中集成度高,性能最强的芯片[1],它与现存的24xDSP控制器芯片代码兼容,但是资源更加丰富、功能更强,其特点是:采用高性能静态CMOS技术,使得供电电压将为3.3V,减小了控制器的功耗,40MIPS(百万条指令每秒)的执行速度使得...
>>详细内容
内置SED1335控制器的液晶显示模块与单片机接口应用
  1 引言液晶显示(Liquid Crystal Display)简称LCD,以其独特的低压、微功耗特性广泛应用于便携式电子产品如移动通信和笔记本电脑中。Truly(信利)公司的点阵型液晶显示模块MSP-G320240DBCW是一种内置SED1335控制器的大屏幕带背光液晶显示模块,SED1335是日本Seiko Epson公司生产的液晶显示控制器,是同类产品中功能较强的一款产品。MSP-G320240DBCW模块以其优良的品质广泛应用于各类高级仪...
>>详细内容
TMS320F206中断技术及其实现
  摘要:TMS320F206是德州仪器公司定点DSP芯片中具有代表性的一种,在介绍其特点和中断技术的基础上,重点阐述了该芯片在软件开发过程中中断技术是如何实现的。关键词:TMS320F206 DSP 中断 以信息高速公路为标志的信息化,已成为社会发展的大趋势,并在逐步成为现实。信息化是以数字化为背景的,而数字信号处理技术则是数字化最重要的基本技术之一。在过去短短的十几年...
>>详细内容
基于TMS320F206 DSP的图像采集卡设计
  摘 要: 提出了一种使用视频A/D芯片TLC5510与低档DSP芯片TMS320F206实现图像采集的接口设计方案,同时给出了接口程序,为低档DSP芯片提供了一条新的应用途径。关键词: ADC DSP接口设计视频 数字信号处理器DSP是数字信号处理理论与超大规模集成电路VLSI技术融合的结晶。目前DSP技术正广泛地应用于通信、语音、图像、航天航空、仪器仪表等领域,在推动当代信息处理数字化方...
>>详细内容
采用TMS320F206控制的同步调制解调器
  摘 要: 介绍了一种采用数字信号处理器TMS320F206和调制解调芯片RC56D/SP设计的同步调制解调器。该调制解调器能在多种信道上实现数据的同步传输,具有广泛的用途。关键词: 调制解调 同步 数字信号处理 随着数据通信的发展和普及,调制解调器的应用范围越来越广。归结起来,凡是需利用模拟信道实现数据传输的场合,都需要用调制解调器作为DCE,完成DTE与线路的连接。在很...
>>详细内容
已有(
)位对此新闻感兴趣的网发发表了看法 >>更多评论
内 容:
     
 
热点新闻
一周排行
关于我们 | 服务项目 | 付款方式 | 广告服务 | 联系我们 | 友情链接 | 投诉 建议 合作 | 网站地图 | 加入收藏
Copyright © 2007-2008 WEEQOO.COM Corp.All Rights Reserved. 版权所有 经营许可证编号:浙B2-20050339 法律声明
维库电子旗下网站:维库电子市场网 | ChinaICMart | 维库电子开发网 | 维库电子人才网
总部:杭州市下城区朝晖路182号国都发展大厦1号楼80A
电话:0571-85889139-8007 QQ:303939539 | MSN:zh1226@hotmail.com |  邮箱:laz8258@163.com dzsc51@163.com