12864点阵液晶显示模块与51单片机的接口及程序设计

发布者:pengbinyyy最新更新时间:2012-11-27 来源: 21IC 关键字:点阵液晶  51单片机 手机看文章 扫描二维码
随时随地手机看文章

    显示器是人类与应用设备沟通的重要界面,近年来,随着电子技术的飞速发展,液晶显示技术在实际生活中得到了广泛应用。液晶显示模块以其微功耗、体积小、显示内容丰富、模块化以及接口电路简单等诸多优点在科研、生产和产品设计等领域中发挥着越来越重要的作用。LM3033B系列液晶显示模块是深圳TOPWAY公司生产的中文显示模块中的一员。采用了台湾的ST7920控制芯片,并提供了中文字库,为中文显示开发方面带来了更多的方便。本文以LM3033B-0BR3为例介绍了12864点阵液晶显示模块的引脚、结构、功能,详述了与AT89S52单片机的硬件接口电路及有关软件编程方法。

1 LM3033B-0BR3特点及操作
1.1 字符显示
    每屏可显示4行8列共32个16×16点阵的汉字,每个显示RAM 可显示1个中文字符或2个16×8点阵全高ASCII码字符,即每屏最多可实现32个中文字符或64个ASCII码字符的显示。内部提供128×2字节的字符显示RAM 缓冲区(DDRAM)。字符显示是通过将字符显示编码写入该字符显示RAM实现的。根据写入内容的不同,可分别在液晶屏上显示CGROM (中文字库)、HCGROM(ASCII码字库)及CGRAM(自定义字形)的内容。三种不同字符/字型的选择编码范围为:显示自定义字型其代码分别是0000H、0002H、0004H和0006H共4个,显示半宽ASCII码字符为02H~7FH,A1A0H~F7FFH显示8192种GB2312中文字库字形。字符显示RAM 在液晶模块中的地址80H~9FH。字符显示的RAM的地址与32个字符显示区域有着一一对应的关系,其对应关系如表1所示。

表1字符显示的RAM 地址与32个中文字符显示区域的对应关系
80H 81H 82H 83H 84H 85H 86H 87H
90H 91H 92H 93H 94H 95H 96H 97H
88H 89H 8AH 8BH 8CH 8DH 8EH 8FH
98H 99H 9AH 9BH 9CH 9DH 9EH 9FH

1.2 图形显示
    绘图显示RAM提供64x32个位元组的记忆空间(由扩充指令设定绘图RAM位址),在更改绘图RAM时,由扩充指令设定GDRAM位址先设置垂直位址,再设置水平位址(连续写入两个位元组的资料来完成垂直与水平的坐标位址),再写入两个8位的资料到绘图RAM,而位址计数器(AC)会自动加一,整个写入绘图RAM 的步骤如下:
a.关闭绘图显示功能(在写入绘图RAM期间,绘图显示必须关闭) ;
b.先将垂直的位元组(Y)写入绘图RAM位址;
c.再将水平的位元组(X)写入绘图RAM位址;
d.将D15~D8写入到RAM 中;
e.将D7~D0写入到RAM 中。
 
图1 绘图RAM 与屏幕显示区域的对应关系
1.3 LM3033B-0BR3的操作指令
    LM3033B-0BR3提供两套控制命令:基本指令集和扩充指令集。基本指令集包括了对液晶LM3033B-0BR3的基本操作,如判断控制器忙标志、清除显示、设定显示的地址、写数据和读数据等。而扩充指令集则包括设置睡眠模式,设置图形显示、设置反白、设置滚动等功钱,可以进一步满足低功耗的需求,使显示效果更丰富,为使用者提供更方便的环境。
    单片机对LM3033B-0BR3的操作过程为:单片机先确认ST7920内部处于非“忙“状态。即读取BF位,当BF为0时,LM3033B-0BR3才可接收新的指令或数据。在操作时,LM3033B-0BR3在单片机的时钟信号的控制下,数据通过数据线传送给LM3033B-0BR3,当LM3033B-0BR3成功接收到数据后,转入内部时钟控制,封锁I/O口缓冲器,置”忙”标志。ST7920根据接收数据中的RW和RS位判断所接收到的是数据还是指令,并进行相应的处理。处理完成后,撤销I/O口缓冲器的封锁,“忙”标志清零。

2 单片机与LM3033B-0BR3的接口电路
    一般液晶显示模块与单片机的接口分为直接访问方式和间接控制方式,间接控制方式还分为一位串行、4位并行以及8位并行。本文采用的AT89S52和液晶LM3033B-0BR3模块的接口电路如图2所示。由于LM3033B-0BR3采用并口通信,外接电路简单,与单片机连接采用间接连接的方法,即用I/O口直接与LCD数据线和控制线相连,其特点是简单、直观、操作方便。在此电路中,采用软件模拟液晶的时序,达到正确显示的目的。[page]
 

