基于LPC2134与T6963C液晶显示模块的接口设计

时间:2011-08-25

  引言

  液晶模块简单点说就是屏+背光板+PCB板+铁框。电力终端、仪器仪表等的显示部件就是液晶模块,其地位相当于CRT中的显像管。其它部分包括电源电路,信号处理电路等,当然还有外壳什么的。 模块主要分为屏和背光灯组件。两部分被组装在一起,但工作的时候是相互独立的(即电路不相关)。液晶显示的原理是背光灯组件发出均匀的面光,光通过液晶屏传到我们的眼睛里。屏的作用就是按像素对这些光进行处理,以显示图像。在中规模图形液晶显示模块中,内置T6963C控制器的LCD模块是目前较为常用的内置控制器型图形液晶显示模块。软件上,T6963C控制器也提供了丰富的指令集,且控制方式灵活多样。而以ARM为内核的32位微处理器,则具备高性能和低功耗的特点,在工业控制领域应用广泛。因此,对于不带液晶接口的中低端ARM7芯片,可由其通用输入输出引脚来实现与LCD的连接,并控制LCD实现其显示功能。

  1 LCD硬件接口设计

  T6963C液晶显示控制器多用于中小规模的液晶显示器件常被装配在图形液晶显示模块上以内藏控制器型图形液晶显示模块的形式出现。

  T6963C的特点

  (1) T6963C是点阵式液晶图形显示控制器,它能直接与80系列的8位微处理器接口

  (2) T6963C的字符字体由硬件设置,其字体有4种:5  8  6  8  7  8  8  8

  (3) T6963C的占空比可从1/16到1/128

  (4) T6963C可以图形方式文本方式及图形和文本合成方式进行显示以及文本方式下的特征显示还可以实现图形拷贝操作等等

  (5) T6963C具有内部字符发生器CGROM共有128个字符T6963C可管理64K显示缓冲区及字符发生器CGRAM并允许MPU 随时访问显示缓冲区甚至可以进行位操作

  内藏T6963C的液晶显示模块上已经实现了T6963C与行列驱动器及显示缓冲区RAM的接口同时也已用硬件设置了液晶的结构单双屏数据传输方式,显示窗口长度,宽度等等。我们常用的液晶显示模块一般都是单屏结构内置T6963C的单屏结构点阵图形液晶显示模块的原理框图如图1所示。

内置T6963C的单屏结构点阵图形液晶显示模块的原理框图

  图1中,数据总线和控制总线都直接与CPU的IO口线相连。液晶可采用SMG240128A点阵图形液晶显示模块;而CPU则可选用基于ARM7TD-MI-S核的32位微处理器芯片LPC2134。该芯片是基于RISC的原理设计,指令和译码简单方便。它采用三级流水线技术,CPU操作频率可达60MHz,并具备47个通用I/O口,同时含有丰富的外设资源,十分适合于工业测量及控制领域使用。该液晶模块与LPC2134的接口电路如图2所示。

液晶模块与LPC2134的接口电路

  图2中的液晶模块采用数据并行传输模式,通过两个驱动芯片74L3245和74HC14与LPC2134相连。其中74LS245是八位双向总线收发器,它可将液晶模块的数据总线与CPU的P0口的8条口线相连,负责控制数据的传输,并具备数据锁存和缓冲功能:74HC14为六输入反相驱动器,可驱动液晶模块的四条控制线。液晶模块的21脚为背光接地端,它由p0.23控制背光的开与关,通过电位器W2可调节背光亮度,用电位器W1则可控制调节液晶显示的对比度。FG引脚为边框地,须接地以防止静电和雷击。FS引脚接地,可将字体控制为8x8点阵。

  2 显示功能的实现

  液晶显示功能可通过LPC2134对液晶控制器T6963C的控制来实现,T6963C控制器内置丰富的指令集,可通过指令来设置显示功能。指令可带一个或两个参数,也可无参数。每条指令的执行都是先送入参数,再送入指令代码。每次操作之前,还需要先进行状态字的检测。

  2.1 底层子函数设计

  在程序层面,不管是状态字的检测,还是参数和指令代码的传送,都涉及到对液晶控制器的读写操作。根据T6963C说明书中提供的读写时序,并结合本系统的硬件设计方案,可得到如图3所示的读写时序图。

