预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

学习文档仅供参考 一、设计目的 在12864液晶显示屏中央显示“★仿真实例★”字样。 二、原理介绍 12864LCD:带中文字库的128X64是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示HYPERLINK"://blog.mop/diary/main/diarySearchMore.jsp?v=模块"模块;其显示分辨率为128×64,内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示8×4行16×16点阵的汉字.也可完成图形显示.低电压低功耗是其又一显著特点。 1、引脚功能:GND 电源地 VCC 电源正+5 V0 液晶显示驱动电源0~5VRS H:数据输入L:指令码输入 R/W H:数据读入L:数据写入E 使能信号。由H到L完成使能。 DB0~DB7 数据线 CS1 CS1=1芯片选择左边64*64点 CS2 CS2=1芯片选择右边64*64点 RST 复位 -Vout LCD驱动负电源 A 背光电源〔+〕 K 背光电源〔-〕 2、取码方法: DDRAM是12864内部的存储器,屏幕显示内容与存储单元建立一一对应关系,模块内部自带扫描与驱动,用户只需要将要显示内容写入到12864对应的存储器中,就能实现内容的显示。12864液晶屏横向有128个点,纵向有64个点。显示屏分为左半屏和右半屏。取码时,按照从上到下,从左到右的原则进行取码,每个字都有32个字节与之对应。编程时,也按照从上到下,从左到右的原则取数送到相应的DDRAM中。 RESPACK8:排阻。接在51单片机的P0口,因为P0口内部没有上拉电阻,不能输出高电平,所以要接上拉电阻。排阻就是好多电阻连载一起,他们有一个公共端1端为公共端接VCC或地。 三、液晶显示控制方法 1、读状态 判忙子程序 BUSY: CLRRS ;RS清0 SETBRW ;RW置1 PRR01: MOVDATAES,#0FFH ;将端口置1,准备读数据总线 SETBE ;E置1,液晶模块将当前状态送到数据总线 MOVA,DATAES ;读数据总线 CLRE ;将E清零,为下次读做准备 JBACC.7,PRR01 ;ACC.7为1,表示液晶模块处于忙状态,为0返回主程序 RET 如果读到的BUSY=1,表示系统忙,不能操作;只有BUSY=1才允许操作。 2、写指令 写指令子程序〔PRM〕 PRM: LCALLBUSY ;写指令之前判忙 CLRRS ;RS为0设置写指令操作 CLRRW ;RW清0 MOVDATAES,COM ;COM中存放指令,DATAES为某一端口 SETBE CLRE ;E下降沿液晶模块从数据总线上写入指令 RET 3、写数据 写数据子程序〔PRD〕 PRD: LCALLBUSY ;写指令之前判忙 SETBRS ;RS置1设置为写数据操作 CLRRW ;RW清0 SETBE MOVDATAES,DAT ;DAT中存放写入的数据 CLRE ;E下降沿液晶模块从数据总线上读入指令 RET 操作每完成一个列地址计数器自动加1。 四、程序 1、程序流程图: 开始 计算汉字代码初始地址 初始化 写入起始页地址 左右屏控制 写入起始列地址 重复6次 起始页设置 R0=0 起始列设置 调用写入数据子程序 显示汉字设定 R0=R0+1 调用写汉字子程序 N R0=16? Y 起始页地址加1 主程序流程图 重新设起始列地址 调用写入数据子程序 R0=R0+1 N R0=32? Y RET 结束 子程序流程图 2、程序如下: ORG0000H LJMPMAIN DATAESEQUP0 COMEQU21H DATEQU22H YMEQU23H LMEQU24H CODESEQU25H ORG0030H MAIN: LCALLINT LCALLLEFT MOVYM,#3 MOVLM,#16 MOVCODES,#4 LCALLCHINE MOVYM,#3 MOVLM,#32 MOVCODES,#0 LCALLCHINE MOVYM,#3 MOVLM,#48 MOVCODES,#1 LCALLCHINE LCALLRIGHT MOVYM,