为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

跟晓雅数码学单片机之LCD学习全攻略(硬件篇)

2013-02-19 11页 pdf 642KB 12阅读

用户头像

is_191186

暂无简介

举报
跟晓雅数码学单片机之LCD学习全攻略(硬件篇) 跟晓雅数码学单片机之 LCD学习全攻略(硬件篇) 说明:文中涉及到的资料有《2.4寸 TFT原理图.pdf》、《LMS241GF31_PI_Rev000_090210(1) (图纸).pdf》和《S6D04H0驱动 IC手册.pdf》,已经上传到百度文库和新浪爱问共享资料。 下载地址:http://ishare.iask.sina.com.cn/f/35461926.html 晓雅数码在此也只是抛砖引玉,难免有不足或者错误的地方,欢迎大家提出,可以发邮 件:2652599905@qq.com联系,特此声明!晓雅数码,...
跟晓雅数码学单片机之LCD学习全攻略(硬件篇)
跟晓雅数码学单片机之 LCD学习全攻略(硬件篇) 说明:文中涉及到的资料有《2.4寸 TFT原理图.pdf》、《LMS241GF31_PI_Rev000_090210(1) (图纸).pdf》和《S6D04H0驱动 IC手册.pdf》,已经上传到百度文库和新浪爱问共享资料。 下载地址:http://ishare.iask.sina.com.cn/f/35461926.html 晓雅数码在此也只是抛砖引玉,难免有不足或者错误的地方,欢迎大家提出,可以发邮 件:2652599905@qq.com联系,特此声明!晓雅数码,与你同行! 一、原理图详解 首先,看看开发板里面关于 LCD模块接口的连接原理图,如下: 图 1 LCD接口的连接原理图 说明:其中的第 26引脚(YD)、第 27引脚(XR)、第 28引脚(YU)和第 29引脚(XL) 是和触摸屏相关的信号线,在这里我们只是学习 LCD模块的显示,因此可以不必理会这四 根信号线,以后我们需要学习触摸功能时再对其讨论。 其他的连线要么是接到了电源和地,要么连接到了 51单片机的某些引脚。 如果我是第一次使用 LCD模块来做显示的话,我不禁地会问到:为什么 LCD接口是这 样连线的呢,也就说这样的依据是什么呢?是不是其他的 LCD模块接口也是这样类似 的设计?“知其然,知其所以然”是我们学习的目的,好了,废话少说,解决这些问题,就 如同使用一款新的芯片,我们最需要看的就是它的 datasheet,因此,我们首先看看 LCD模 块厂商提供的资料《LMS241GF31_PI_Rev000_090210(1)(图纸).pdf》。 图 2 前 6小节目录内容 上图 2给出了前 6小节的目录内容,可以知道前面 4小节主要讲了该款 LCD模块的最 大功耗、光学特性、电特性、触摸屏面板说明,这些内容主要用于选型(功耗要求、光电特 性要求等等)。从第 5小节开始涉及到了原理图的介绍了,第 5小节是一个原理框图,从整 体的角度让我们知道 LCD模块接口是怎么一回事。 图 3 LCD接口原理框图 图 3的右边有三个框,从上到下分别是 LCD屏、背光、触摸屏面板的连线示意图。 从上面我们只知道 LCD屏、背光、触摸屏面板三部分的相关信号线,但不知道,每个 信号线的排列顺序,于是紧接着第 6小节就解答了这个问题。 图 4 输入端引脚分布 这里给出了 LCD模块接口每个引脚代的意思,其中 NC表示空。这里的 37个引脚就 和原理图里面的 37个引脚是一一对应的关系了。突然,我又有新的问题了,图 4可以大概 知道每个引脚代表的意思,但是具体每个引脚的功能是什么,如何使用的呢?为什么这里的 数据线(Data0~Data15)是 16位的,而不是 8位或者 32位呢?要回答这些问题,就不得不 看《S6D04H0驱动 IC手册.pdf》(其实做 LCD 模块的厂商也是依据这个资料来的,所以所 这个资料是核心,必须要懂的),里面几乎回答了所有这些问题。 图 5 驱动 IC的 Overview 对于 S6D04H0驱动 IC手册的概括(Overview)这里重点提到如图 5中红色标记的两个 小节。首先看 1.4.2 Functional Block Diagram of the IC,如图 6所示: 图 6 驱动 IC的功能框图 细心的读者可以发现,改驱动 IC提供的某些引脚我们的原理图里面根本没有用到,这 是为什么呢?这是因为那些引脚主要是针对 LCD模块厂商使用的,而我们用的引脚只是用 于单片机与驱动芯片的数据传输、控制信号(包括复位、读、写等信号线)。这里提到了数 据传输,必然涉及到数据位数和控制方式,那么数据位数和控制方式是如何确定的呢(也就 是上面提到的问题)。 这时,我们来看看 Overview中我所要讲到的第二个重点:1.6.2 Interface Logic Pins. 如下图所示: 图 7 接口逻辑引脚 图 7 列出的引脚中,我们先看看红色框中的接口模型(Interface mode),当 IM0~IM3 的状态不同,接口模型就不同,也就是单片机与 LCD模块的通信数据线和控制方式不同。 这里接口模型分为并行和串行两大方式,并行方式又分为两类:80 MCU Parallel和 68 MCU Parallel。每种方式和分类又根据通信的数据线的多少,分成了更多的小类,在这里总共分 成了 12种不同的接口模型。总体来说,并行方式数据的传输快于串行方式,数据线越多一 次传输的数据量越大,当然所需要的 I/O口也多,这就是不同的接口模型的优缺点。 从上面可知,当我们设置不同的 IM0~IM3引脚电平时,就可以选择不同的数据传输方 式了,不过一般,IM0~IM3 的状态在 LCD 出厂时,已经由 LCD 厂家固定好了。我们再次 打开 LCD厂家提供的 datasheet----《LMS241GF31_PI_Rev000_090210(1)(图纸).pdf》中的 第 10小节:FPC Circuit。如图 8 FPC电路所示: 图 8 FPC电路 FPC是 Flexible Printed Circuit的简称,又称软性线路板、柔性印刷电路板,挠性线路板, 简称软板或 FPC,实物图如下: 图 9 LCD屏和 FPC 图 9的右边黄色部分就是 FPC,上面有很细的线路走线。 刚才插播了一下什么是 FPC。现在回到图 8,右边的大红色框就是厂家处理的接口,也 就是 LCD模块出厂后已经由厂家固定了的,而左上角的框中就是厂家留给我们设计用的接 口,仔细看看这里的接口连线和图 1是完全对应的。这也证实了左上角的接口确实是厂家留 给用户的接口。 图 8中左边还有两个用红色框标记的框框,现在我们放大,看看这里是什么。 这就是传说中的 IM0、IM1、IM2和 IM3的状态的设置了。这里 IM0=高电平‘1’, IM1~IM3=低电平‘0’: 因此厂家出厂的时候将其接口模型设置成了“80 MCU 16-bit Parallel I/F”,即数据位 16 位,8080总线。到此,回答了前面提的问题----为什么是 16位数据传输。 如果 LCD模块厂家出厂时候,IM0~IM3的设置改变了,那么我们的控制方式也就变了, 这也是为什么用同样的驱动 IC,其 LCD的驱动接口不一样的原因。 在看其他 LCD的书籍时候,会提到 LCD模块的连接方法有两种:直接控制和间接控制。 直接控制的意思是 LCD 模块的总线接口直接与 MCU 端口连接,然后 MCU 通过程序控制 端口而模拟出 LCD模块所需的总线时序完成对 LCD模块的操作;间接控制的意思是MCU 本身具有外部总线,程序以总线的形式访问 LCD模块。 我们知道MCS-51单片机用的是 8080总线,硬件接口为 8位数据线,1根片选信号、1 根读信号和 1根写信号。可惜我们这里 IM0~IM3将其设置为 16位数据线了,这样就不能用 总线的形式访问 LCD 模块。如果 LCD 模块厂家出厂时候将 IM0~IM3都设置为 0,即选择 “80 MCU 8-bit Parallel I/F”,那么硬件设计就有两种不同的连接了,一种是直接控制方 式,另一种是间接控制方式。对于我们的这款 LCD模块,虽然是 8080总线,但由于数据线 是 16位的,而 51单片机只支持 8位数据总线,所以我们选择了直接控制方式即用端口模拟 总线时序。 使用直接控制方式时,单片机和 LCD模块的连接很方便,随便选择 16个 I/O引脚(为 了编程的方便和可靠性,这 16个引脚最好是连续的)作为 16位数据线,而其他的片选信号、 复位信号、读控制信号、写控制信号等等随意连接,可以根据实际情况而定。 到此,我们回顾一下 LCD模块与单片机的硬件连线原理图(为了阅读方便,将图 1重 新贴于此)。 图中的: CS:片选信号----低电平选中 LCD模块 WR:写信号-----上升沿写入数据 RD:读信号------上升沿读出数据 RESET:复位信号----LCD模块工作前复位 DB0~DB15:数据线----传输数据、命令等 YD、XR、YU、XL:触摸相关的,这里不考虑 LEDA:背光正极----直接接 3.3V,背光一直有效 LEDK1、LEDK2、LEDK3、LEDK4:背光负极-----直接接地 上面的这些控制线和数据线都很容易理解,对于信号线 RS 特别说明一下。我们写入 LCD模块的“数据”分为两种,一种是对 LCD模块内的寄存器的设置,我们把对写入寄存 器的“数据”称为命令(本质都是数据,只是人为起了另一个名字而已);另一种“数据” 是写入到 LCD的显示缓冲区 GRAM中,这种“数据”就直接叫数据,不另外取名罢了。既 然传给 LCD模块既有命令,又有数据,那么 LCD模块是怎么区分何时是数据何时是命令的 呢?这就是 RS的作用,RS=1表示对 GRAM的操作;RS=0表示对寄存器的操作。 初学者会问,你是怎么知道它们表示这样的意思呢?靠经验么?呵呵,有时候经验是靠 不住的,最好还是从原版的芯片手册里面找依据,见《S6D04H0驱动 IC手册.pdf》第 43页, 如下图 10所示: 图 10 80-系列并行接口 图10的表中已经很详细的表述了引脚名称及其对应的引脚功能。图10中没有提到复位、 片选、背光等引脚,晓雅数码的理解是因为这些引脚无论哪种数据传输模式都会用到,所以 不必单独讨论,它们的意思在芯片资料里面也有描述,在此不再赘述。 现在的问题又来了,从图 10 中我们没有看到 RS 这样的符号啊?为什么原理图里面用 的是 RS这个符号呢?为了说明这个问题请看图 4----输入端引脚分布(为了阅读方便,再次 将图 4贴在下面:) 看 No.5:DCX----Register Select,哦,原来 DCX就是 RS(Register Select的首字母缩写)。 其实从图 10里面可以看见 DCX还有一个名字叫 E。为什么会这样呢?这是因为同一个引脚 可能由于接口模型方式的不同它的功能不同,人们为了更好的表达在不同模式下的不同功 能,于是将同一个引脚起了不同的名字,其实这和单片机具有第二功能命名如出一辙,仅仅 是功能不同称呼变了而已。 讲到这里,涉及到 LCD模块与单片机的接口连线应该阐述的比较详细了,接下来主要 是驱动(软件)方面的事情。 说明:文中涉及到的资料有《2.4寸 TFT原理图.pdf》、《LMS241GF31_PI_Rev000_090210(1) (图纸).pdf》和《S6D04H0驱动 IC手册.pdf》,已经上传到百度文库和新浪爱问共享资料。 下载地址:http://ishare.iask.sina.com.cn/f/35461926.html 晓雅数码在此也只是抛砖引玉,难免有不足或者错误的地方,欢迎大家提出,可以发邮 件:2652599905@qq.com联系,特此声明!晓雅数码,与你同行! 为了编排时候页数不过于太多,文中引用文字或图片截图可能看的不清楚,不过文中引 用资料里面的文字或图片在本文中已经详细说明了出处,可以打开原文档进行阅读! 晓雅数码,与你同行!
/
本文档为【跟晓雅数码学单片机之LCD学习全攻略(硬件篇)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索