注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

苍茫大地的博客

 
 
 

日志

 
 
关于我

盒子里的梦想

文章分类
网易考拉推荐

LCD12864(转载他人日志)  

2011-12-13 17:11:57|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

LCD12864(转载他人日志) - 追逐 - 苍茫大地的博客

再来个背面照片:

LCD12864(转载他人日志) - 追逐 - 苍茫大地的博客

买来后也就只有个管脚说明:(我只说串口的定义)
工作于串行模式时的引脚定义:
PIN1------------ GND  电源-, 一般接0V。
PIN2------------VDD 电源+, 一般接5V。
PIN3------------V0 对比度调整端。
PIN4------------RS(CS),片选
PIN5------------R/W(SID),串行数据线
PIN6------------E(SCLK),串行时钟脉冲输入
PIN7------------DB0,不连接
PIN8------------DB1,不连接
PIN9------------DB2,不连接
PIN10-----------DB3,不连接
PIN11-----------DB4,不连接
PIN12-----------DB5,不连接
PIN13-----------DB6,不连接
PIN14-----------DB7,不连接
PIN15-----------PSB  并行:PSB=1,可以接VCC;  串行:PSB=0,一般接GND
PIN16 ----------NC,不连接
PIN17-----------RST,模块复位(低电平有效)
PIN18 ----------VEE,液晶驱动电压(或名Vout)
PIN19 ----------LED+ ,背光 +,一般接5V。
PIN20 ----------LED- ,背光 -,一般接GND。

在网上搜了关于ST7920的资料,跟据图上的接法串行驱动只要四根线和S52连接:


LCD12864(转载他人日志) - 追逐 - 苍茫大地的博客

PIN5----SID 数据线
PIN6----SCLK 时钟脉冲线
PIN1----VSS(GND)接地
PIN2----VDD(Vcc)电源+5V

  我先试了背光,也就是第20脚接地,19脚通过电流表接电源+5V,测得背光电流为30mA,背光很亮。


LCD12864(转载他人日志) - 追逐 - 苍茫大地的博客

下面还是要先讲原理,资料说起来是枯燥了点。但你不去理解它,是不可能让LCD正常工作的。


  先说说ST7920的LCD内部都有哪些资源。
1、ST7920 内部固化了8192 个16×16 点阵的中文字型在CGROM里。
2、固化有126 个16×8 点阵的西文字符在HCGROM里。
3、提供4个16×16点阵自造字符的存储空间CGRAM。
4、提供128×64的点阵绘图共1024个字节的存储空间GDRAM。
5、提供1个16×15点阵图标的存储空间IRAM(ICON RAM)。
  如何去把它们显示在LCD上呢。
1、作为字符显示,在控制器内有个供写入字符代码的缓存器DDRAM ,你只要将要显示的中文字符代码或西文字符代码写入DDRAM,硬件将依照编码自动从CGROM 中选择将要显示的字型显示再屏幕上。至于是显示西文字符还是中文字符,它会自动辨别的,这和我们PC上是一样的,字符代码也完全一样。

2、图形方式就是用指令直接将表示点阵信息的字节数据写入相应位置的GDRAM内,
具体的规则:
1、字符显示时,DDRAM地址与液晶屏的位置关系见下图:


LCD12864(转载他人日志) - 追逐 - 苍茫大地的博客

这个图上可以看出,它的地址编排很怪,第一行到87H完了以后就跳到了第三行接着88H了,每二行也是一样的,很明显,有下面两行接在上面两行后面的迹像。如下图:


LCD12864(转载他人日志) - 追逐 - 苍茫大地的博客

2、下面我们再来看看图形显示GDRAM地址和LCD屏位置的关系:


