首 页电子技术网络电视电路设计论坛
您当前的位置:无限电子制作网电子技术实用技能 → 文章内容 退出登录 用户管理
本类热门文章
相关文章
热门产品





用单片机控制字符型液晶显示模块
作者:佚名  来源:不详  发布时间:2007-1-19 20:46:48

减小字体 增大字体

 

>

液晶显示器以微功耗、体积小、显示内容丰富、超薄轻巧等诸多优点,在袖珍式仪表和低功耗应用系统中得到广泛的应用。

字符型液晶显示模块用5×7点阵图形来显示字符,常用的有1行16个字、2行16个字、2行20个字等规格。这里以2行16个字的DM-162液晶模块为例来介绍此类显示模块的编程方法。

DM-162采用标准的14脚接口,其中Vss为地,VDD接+5V,V0为对比度调整端。V0接+5V时对比度最弱,接地时对比度最高,使用时可以通过10kΩ的电位器调整对比度。RS为寄存器选择端,高电平时选择数据寄存器,低电平时选择指令寄存器。RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW同为低电平时,可以写入指令或者显示地址;当RS为低电平、RW为高电平时,可以读忙信号;当RS为高电平、RW为低电平时可以写入数据。E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。D0~D7为8位双向数据线。

DM-162液晶模块内部的字符发生存储器CGROM存储了160个不同的点阵字符图形(见表1),每个字符都有固定代码,如英文字母“A”的代码是41H。把地址41H中的点阵字符图形显示出来,就能看到字母“A”。DM-162液晶模块控制器共有11条控制指令,DM-162的读写操作、屏幕和光标操作都是通过指令编程来实现的。

指令1:清显示,指令码01H,光标复位到地址00H位置
指令2:光标复位,光标返回到地址00H
指令3:光标和显示模式设置 I/D:光标移动方向,高电平为右移,低电平为左移;S:屏幕上所有文字是否左移或右移,高电平为有效,低电平为无效。

指令4:显示开关控制 D:控制整体显示的开与关,高电平为开显示,低电平为关显示;C:控制光标的开与关,高电平为有光标,低电平为无光标;B:控制光标是否闪烁,高电平为闪烁,低电平为不闪烁。

指令5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标;RIL:高电平为右移,低电平为左移。

指令6:功能设置命令 DL:高电平时为4位总线,低电平时为8位总线;N:低电平时为单行显示,高电平时双行显示;F:低电平时显示5×7点阵字符,高电平时显示5×10点阵字符。

指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,低电平表示不忙。

DM-162液晶模块与89C51接口电路如附图。

液晶显示模块是慢显示器件,所以在执行每条指令前一定要确认模块的忙标志为低电平(表示不忙),否则该指令失效。显示字符时要先输入显示字符地址,告诉模块在哪里显示字符。比如第二行第一个字符的地址是40H。因为写入显示地址时要求最高位D7恒为1,所以要显示第二行第一个字符时,写入的地址是40H+80H=C0H。

下面是在第二行第一个字符的位置显示字母“A”的程序:

RS EQU P3.7
RW EQU P3.6
E EQU P3.5
ORG 0000H
MOV P1,#01H ;清屏
ACALL ENABLE
MOV P1,#38H ;8位2行5×7点阵
ACALL ENABLE
MOV P1,#0FH ;显示器开、光标开、闪烁开
ACALL ENABLE
MOV P1,#06H ;文字不动,光标自动右移
ACALL ENABLE
MOV P1,#0C0H ;写入显示起始地址
ACALL ENABLE
MOV P1,#41H  ;字母A的代码
SETB RS    ;RS=1
CLR RW    ;RW=0
CLR E    ;E=0
ACALL DELAY
  SETB E       ;E=1
AJMP $
ENABLE:CLRR RS
;写入控制命令子程序
CLR RW
CLR E
ACALL DELAY
SETB E
RET
DELAY: MOV P1,#0FFH ;判断液晶显示器是否忙
CLR RS
SETB RW
CLR E
MOP
SETB E
JB P1.7,DELAY ;P1.7为高电平,循环等待
RET
END
程序开始时对液晶模块进行了功能设置,约定了显示的格式。注意显示字符时光标是自动右移的,无需人工干预。每次输入指令都先调用判断是否忙子程序DELAY,然后输入显示位置的地址0C0H,最后输入要显示的字符“A”的代码41H。如果要显示很多字符,可以用查表的方法。可以在表的末尾设置结束码,比如00H,如果查表查得00H,说明字符已经全部显示完。以下是用查表法一次显示“GOOD”的程序。

MOV DPTR,#TAB
WRITE1:MOV R1,#00H ;写入要显示的字符
A1: MOV A,R1
MOVC A,@A+DPTR
MOV P1,A
SETB RS
CLR RW
CLR E
ACALL DELAY
SETB E
INC R1
CJNE A,#00H,A1
TAB: DB 47H,4FH,4FH,44H,00H;字符代码GOOD


[] [返回上一页] [打 印]
文章评论 (评论内容只代表网友观点,与本站立场无关!)

用户名: 查看更多评论

分 值:100分 85分 70分 55分 40分 25分 10分 0分

内 容:

         (注“”为必填内容。) 验证码: 验证码,看不清楚?请点击刷新验证码

关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 - 产品订单

Copyright © 2005-2008 Wxdzz.Com. All Rights Reserved .
Powered by:NewAsp SiteManageSystem Version 3.0.0

赣ICP05000510号