老古开发网首页
导航:老古开发网首页文章索引文章分类显示技术→[液晶显示控制器T6963C与单片机的接口及编程]
| -文章搜索 - 最新文章 - |

液晶显示控制器T6963C与单片机的接口及编程

发布时间:2005年10月17日 点击次数:8255
来源:   作者:
 
摘    要:本文介绍了液晶显示控制器T6963C的众多优点,给出了其与单片机的接口电路。并阐述了以模块化为基础的显示软件设计,具体分析了状态位检测、显示初始化、英文显示、汉字显示等功能的程序设计。

引言
液晶显示器件(LCD)由于具有显示信息多、体积小、重量轻、功耗低、寿命长、价格低、接口控制方便等优点,正在测量及控制领域被广泛地推广和应用。液晶显示器按其功能可分为笔段式和点矩阵式两种。后者又可以分成字符点阵式和图形点阵式,图形点阵式液晶显示器不仅可显示数字、字符等内容,还能显示汉字和任意图形。
目前用于图形液晶模块的控制器很多。本文以T6963C为例简单介绍一下液晶显示模块与CPU的接口以及软件编程问题。

图1 内置T6963C的点阵图形液晶显示模块原理图

图2 接口部分硬件原理图

图3 非自动写命令/数据流程图

图4 非自动读数据流程图

图5 自动写数据程序流程图

图6  汉字显示流程图

T6963C及其构成的
液晶显示模块
T6963C 是图形点阵式液晶显示控制器,能直接与80 系列的8 位微处理器接口。字符字体可由硬件或软件设置,字体有4 种:5×8、 6×8 、7×8、8×8。
在内置T6963C 的液晶显示模块上已经实现了T6963C 与行、列驱动器及显示缓冲区RAM 的接口,同时也已用硬件设置了数据传输方式、显示窗口长度、宽度等。内置T6963C 的单屏点阵图形液晶显示模块结构如图1所示。
此模块的初始化设置一般由管脚设置完成,所以初始化时,由软件编写的指令就集中在显示功能的设置上。T6963C的指令可带一个、两个参数,或无参数。若指令中含有参数,则每条指令执行时均须先送入参数,再送入指令代码。由于状态位作用不一样,因此执行不同指令必须检测不同状态位。
液晶显示模块与单片机的接口电路
在本例中以80C320为CPU。另外,在此设计中,不是将CPU与液晶显示模块直接相连,而是通过PSD813F1连接的。PSD813F1是由WSI公司研制的新一代可编程微控制器系统外围器件,具备完整的在系统可编程特性。不仅功能比较强大,通过PSD还可以连接其他的器件和模块,比如数据采集模块、键盘等,便于在原有基础上进行功能扩展。
将CPU的地址/数据线AD0~AD7及A8~A15与PSD813F1的AD0~AD15连接起来,由PSD的PB口输出信号来片选LCD和数据缓冲器74LS245。同时CPU的地址/数据线AD0~AD7也接到74LS245的A端A0~A7上,其B端B0~B7的输出连接到液晶显示模块的数据输入端DO0~DO7。接口电路如图2所示。