LCD12864(转载他人日志) - 追逐 - 苍茫大地的博客

  上图我们可以看出ST7920的LCD12864在地址的排列上是分为上、下半屏来显示的,上半屏横向的列地址(X)是0-7(00h-07h),下半屏的列地址是8-15(08h-0fh)。而每个一地址都可写入两个字节的内容,它们是按高位在前低位在后排列的。垂直方向上的地址(Y)上半屏是0-31(00h-1fh),下半屏的Y地址仍是0-31(00h-1fh),可以看出,它的地址排列方式还是将下半屏接在上半屏后面的,因此这块LCD12864,虽然在点阵的物理排列上是128×64,但在地址排列上,它却是块256×32。

3、下面我们来介绍能够使用的指令?


LCD12864(转载他人日志) - 追逐 - 苍茫大地的博客


 


LCD12864(转载他人日志) - 追逐 - 苍茫大地的博客

下面我们来看看在串行模式下是如何进行控制的,见下图:


LCD12864(转载他人日志) - 追逐 - 苍茫大地的博客

  由图可以看出,单片机与液晶模块之间传送1字节的数据共需24个时钟脉冲。首先,单片机要给出数据传输起始位,这里是以5个连续的“1”作数据起始位,如模块接收到连续的5个“1”,则内部传输被重置并且串行传输将被同步。紧接着,“RW”位用于选择数据的传输方向(读或写),“RS”位用于选择内部数据寄存器或指令寄存器,最后的第8位固定为“0”。在接收到起始位及“RW”和“RS”的第1个字节后,下一个字节的数据或指令将被分为2个字节来串行传送或接收。数据或指令的高4位,被放在第2个字节串行数据的高4位,其低4位则置为“0”;数据或指令的低4位被放在第3个字节的高4位,其低4位也置为“0”,如此完成一个字节指令或数据的传送。需要注意的是,当有多个数据或指令要传送时,必须要等到一个指令完成执行完毕后再传送下一个指令或数据,否则,会造成指令或数据的丢失。这是因为液晶模块内部没有发送/接收缓冲区。

硬件电路连接:

1、LCD 驱动电压即对比度调节电路
  ST7920 内带倍压电路,生成2 倍于 VCC 的电压。倍压通过Vout 脚引出,引脚叫VEE,
通过电位器调节后,从V0 引回模块用来驱动LCD。直接驱动LCD 的是V0,
V0 电压越高,对比度越深。通过调节电位器来调节V0 值以改变对比度。
某些模块没有 Vout 脚。Vout 电压直接通过降压处理供给V0。对比度已经锁
定。如果一定要调节对比度,可以通过V0 对地接一可调电阻,拉低V0 值。

2、PSB 电路
PSB 接高时选择为并口方式操作,接低时选择串口方式进行操作,因此在这里我们将PSB接地。

3、RST电路
  复位电路是低电位有效,在正常操作时应为高电位,因此我们将它用10K电阻接至电源正极,并接一个0.1uF瓷片电容接至地,这是最典型的复位电路接法。

4、RS
  在作并口使用时RS的作用是选择进行数据操作还是命令操作,高电位为数据,低电位为命令。在当串行工作时是做片选CS使用的,高电位可接受数据,低电位锁存。因为我们只用一个LCD,所以将它接电源正,一直选通。

LCD的电路接法如下图:

LCD12864(转载他人日志) - 追逐 - 苍茫大地的博客

仔细的把上图的电路连接好,LCD就可以点亮了,但此时还什么内容也不会显示。接下来就是程序篇了。

我先上点图,再写。。

LCD12864(转载他人日志) - 追逐 - 苍茫大地的博客

2

LCD12864(转载他人日志) - 追逐 - 苍茫大地的博客

3

LCD12864(转载他人日志) - 追逐 - 苍茫大地的博客

4


LCD12864(转载他人日志) - 追逐 - 苍茫大地的博客

5


LCD12864(转载他人日志) - 追逐 - 苍茫大地的博客

6


LCD12864(转载他人日志) - 追逐 - 苍茫大地的博客

  评论这张
 
阅读(2951)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017