点阵式液晶显示器LM12864与51单片机的接口设计

来源:本站
导读:目前正在解读《点阵式液晶显示器LM12864与51单片机的接口设计》的相关信息,《点阵式液晶显示器LM12864与51单片机的接口设计》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《点阵式液晶显示器LM12864与51单片机的接口设计》的详细说明。
简介:点阵式液晶显示器LM12864与51单片机的接口设计

摘 要:本文介绍了LM12864及其控制器HD61202U的指令系统,具体说明了LM1286451单片机的连接方法及软件设计,并给出了液晶显示的参考程序。

关键词:点阵式;液晶显示;单片机;接口

概 述

液晶显示器作为一种低功耗显示器件,广泛应用于计算器、数字式仪表等低功耗系统中。但一般使用的液晶显示器均为七段笔划式,只能显示数字和少量字符,对于较复杂的字符或图形则无能为力。而点阵式液晶显示模块可以显示各种各样的字符(包括简单的汉字),而且点阵显示模块具有可编程能力,与单片机接口方便。由于以上优点,点阵式液晶显示模块获得了广泛的应用。

本文以LM12864为例介绍了液晶显示器与51单片机的两种连接方式,并给出了例程,对于其它型号的液晶显示器同样具有参考价值。

点阵式液晶显示器LM12864简介

LM12864是内置了HD61202U控制器的128 64点阵式液晶显示器,通过对HD61202U控制器的编程可以实现液晶显示器的各种应用。LM12864具有如下特点:

可以显示数字、字母、特殊字符、图形、曲线和汉字;

拥有64 64(512字节)的显示存储器,其数据直接作为显示驱动信号;

●8位并行数据接口,适配M6800系列时序;

●64路列驱动输出;

简单的操作指令:显示开关设置,显示起始行设置,地址指针设置和数据读/写等指令;

功耗低:在显示期间功耗最大为2mW

LM1286418个外接引脚,各引脚功能如表1所示:

1()

LM12864的读写时序如图1所示:

1读时序图()

LM1286451单片机的接口电路设计

直接访问方式

直接访问方式就是将液晶显示模块的接口作为存储器或I/O设备直接挂在计算机总线上,计算机以访问存储器或I/O设备的方式操作液晶显示模块工作。直接访问方式的接口实用电路如图2所示。

2写序时图()

在图中,计算机8031通过高位地址A11控制CSBA10控制CSA选通液晶显示屏上各区的控制器HD61202U8031用地址A9作为R/W信号控制数据总线的数据流向;用地址A8作为D/I信号控制寄存器的选择;E信号由8031的读信号RD和写信号WR合成产生,实现计算机对内置HD61202U图形液晶显示模块的电路连接。电位器用于显示对比度的调节。

这种接线方式的优点在于通过复用为数据总线的P0口来访问液晶显示器,不需占用CPU的其他引脚,节约了资源。但是,P0口带负载能力有限,实际应用中可能需要加上缓冲电路。

间接访问方式

间接控制方式是计算机通过自身的或系统中的并行接口与液晶显示模块连接,如8031P1P3口,8255Z80PIO等并行接口芯片以及像74LS373类的锁存器等。计算机通过对这些接口的操作,达到对液晶显示模块的控制。这种方式的特点是电路简单,控制时序由软件实现,可以实现高速计算机与液晶显示模块的接口。实用电路图如图3所示。

3间接访问方式()

图中所示电路中以8031P1口作为数据口,P3.0CSAP3.lCSBP3.2D/IP3.3R/WP3.4E等信号。与直接访问方式一样,电位器也用于显示对比度的调节。

显示程序设计(以间接访问方式为例)

LM12864的显示区域被分为左右两个区,均为64 64大小,左右区的选择由CSACSB的组合来决定。当CSACSB的组合为01时,选择左区;当二者的组合为10时,选择右区;二者组合为0011时均无效。

显示汉字时首先根据汉字字形编出字模数据块,每个汉字如用16 16点阵,则需32个字节数据,汉字字模除手工编写外,也可以使用一些字模提取工具软件创建(如北京精电蓬远公司的提取汉字点阵软件)

LM12864的显示数据存储器(DDRAM)与显示屏幕的物理位置是一一对应的。当对DDRAM中的某一个单元写入一个字符的编码时,该字符就在对应的位置显示出来。所以要显示字符就必须把字符的编码写入DDRAM中,也就是写入对应的字符产生存储器中。

LM12864内置的HD61202U为一可编程器件,所有显示功能均由指令控制实现。共有7条指令,表2给出了所有指令的编码。

由于LM12864中的显示区共有64行,分为8页,每页8行,这样就必须向两页中的对应列送数据。写每个汉字时,先取字模的上16个字节,写在一页中,再取字模的下16个字节,写在下一页中即可。现给出一个实用的显示汉字的程序段:

WRITE

MOVDPTR#CCTAB;取字库的首地址

MOVACODE;取待写字符的首地址

MOVB#20H

MUL AB

ADDADPL

MOVDPLA

MOVAB

ADDCADPH

MOVDPHA

MOVCOUNT#00H

WRITE1

MOVAPAGER

ORLA#0B8H

MOVCOMA;设置起始页值

LCALL PRL0

MOVACOLUMN

ORLA#40H

MOVCOMA;设置起始列值

LCALL PRL0

MOVR3#10H;循环16(一页写16个字节)

WRITE2

MOVACOUNT

MOVCA@A+DPTR;取字模代码

MOVDATA

LCALLPRL1;将字模代码写入左区

INC COUNT

DJNZR3WRITE2

INCPAGER;页码加1

MOVAPAGER

MOVB#02H

DIV AB

MOVAB

CJNEA#00HWRITE1;页码为奇数时,说明汉字代码还未写完,程序再次跳到WRITE1

RET

变量说明:

CODE:待显示的汉字在字库中的次序

COLUMN:显示的位置(起始列的值)

PAGER:显示的位置(起始页的值)

提醒:《点阵式液晶显示器LM12864与51单片机的接口设计》最后刷新时间 2024-03-14 01:21:26,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《点阵式液晶显示器LM12864与51单片机的接口设计》该内容的真实性请自行鉴别。