管脚号 管脚名称
1 VSS
2 VDD
3 NC
4 RS(CS)
5 R/W(SID)
6 E(SCLK)
7-14 DB0—7
15 PSB
16 NC
17 RST
18 NC
19 BLA
20 BLK

图2 AT89S52和液晶LM3033B-0BR3模块的接口电路及LM3033B-0BR3引脚功能

3 液晶显示C51程序设计
    对LM3033B-0BR3的软件编程采用Medwin语言开发,主要包括两部分,一部分是给液晶写指令,另一部分是给液晶写数据。有了这2个基本的子程序,就可以构造出各种实用的显示子程序。由于液晶内部自带汉字模块,只需发送汉字对应的代码就可以实现汉字的显示,其代码可以在ST7920模块的资料中查找。对于图形和曲线显示的原理类似,只需要设置好相应的水平地址和垂直地址,并把相应的图形编码写入液晶模块,就可显示出所要显示的内容。
写命令到LCD:
void WRCMD(uchar cmdcode)
{
chk_busy();
RS=0;
RW =0;
E=1;
lcd_bus=cmdcode;
E=0;
)
写数据到LCD:
void WRData(uchar Dispdata)
{
chk_busy();
RS=1;
RW =0;
E=1;
lcd_bus=Dispdata;
E=0;
)
初始化程序:
void Init()
{
RES=1;
RES=0;
delay(1);
RES=1;
delay(1);
WRCMD(Ox30); //选择8位并行W
RCMD(Ox30); //选择8位并行
WRCMD(OxOc);//开显示(无游标、不反白)
WRCMD(0x01);//清除显示
WRCMD(Ox04); //shift=0,AC加1
    在单片机与液晶的接口中,关键是要满足液晶的时序要求;在软件编程中,关键是要进行正确的初始化、操作及写入显示内容的代码。以上接口电路和相应的程序已经通过调试,并在实际中得到应用。由ST7920构成的LM3033B-0BR3液晶显示模块与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多。因此,LM3033B-0BR3液晶显示模块将得到广泛的应用。

关键字:点阵液晶  51单片机 引用地址:12864点阵液晶显示模块与51单片机的接口及程序设计

上一篇:基于51单片机双极型PWM 的软件实现
下一篇:利用单片机实现远程电源控制

推荐阅读最新更新时间:2024-03-16 13:14

汽车防盗报警监控系统的设计
  引言   汽车日益成为人们生活中不可缺少的部分,然而,令汽车用户担忧的是车辆被盗现象呈逐年上升趋势。本文旨在设计一个方便可靠,功能强大的汽车报警器。当汽车遭遇到危险情况时,立即启动警报,同时发送相应信息到指定的手机上,通知车主有异常情况。车主可以通过手机监听车内情况并控制汽车,以有效地防止汽车被盗。此外,若在车内加一个紧急按钮,不仅可以在车主遇到抢劫或其他危险情况时,向外界求助,也可以帮助警方对车子进行定位。考虑到时间和成本问题,本文仅针对振动信息的检测、车辆信息的传输与控制问题进行重点研究。   振动信息检测   图1中,当物体有向右的加速度时,由于惯性,中间挡板与电容板间距随之变化,从而造成电容值的变化(也有通过改变
[安防电子]
汽车防盗报警监控系统的设计
51单片机的中断优先级及中断嵌套
说最基本的,老的51单片机(80C51系列)有5个中断源,2个优先级,可以实现二级中断服务嵌套。现在很多扩展的51单片机已经有4个优先级(或更多)和更多的中断源了。 在说到中断之前,我先来定义一下优先级,明白了什么是优先级,后面的阐述就容易明白了。实际上很多人都是混淆了优先级的含义,所以才觉得糊里糊涂。 中断的优先级有两个:查询优先级和执行优先级。 什么是查询优级呢?我们从datasheet或书上看到的默认(IP寄存器不做设置,上电复位后为00H)的优先级: 外部中断0 定时/计数器0 外部中断1 定时/计数器1 串行中断 或 int0,timer0,int1,timer1,serial port 或 INT0、
[单片机]
HD4478U显示LCD与51单片机驱动程序
#include SST89x5x4.H #include absacc.h #include intrins.h sbit LCDRSPIN = P3^7; sbit LCDRWPIN = P3^6; sbit LCDEPIN = P2^6; #define UCHAR unsigned char void delay(unsigned int i) { UCHAR j; for(i; i 0; i--) for(j = 200; j 0; j--); } /////////////////////////////// //控制LCD unsigned char XPOS,YPOS; //测
[单片机]
跟我学51单片机(三):单片机串口通信实例
上讲介绍并应用了单片机内部定时器和中断,并给出了实例。这一讲将介绍单片机上的串口通信。通过该讲,读者可以掌握单片机上串口的工作原理和如何通过程序来对串口进行设置,并根据所给出的实例实现与PC 机通信。   一、原理简介   51 单片机内部有一个全双工串行接口。什么叫全双工串口呢?一般来说,只能接受或只能发送的称为单工串行;既可接收又可发送,但不能同时进行的称为半双工;能同时接收和发送的串行口称为全双工串行口。串行通信是指数据一位一位地按顺序传送的通信方式,其突出优点是只需一根传输线,可大大降低硬件成本,适合远距离通信。其缺点是传输速度较低。   与之前一样,首先我们来了解单片机串口相关的寄存器。   SBUF 寄存器:
[单片机]
跟我学<font color='red'>51单片机</font>(三):单片机串口通信实例
老工程师对嵌入式学习之51单片机的一些心得体会
很多人问我嵌入式发展如何,单片机应该如何学习,今天就给大家带来我的一个朋友心得和经历。本人还是学生,现在大三,接触单片机一年多以来,从最基础的51开始,到更高级点的MSP430,一直到现在刚开始上手的STM32,编过的程序不算多,但加起来怎么也有上百个了,做过的东西仔细数数,能拿出手来算算的上是个样的也不下十个,算是小有所成吧。 但今天,我却发现,这一年我一直在走一条歪路。 先说一下情况吧,是这样的,最近同学几个合伙做个小项目,不算复杂,跟市面上的工程项目完全没法比,用难再需要使用的一个芯片是老师给的,从没用过,没有历程,至于一份电子版的数据手册,一切的一切都只能是从头开始,从底层开始,我们几个斌开始从最底层的逻辑时序、寄存器操
[单片机]
老工程师对嵌入式学习之<font color='red'>51单片机</font>的一些心得体会
51单片机之矩阵按键
1.说在前面 1.今天从图书馆借到了一本51单片机的基础教程,从其中看到了一些关于单片机的基础知识 1-1:单片机是在一块硅片上集成微处理器,储存器以及各种输入输出接口,所以被称为单片微型计算机,简称单片机 1-2:通俗的来说,单片机就是一块集成芯片,但是有一些特殊的功能,通过在不同时间控制芯片输出高低电平从而输出不同的电平,控制和引脚相连的外围电路的电气情况 对于我的单片机板子ST89c52 40I STC:前缀 8:8051内核 9:内部是FlashE^2prom存储器 c:cmos存储器 5:无特殊含意 2:内存为2*4KB 40I:40表示单片机的最高晶振为40mhz,I:表示为工业用(c:商业 a:汽车用品
[单片机]
<font color='red'>51单片机</font>之矩阵按键
51单片机指令集
当你编写完一个程序后,通过软件调试,你可以看到程序的指令集,从指令集你就能知道单片机内部是如何工作的,比如数据存取的寄存器与地址,下面是网上找的一篇指令集,讲的蛮好的。 一、数据传送类指令(7种助记符) MOV(英文为Move):对内部数据寄存器RAM和特殊功能寄存器SFR的数据进行传送; MOVC(Move Code)读取程序存储器数据表格的数据传送; MOVX (Move External RAM) 对外部RAM的数据传送; XCH (Exchange) 字节交换; XCHD (Exchange low-order Digit) 低半字节交换; PUSH (Push onto Stack) 入栈; POP  (Pop from
[单片机]
51单片机开发板的主要功能 51单片机开发板能做什么
51单片机开发板是一种基于8051系列单片机芯片的开发板,具有丰富的功能和广泛的应用。下面将详细介绍51单片机开发板的主要功能以及能够实现的各种应用。 一、基本功能: 通用输入输出:51单片机开发板具有多个通用输入输出引脚,可以连接各种外部设备和传感器,实现数据的输入和输出。 时钟管理:开发板通常会集成时钟电路,包括晶振、时钟发生器等,可以提供稳定的时钟信号给单片机使用。 存储器管理:开发板通常会搭载闪存、EEPROM、SRAM等各种类型的存储器,用于存储程序代码和数据。 电源管理:开发板通常会提供多种电源供电方式,可以选择外部电源或者USB供电。 通信接口:如串口、SPI、I2C等,可以连接各种外部设备进行数据通信
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved