基于PIC16F877A单片机的HT1621液晶显示控制器作者:李森,李立忠时间:2008-12-08来源:电子测试0引言HT1621液晶显示控制器是多功能全自动智能开关的显示部件,能实时、准确、在线监控供电线路的运行情况。一旦线路出现漏电、过载、短路、过压、欠压和缺相时,智能安全用电开关能立刻启动保护程序,并显示在HT1621液晶显示控制器上。在智能化楼宇、中高档家庭住宅、电力系统、工矿企业、国家重点消防单位以及石油化工、文教卫生、金融、电信等领域。基于单片机的HT1621液晶显示控制器应用广泛,其原理框图如图1所示。美国MICROCHIP公司的PIC系列单片机主要有以下特点:(1)哈佛总线结构;(2)指令单字节化;(3)精简指令集;(4)寻址方式简单;(5)代码压缩率高;(6)运行速度高;(7)功耗低;(8)驱动能力强,达到20mA的电流驱动能力;(9)自带硬件看门狗;(10)外接电路简单;(11)开发方便;这些特点使得PIC系列单片机在工业控制、消费电子产品、办公自动化设备、智能仪器仪表、汽车电子等不同的领域得到了广泛的应用。1PIC16F877A特点PIC16F877A单片机为双列直插式40引脚处理器,所有接口引脚除具有基本输入/输出功能外,一般都设计有第2功能,甚至第3功能。它采用引脚复用技术,以便使增加功能而又不增大体积和引脚数量。PIC16F877A单片机除了具有PIC系列单片机的共同特点外,还具有8K×14位的Flash程序存储器,512B数据存储器,256×8位EEP-ROM,33条I/O口线,8路10位A/D通道等。可见,PIC16F877A非常适用于HT1621液晶显示控制。2HT1621液晶驱动器2.1概述HT1621是128点内存映象和多功能的LCD驱动器,HT1621的软件配置特性使它适用于多种LCD应用场合,包括LCD模块和显示子系统。HT1621的底板插口配置图如图2所示。用于连接主控制器和HT1621的管脚只有4或5条,HT1621还有一个节电命令用于降低系统功耗。2.2特性(1)工作电压:2.4~5.2V;(2)内嵌256kHzRC振荡器;(3)可外接32kHz晶片或256kHz频率源输入;(4)可选1/2或1/3偏压和1/21/3或1/4的占空比;(5)片内时基频率源;(6)蜂鸣器可选择两种频率;(7)节电命令可用于减少功耗;(8)内嵌时基发生器和看门狗定时器(WDT);(9)时基或看门狗定时器溢出输出;(10)八个时基/看门狗定时器时钟源;(11)一个32×4的LCD驱动器;(12)一个内嵌的32×4位显示RAM内存;(13)四线串行接口;(14)片内LCD驱动频率源;(15)软件配置特征;(16)数据模式和命令模式指令;(17)三种数据访问模式;(18)提供VLCD管脚用于调整LCD操作电压。2.3系统结构(1)显示内存(RAM)静态显示内存(RAM)。以32×4位的格式储存所显示的数据。如图3所示。RAM的数据直接映象到LCD驱动器可以用READ、WRITE和READZ-MODIFY-WRITE命令访问。(2)LCD驱动器HT1621是一个128(32×4)点的LCD驱动器,它可由软件配置成1/2或1/3的LCD驱动器偏压和2、3或4个公共端口,这一特性使HT1621适用于多种LCD应用场合。LCD驱动时钟由系统时钟分频产生,LCD驱动时钟的频率值保持为256Hz,由频率为32.768kHz的晶振、片内RC振荡器或外部时钟产生。LCD驱动器相关命令参见下表1。粗体100即100,表示命令模式类型。如果执行连续的命令,除了第一个命令,其他命令的模式类型码将被忽略。LCDOFF命令使LCD偏压发生器失效,从而关闭LCD显示;LCDON命令使LCD偏压发生器有效,从而打开LCD显示。BIAS&COM是LCD模块相关命令,可以使HT1621与大多数LCD模块相兼容。(3)命令格式HT1621可以用软件设置。2种模式的命令可以配置HT1621和传送LCD所显示的数据。HT1621配置模式称为命令模式,命令模式类型码为100。命令模式包括一个系统配置命令,一个系统频率选择命令,一个LCD配置命令,一个声音频率选择命令,一个定时器/WDT设置命令和一个操作命令。数据模式包括READWRITE和READ-MODIFY_WRITE操作,下表是数据和命令模式类型码表2。(4)接口HT1621只有四根管脚用于接口。管脚/CS用于初始化串行接口电路和结束主控制器与HT1621之间的通讯。管脚/CS设置为1时,主控制器和HT1621之间的数据和命令无效并初始化。在产生模式命令或模式转换之前,必须用一个高电平脉冲初始化HTl621的串行接口。管脚DATA是串行数据输入/输出管脚,读/写数据和写命令通过管脚DATA进行。管脚/RD是读时钟输入管脚,在/RD信号的下降沿时数据输出管脚DA-TA上,在/RD信号上升沿和下一个下降沿之间,主控制器应读取相应的数据。管脚/WR是写时钟输入管脚,在/WR信号上升沿时,管脚DATA上的数据、地址和命令被写入HT1621。可选的管脚/IRQ可用作主控制器和HT1621之间的接口,/IRQ可用软件设置作为定时器输出或WDT溢出标志输出。主控制器与HT1621的/IRQ相连接后,可以实现时基或WDT功能。2.4时序图当向HT1621写入数据时,使管脚/CS设置为0,写命令模式代码为101,然后输入6位的地址码和4位的数据,在每写一个代码的时候,管脚/WR在上升沿时,数据、地址和命令才被写入HT162l。管脚/CS设置为1时,结束当次写入数据。如图4(a)时序图所示。若需要连续写入地址,则使管脚/CS始终设置为0,如图4(b)时序图所示。3单片机接口电路基于PIC16F877A单片机的HT1621液晶显示控制,路原理图结构简单明了。HT1621液晶显示器的片选/CS与单片机RB5端口连接,用于初始化串行接口电路和结束主控制器与HT1621之间的通讯。写信号/WR和写数据DATA分别与单片机的RD0和RD1端口连接,实现数据写入。4程序框图以RB5端口作为片选信号输入,RD0端口为写信号输入,RD1为数据信号写入。程序框图如图5所示。5结论本文使用PIC16F877A单片机实现HT1621液晶显示控制,该硬件电路具有硬件少,体积小,结构简单,稳定性高,能准确地显示多功能全自动智能开关的漏电、过载、欠压等指示显示。