读写时序图

  在设计程序时。可根据LPC2134的GPIO引脚模拟控制读写时序图来实现数据的传输。针对数据和读写类型,可设计四个底层子函数,以完成传输功能,其功能说明如表1所列。

功能说明

程序

程序

  至于读状态和写数据子函数的编写,设计时可参照该子函数来完成。

  2.2 驱动层实现

  接下来需要利用T6963C的指令来完成驱动层显示功能的设置。其中部分基本指令的定义如表2所列。事实上,驱动层子函数的编写都可通过调用写命令、写数据、读状态子函数来实现。

部分基本指令的定义

  其液晶的初始化设置函数源代码如下:

程序

  3 汉字读写程序设计

  初始化液晶后,就可设置显示区域、显示方式和显示状态。接下来应将待显示字符的字模数据写入显示缓冲区,以便实现显示功能。对于文本方式,可先将字模数据写入显示缓冲区并建立CGRAM,再由数据存储位置确定字符代码,然后通过写人对应代码即可显示字符;对于图形显示方式,则需将字模数据逐个字节的写入图形显示缓冲区来实现显示功能。二者相比各有特点,其中文本模式显示速度快。且内置CGROM中含128个ASCII字符,可直接调用,但需先建立CGRAM,而且容量有限,只能管理2K字节的数据,比较适合于显示字符不多的场合;而图形模式显示速度相对较慢,但无需建立CGRAM,用户只需将字模数据以字节为单位写入图形显示区即可,适用于所需显示内容较多的场合。在一般的工程应用中,汉字的显示是比较重要的内容,因此,本文主要介绍汉字显示的程序设计。

  由液晶初始化程序,本系统采用图形模式作为显示方式。汉字的字体一般为16x16点阵,占32个字节,也可采用32x32点阵的字体,西文字符为16x8。由此编写的子函数程序如下:

程序

程序

  本液晶屏上的横坐标x范围为0~29,纵坐标y范围为0~127。字模数据由造字模软件提供,写入字模数据的顺序应与其所代表的字符的结构位置相对应。读写显示数据时,要注意地址指针每读写会自动增一。修改其值时,必须先结束当前读写操作,然后再修改地址,这样才有效。其它子函数的编写与汉字显示子函数相同,不同字体的字符只是字模数据量不同,连续写可多次调用单独写函数实现,也可每行写入所有字符的对应字节数据。至于反白功能的实现,可先读出对应字符的数据字节,取反后再重新写入。

  3 结束语

  本文通过ARM7微处理器芯片LPC2134的GPIO实现了与内藏T6963C的液晶显示模块的接口设计,并在软件上实现了其基本显示功能,从而在满足了工程设计的要求。该程序的可移植性好,可适用LPC213x系列芯片、其它ARM7芯片以及内置T6963C的不同型号液晶显示模块。


  

参考文献:

[1]. PCB datasheet https://www.dzsc.com/datasheet/PCB_1201640.html.
[2]. CRT datasheet https://www.dzsc.com/datasheet/CRT_2331578.html.
[3]. T6963C datasheet https://www.dzsc.com/datasheet/T6963C_635050.html.
[4]. 1/16 datasheet https://www.dzsc.com/datasheet/1%2f16_2510134.html.
[5]. RISC datasheet https://www.dzsc.com/datasheet/RISC_1189725.html.
[6]. 74HC14 datasheet https://www.dzsc.com/datasheet/74HC14_99158.html.
[7]. 74LS245 datasheet https://www.dzsc.com/datasheet/74LS245_1054125.html.


上一篇:基于运放组成的V/I和I/V变换电路
下一篇:分析AD采样芯片MAX197的应用电路设计

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料