1 引言
由于LCD液晶显示器具有功耗低、体积小、重量轻、超薄等诸多其他显示器无法比拟的优点,已广泛应用于各种智能型仪表和低功耗电子产品中。点阵式或图形式LCD不仅可以显示字符、数字,还可以显示各种图形、曲线及汉字,并且可以实现屏幕上下滚动、动画、闪烁、文本特征显示等功能,用途十分广泛。
2 键盘设计原理
采用美国Microchip Technology公司的8位PIC16F877单片机,利用RB口电平变化中断来实现参数修改,通过查表方式可以选择两百多种起动方式以及选定起动方式下两百多个参数值输入,其最大的选择值取决于寄存器N和M的上限值,如图1所示。
读RB口状态要进行软件消抖处理,即读入RB口状态,然后软件延时大约50ms再读入RB口状态,两次状态相同说明状态正确,防止抖动引起误操作。
3 中文液晶显示器LCM12832ZK与单片机PIC16F877硬件接线
本设计单片机PIC16F877与中文液晶显示器LCM12832ZK采用模拟串行通信方式,单片机RD5引脚接液晶显示器串行时钟线E,单片机RD6引脚接液晶显示器数据线RW,单片机RD7引脚接液晶显示器串行选通线RS。
如图2所示,R1用来调节液晶显示器背光源亮度,R2用来调整液晶显示器中文字幕的辉度。调节电位器R2到适当值对字幕显示来说很重要,当R2过大液晶显示器黑屏;当R2过小,液晶显示器过亮,看不到字体显示。
RB口要设置为弱上拉。利用RB口电平变化中断,通过查表方式找到相应的中断服务子程序,最多有两百多种参数可选择,操作简单方便。
4 中文液晶显示器LCM12832ZK的串行及并行接口
4.1 LCM12832ZK引脚及其功能如表(1)所示:
4.2 LCM12832ZK液晶显示基本功能
LCM12832ZK可两行显示,每行可显示8个汉字。其字型ROM内含8192个中文字型和128个半宽的字母符号字型,另外绘图显示画面提供一个绘图区域GDRAM,而且内含CGRAM 提供4组软件可编程的点阵造字功能。
LCM12832ZK与单片机等微控器的接口界面灵活,三种模式并行8位/4位及串行3线/2线,还可实现汉字、ASCII码和点阵图
形的同屏显示,以及具有上/下/左/右移动当前显示屏幕及清除屏幕的命令,具有光标显示/闪烁控制命令及液晶睡眠/唤醒/关闭显示命令预留多种控制线,如复位/串并选择/亮度调整供用户灵活使用。
4.3 并/串接口模块设置
4.4 串行接口数据传输
本设计采用串行模式,即将模块背面S/P的短路电阻在“S”侧。在串行模式下将使用二条传输线作串行资料的传送,主控制系统将配合传输同步时钟(SCLK)与接收串行数据线(SID),来完成串行传输的动作。
串行接口在传输数据时,片选CS先置为1。当时钟SCLK上升缘到达时,传输一个数据。从一个完整的串行传输流程来看,一开始先传输起始位,它需先接收到五个连续的“1”(同步位串)在起始位元组,此时传输计数将被重置并且串行传输将被同步,再跟随的二个BIT 分别指定传输方向位(RW)及暂存器选择位(RS),RW:RS为0:0时写命令到LCD的RAM中,RW:R
S为0:1时写数据到LCD的RAM中,最后第八位则为“0”。
在接收到起始位元组后,每个指令/数据将分为二组接收到:较高4位元(DB7~DB4)的指令资料将会被放在第一组的LSB部分,而较低4位元(DB3~DB0)的指令资料则会被放在第二组的LSB 部分,至于相关的另四位则都为0,具体如图4所示。