>
首页 » 市场趋势 » 采用KS0713控制芯片的SG12864-5C液晶显示模块的应用

采用KS0713控制芯片的SG12864-5C液晶显示模块的应用

作者:■中南大学信息科学与工程学院 李文炜 肖善福 黎亚龙  时间:2004-11-12 09:33  来源:本站原创

摘 要:本文介绍了SG12864-5C液晶显示模块的功能,及液晶显示开发的基本步骤。详细介绍了针对KS0713的字模点阵数据的提取和传输的技巧。
关键词:液晶显示模块 ; KS0713 ; 初始化 ; 列地址

SG12864-5C是采用三星电子公司生产的KS0713为内显示控制芯片的小型液晶显示模块。该128×64点阵液晶显示模块具有二种不同功耗模式,价格低,数据可读可写,使用方便等优点。其所采用的KS0713更是一种小型的大规模集成并带有驱动器的点阵型液晶控制芯片。KS0713体积小,外观尺寸只有42mm×39mm,29个引脚;可直接由微处理器控制;数据读写操作不受外部时钟控制;集成化程度高,自带液晶所必需的电源驱动。

图1 ADC倒转列地址和显示列地址之间的对应关系示意图

液晶显示模块开发的基本步骤
点阵型液晶显示模块的开发基本可以分为三步:
根据开发系统的要求完成单片机与液晶显示模块的接口,通常的接口有总线模式和I/O模式两种。特别要注意,液晶显示模块对负电压的要求,如果负电压值不符合要求,则会造成液晶屏显示一片全黑,或是对比度太低。
根据控制器的时序图和寄存器的命令表格,通过编写程序往显存的指定地址送一个字节,比如0xFF,只要液晶上显示一条实线线段,如果可以正常启动并有数据显示,无论数据显示的对错甚至显示的是乱码,都表明液晶模块的初始化已经完成,数据传输通道已经基本打通。
仔细研究显存的排列方式/数据的传输方式是纵向还是横向,字节内的位顺序是左高右低,还是左低右高,1是对应黑点还是白点,显存地址是怎样排列的,是自动加1,还是要另外设置等等。

(a)(b)(c)

图2 KS0713字模提取示意图

SG12864-5C液晶显示模块中采用的KS0713显示控制芯片
SG12864-5C(128×64点阵式LCD)液晶显示模块在悬空背光源管脚的状态下,其电流最大值仅为0.25mA,通常典型电流值为0.17mA,输入电压为3V~3.6V。满足了绝大部分嵌入式系统对低功耗液晶显示的要求。模块所采用的KS0713控制器直接接收8位并行数据,在显示的同时将数据存储在模块内的数据存储器中(DDRAM)。
控制芯片KS0713的初始化
KS0713初始化的基本步骤和其它同类控制芯片的初始化基本相同。值得开发人员特别注意的是:KS0713内部的ADC,SHL定义了数据逐行、逐列显示的逐次顺序,其关系顺序如表1所示。
基于TI(德州仪器)公司的16位微处理器MSP430F149在C语言开发环境下对KS0713的初始化:
void Init_LCD(void)
//定义初始化函数
{ P6OUT &=~RESET;
//复位位置零
Delay(500);
P6OUT |= RESET;
//复位位置位
Delay(5);
P6OUT &=~CS;
//片选位置零
Send_Command(0xE2);
//复位指令
Send_Command(0xA1);
//ADC指令(ADC=1)数据传输SEG132~SEG1,
液晶屏幕显示SEG1~SEG132
Send_Command(0xC0);
//SHL指令(SHL=0)传输,显示COM1~COM64
Send_Command(0xA3);
//设定LCD占空比为1/9
Send_Command(0x2F);
//设定电源控制
Send_Command(0x26);
//调节寄存器选择
Send_Command(0x81);
//设定参考电压模式
Send_Command(0x1C);
//设定参考电压寄存器
Send_Command(0x40);
//设定显示行(COM1)
Send_Command(0xAF); }
//等待显示开始
显示数据存储器
DDRAM用来存放液晶的显示数据,它是一个65行.132列的地址空间。65行构成了9页,其中前8页由8列构成(DB0~DB7),第9页是单独的一行(只有DB0)。显示数据DB0~DB7直接通过MCU的数据口送入,并通过DB0~DB7直接读写到对应的8行。同时每一个点阵可以通过确定行地址和列地址来确定位置。
显示数据的起始位置
由于KS0713的地址空间是65×132的,实际在控制LCD时,由于只用到64×128的地址空间,就存在着起始地址的问题。数据并行传输之后始终是从DB0(第一行)开始显示。而列地址则不同。内部地址对应的方式不同则会导致起始数据列地址的不同。如果LCD的第0列地址和KS0713的第0列地址相对应,则相应的起始列地址为0x00;如果LCD的第0列地址和KS0713的第1列地址相对应,则相应的起始列地址为0x01;以此类推。通过实验发现SG12864-5C液晶显示模块,其内部LCD的第0列地址实际上和KS0713的第4列地址相对应,而与其所提供的通用汇编演示程序:MOV A,#02;的列起始地址有出入,而且原文件中也未对其所举范例中列地址为何从#02开始做出明确的解释。实际以此液晶显示模块显示传输的并行数据的起始列地址应为#04。
字模点阵数据的提取和传输
SG12864-5C的逐行、逐列显示顺序可以根据用户的不同要求在初始化时加以设置。通过使用SG12864-5C,发现KS0713控制芯片向LCD送数据的方式也和人们通常习惯的横向数据传输方式不同,采用的是竖向数据传输方式:对于64行128列的LCD,先送第1列,第0行~第7行的数据;第2列,第0行~第7行的数据;第3列,第0行~第7行的数据;直到第128列,第0行~第7行的数据。再送第1列,第8行~第15行的数据;第2列,第8行~第15行的数据;最终第128列,第56行~第63行的数据。ADC选择指令可倒转列地址和显示列地址之间的对应关系,如图1所示。因而,要求送数据格式为:先送第1列,第7行~第0行的数据;第2列,第7行~第0行的数据;第3列,第7行~第0行的数据;第1列,第15行~第8行的数据;第2列,第15行~第8行的数据;第128列,第63行~第56行的数据。
由此,对于字模的提取,KS0713也就有了特殊的要求:为了能够在LCD上显示出图2(a)的图形,我们必须先将图2(a)横向左右调换得到图2(b),再将图2(b)沿纵向上下调换得到图2(c)。最终传输以图2(c)的格式所提取字模数据,才可以得到图2(a)的显示。
对于在初始化之下采用功能不完善的字模提取软件,在取得“纵向8点左高位”输出格式的数据时,可以参考图1,利用表2手工提取字模。

结语
本文介绍了采用KS0713控制芯片的SG12864-5C液晶显示模块的应用,详细介绍了控制芯片KS0713在使用时应注意的问题,并提出了直观的技巧性的解决方法。■

参考文献
1 深圳显能实业有限公司.液晶显示模块SG12864-5C用户使用手册. 1999年
2 65COM/132SEG Driver&Controller for STN LC. Samsung Electronics,1998年

相关推荐

拓普微携高性价比产品亮相顶级电子展获赞誉

LCD  拓普微  液晶显示模块  2008-11-10

HY-240128M-201图形点阵式液晶显示模块及其应用

视频解码芯片SAA7113的初始化与控制

采用KS0713控制芯片的SG12864-5C液晶显示模块的应用

在线研讨会
焦点