液晶显示控制器ST7920的接口方式研究与编程
扫描二维码
随时随地手机看文章
1 引言
ST7920是台湾矽创电子公司生产的中文图形液晶控制器,可作为控制器和驱动器捉供32路com 输出和64路seg输出。与驱动器ST7921组成的模块最多可驱动256×32点阵液晶,主要用于显示汉字及图形,其内置了2 MB中文字型ROM(CGROM),共提供8192个中文字型(16×16点阵);16KB半宽字型ROM(HCGROM),共提供126个西文字型(16×8点阵);64×16位字符显示RAM(DDRAM最多16字符×4行,LCD显示范围16×2行);64×16位字符产生RAM(CGRAM);15×16位共240点的ICON RAM(ICONRAM)。此外,为了适应多种微处理器与单片机接口需求,该模块还可提供4位并行、8位并行、2线串行以及3线串行等多种接口。利用上述特性方便实现文字与图形混合显示、画面清除、光标归位、显示开/关、光标显示/隐藏、显示字体闪烁、光标移位、显示移位、垂直画面旋转、反白显示、休眠模式等功能。
2 ST7920与MCU的接口
ST7920与MCU的接口引脚如表1所示。
2.1并口直接访问
MCU以AT89C52为例,P0端口接ST7920的数据引脚DB0~DB7,P2.1端口接ST7920的RS,P2.2接ST7920的R/W,读写引脚(P3.6和P3.7)通过与非门接至E端,如图1所示。将ST7920视为MCU的外部数据存储器进行传输数据。
2.2并口间接访问
利用AT89C52的P3.0、P3.1、P3.2C及P0端口分别接至ST7920的RS、R/W、E引脚以及数据引脚DB0~DB7,如图2所示,以P3.0、P3.1、P3.2作为模拟联络信号完成数据传输。
2.3位并口访问
4位并口访问接口连接图与并口间接访问一致,区别只是将每个字节分两次送入,第一次送入高4位,第二次送入低4位。
2.4串口访问
CS接低电平时,选择串口模式。在该模式下,只用两根线(SID与SCLK)完成数据传输。编写代码前,须制定通讯双方的通讯协议。其串口访问接线图如图3所示。
3 ST7920指令
ST7920的指令集包括基本指令和扩充指令,其中基本指令有11条(见表2),扩充指令有7条(见表3)。每一个指令的长度都为8位。16×8点阵的ASCII字符代码也是8位。但是16×16点阵中文字符的代码为16位,必须分为两次传送,先传送高8位,再传送低8位。
当ST7920在接收指令前,MCU必须先确认ST7920处于空闲状态。即读取BF=0,才能接收新的指令;如果在送出一条指令前不检查BF状态,则需要延时一段时间,确保上一条指令执行完毕,具体指令执行时间参照指令表。
"RE"是基本指令集与扩充指令集的选择控制位,当更改"RE"的状态更改后,后续指令维持在最后状态。除非再次更改"RE"状态,否则使用相同指令集时,无需要重新设置"RE"。
无论采用何种连接,根据ST7920的指令表,在确定显示功能后,ST7920初始化编程基本一致,图4为ST7920初始化编程的一个简单流程表。
4 ST7920应用编程
ST7920控制器广泛应用中小型仪器或控制电路,由于支持接口形式多,编写程序非常灵活,下面以显示4行32汉字(或64个ASCII字符)为例,简要介绍ST7920编程步骤与基本方法,电路接口采用并口直接访问,其程序代码如下:
5 结语
与同类型点阵的LCM相比,ST71920控制的LCM硬件和软件设计灵活,而且内置多种汉字字库。相对于无字库的液晶控制器而言,大大降低了成本,简化了系统设计,因此,在当今LCM市场上,ST71920应用广泛。