软件设计
状态位检测与数据/指令读写程序
在本例中,采用C语言来编程。
状态位检测
由于LCD指令的执行是一个不断地检测状态、写指令及读写数据的过程,因此可把它们编写成通用的函数,以便随时调用。液晶显示控制器T6963C的状态位从低到高分别是STA0~STA7。进行状态位检测时,先从T6963C的状态寄存器中读取状态字,然后提取对应的状态值,通过判断决定下一步的操作。
数据/指令的读写程序
读写数据和命令可以分为自动和非自动两种情况。由于非自动写命令或数据的步骤基本类似,均是在检测状态字的STA0和STA1两位是否准备好的情况下来决定写命令或数据到输出口,这里就把非自动写命令或数据流程图综合在一起,如图3所示。非自动读数据的流程图如图4所示,也是在检测STA0和STA1已经准备好的基础上由输入口读取数据的,然后将此数据返回,以便于别的程序调用。图5是自动写数据的程序流程图,它仅需要检测状态字的STA3即可。当然,自动读数据时只须检测STA2,但自动读数据在本例中用的较少,其流程图在此省略。
模块化设计
鉴于T6963C的特点,设计中采用模块化结构。这里主要介绍初始化、英文字符显示、汉字显示等几个模块。
初始化模块
在T6963C中内嵌有128种字符点阵的CGROM(字符发生器ROM),同时T6963C还可管理一定大小的显示缓冲区。显示缓冲区RAM的具体大小由不同显示尺寸的模块决定,点阵越大RAM越多,本设计采用的240×128模块带有16KB的RAM。该显示缓冲区分为文本显示区、图形显示区和CGRAM区。文本显示区和图形显示区是两个不同性质的使用区域,是本设计使用的重点。CGRAM区是用户为方便制作特殊符号而在显示缓冲区内任意设置的一个区域,它可作为外扩的字符发生器。对T6963C初始化时,在关闭显示后应该先确定采用哪种方式进行显示(文本/图形),再来设置显示缓冲区中图形区的首地址、宽度和文本区的首地址、宽度。此后可选择光标的形状,继而进行显示开关设置。               
英文显示模块                                                       
英文显示模块程序编制的任务是把欲显示的字符代码送入和行列位置对应的文本显示缓冲区中。只需定位首字符地址,设置使LCD控制器的地址指针自动增1,然后连续往LCD的数据口送入显示数据即可。
汉字显示模块                                                         
本设计采用直接在图形方式下显示汉字的方式。显示字符可以直接从T6963C自带的CGROM中选取,而要显示汉字则要建立汉字字模。其建立方法有多种,可采用从UCDOS的汉字点阵字库中提取所需要汉字的16点阵字模,进而生成汉字库以备选取汉字之用。汉字字模在此汉字库中以一定的顺序存放,每一个汉字有一个对应的顺序号,该顺序号以变量HZH表示。图6是汉字显示的程序流程。
结语
T6963C液晶显示控制器在应用中可以与各种型号的微控制器接口,实现控制和现场过程的动态显示。本系统可灵活地嵌入各种大型设备或大规模系统中,用于显示必要的数据,或执行参数设定。


欢迎进入老古论坛进行讨论
[显示技术] 相关文章:
单片机和图形液晶显示器接口应用技术
简介:
电子设计应用 作者:陆爱明 本文介绍了图形液晶显示器MGLS12864与单片机W78E58的硬件设计和软件设计技术。同时给出了ASCII码8×16字库、汉字16×16字库建立的程序及在液晶上显示数字、字符和汉字的程序。    引言   液晶显示器(LCD)具有功耗低、体积小、重量轻、超薄等许多其它显示器无法比拟的优点,近几年来被广泛用于单片机控制的智能仪器、仪表和低功耗电子产品中。LCD可分为段位式LCD、字符式LCD和点阵式LCD。其中,段位式LCD和字符式LCD只能用于字符和数字的简单显示,不能满足图形曲线和汉字显示的要求;而点阵式LCD......

多功能串行LED显示驱动器MAX7219
MAX7219测试程序(汇编)
一个液晶显示的数字式电脑温度计
DVD标准战引发PC业内斗 HP戴尔攻击Wintel
英特尔微软火速加盟东芝HD-DVD阵营 存储格式大战局势骤变
用电池容量的一半点亮白色LED
高效率的白色LED驱动器
构成便携式快速光脉冲发生器的电路
用颜色指示电压的“彩虹”LED
 
下一个:[综合电子]常用CMOS模拟开关功能和原理(4066,4051-53)
简介:
开关在电路中起接通信号或断开信号的作用。最常见的可控开关是继电器,当给驱动继电器的驱动电路加高电平或低电平时,继电器就吸合或释放,其触点接通或断开电路。CMOS模拟开关是一种可控开关,它不象继电器那样可以用在大电流、高电压场合,只适于处理幅度不超过其工作电压、电流较小的模拟或数字信号。 一、常用CMOS模拟开关引脚功能和工作原理    1.四双向模拟开关CD4066    CD4066的引脚功能如图1所示。每个封装内部有4个独立的模拟开关,每个模拟开关有输入、输出、控制三个端子,其中输入端和输出端可互换。当控制端加高电平时,开关导通;当控制端加低电平时开关截止。模拟开关导通时,导通电......
 

上一个:[测试测量]一种宽动态范围的智能测量系统设计

老古开发网版权所有 2006年9月 asp.Net V2.0 设计:老古
页面缓存:10分钟 执行时间:31毫秒