1引言
智能仪器仪表设计中,通常都要对测控信息进行显示。受仪器功耗、体积及其它条件的影响,一般CRT显示器往往不太适用。而半导体数码管,虽能显示数码及少数字母,却无法灵活显示各种文字、图形、表格等,有着较大的局限性。而LCD显示器由于具有功能强、功耗低、显示清晰、构造轻巧等优点,被广泛运用于各类智能仪器仪表的显示。PIC单片机是美国MICROCHIP公司推出的高性能单片机,对比传统MCS51系列单片机,它具有内置功能模块多、抗干扰性好、速度快、功耗低等优点,被广泛应用于工业控制领域[1]。本文将以SED1520与PIC16F874为例介绍LCD显示器与PIC单片机接口的实用方法。
2 SED1520的结构、指令及其与PIC单片机的接口电路
SED1520的结构框图如图1所示,它主要由定时计数器、行列地址寄存与译码电路、显示RAM、MPU接口电路、LCD接口电路组成。它与外部的接口主要分三个部分:一部分是电源、复位信号和时钟;一部分是LCD接口、另一部分是与MPU(微处理器)的接口。与LCD的接口一般已由提供液晶模块的制造商负责,对于液晶模块的使用者,只须掌握与MPU接口的部分。另外,SED1520还需要提供2KHZ的时钟信号[2]。
SED1520的指令列表如表1,它的显示存储器共有4页(对应页地址0~3),每个页面上都有80个字节(对应列地址为0~79),每个字节中的8位数据都对应着显示屏上同一列的8点行。列地址指针就是管理这80个字节单元的。列地址指针是一个7位加1计数器。由它和页地址寄存器组合唯一指定了显示存储器的某一个单元。SED1520中的RAM共有32行,分为4页,每页8行,这样如果按8*8点阵显示字符,每页可以写一行10个字符,总共写4行,而汉字一般是16*16点阵,则每行可显示5个汉字,共可显示两行。如果将多个SED1520拼起来,就可组成不同显示容量的液晶模块,
SED1520与PIC16F874的接口电路如图2所示。各引脚说明如下:
A0:指令/数据选择 。高电平表示传送的是数据,低电平表示传送的是指令。
片选信号,低电平有效,高电平则MPU不访问SED1520。
读允许,低电平表示MPU从SED1520读数据或指令,高电平无效。
写允许,低电平表示MPU向SED1520写数据或指令,高电平无效。
CL:时钟输入端。由PIC16F874的 RC1提供,让其工作于PWM2输出方式。
D0~D7:数据输入输出引脚。
复位信号输入端,低电平有效。
VDD:逻辑电源正。
VSS:逻辑电源地。