版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单原及接片理口技术机12第四章
显示器件原理及应用实现01LED数码管的显示原理及应用028×8点阵显示及应用03LCD1602显示原理及应用04习题PrincipleandinterfacetechnologyofMicrocomputer显示器件原理及应用实现显示器件属于计算机的输出设备,也是人机交互的重要组件,可以通过显示相关信息来说明单片机系统的状态。单片机系统的显示器件通常有LED数码管、8×8的点阵、字符点阵液晶1602等。01LED数码管的显示原理及应用LED数码管的结构及编码LED数码管的结构LED数码管(LEDSegmentDisplays)由多个发光二极管封装在一起组成“8”字型的器件,引线已在内部连接完成,只需引出它们的各个笔划,公共电极。数码管实际上是由七个发光管组成8字形构成的,加上小数点就是8个,这些段分别由字母a、b、c、d、e、f、g、Dp来表示。也称为8段数码管。LED数码管外形及引脚分布如图4-1。1.1根据8段数码管的公共端连接的是高电平还是低电平将LED数码管分为两大类,一类是共阴极接法,另一类是共阳极接法。共阴极就是8段的显示字码共用一个电源的负极,可以用高电平点亮对应的段;共阳极就是8段的显示字码共用一个电源的正极,可以用低电平点亮对应的段。可以通过控制其中各段LED的亮灭来显示相应的数字、字母或符号。共阴极与共阳极数码管的内部结构如图4-2。单片机系统中还常使用7段数码管,它与8段数码管唯一不同的是没有小数点这一段,也就是没有8段数码管的Dp部分。数码管的编码要使数码管显示出相应的数字或字符,必须使数码管的各段输入与数字或字符对应的高低电平,为了方便单片机的控制,我们将单片机数据口输出的高低电平进行相应的字形编码。对照表4-1,字型码各位定义为:数据线D0与a字段对应,D1与b字段对应……,依此类推。如使用共阳极数码管,数据为0表示对应字段亮,数据为1表示对应字段暗;如使用共阴极数码管,数据为0表示对应字段暗,数据为1表示对应字段亮。如要显示“0”,需要点亮a、b、c、d、e、f段的发光二极管,共阳极数码管需要给这些段输入低电平,g、Dp段输入高电平,于是共阳极数码管显示“0”的字型编码应为:11000000B(即C0H);而共阴极数码管需要给这些段输入高电平,其它不显示的g、Dp段输入低电平,于是共阴极数码管显示“0”的字型编码应为:00111111B(即3FH)。其它要显示的字符类推可以得到相应的编码。8段数码管显示字符的编码如表4-2。7段数码管的编码与8段数码管类似。LED数码管显示方式单片机系统可以像数字电路一样用硬件(加相应的硬件驱动芯片)来驱动数码管显示,但为了控制方便与节约成本,单片机系统常采用软件的方式来驱动数码管。数码管要正常显示只需要单片机输出相应的段码,从而就可以让数码管显示出需要显示的字符。根据数码管的驱动方式不同,可以分为静态显示方式和动态显示方式。1.2静态显示方式静态显示是指数码管显示某一字符时,相应的发光二极管恒定导通或恒定截止。这种显示方式的各位数码管相互独立,公共端恒定接地(共阴极)或接正电源(共阳极),其连接电路如图4-3。每个数码管的8个字段分别与单片机的一个8位I/O口地址相连,I/O口只要有段码输出,相应字符即显示出来,并保持不变,直到I/O口输出新的段码。采用静态显示方式,较小的电流即可获得较高的亮度,且占用CPU时间少,编程简单,显示便于监测和控制,但由于每个数码管的8个字段分别与单片机的一个8位I/O口地址相连,所以在需要多个数码管显示时占用的口线多,硬件电路复杂,成本高,只适合于显示位数较少的场合。动态显示方式动态显示是指一位一位地轮流点亮各位数码管,这种逐位点亮显示器的方式称为位扫描。通常将各位数码管的段选线相应并联在一起,由一个8位的I/O口控制;各位的位选线(公共阴极或阳极)由另外的I/O口线控制,其连接电路如图4-4。动态方式显示时,各数码管分时轮流选通。要使其稳定显示,必须采用扫描方式,即在某一时刻只选通一位数码管,并送出相应的段码,在另一时刻选通另一位数码管,并送出相应的段码。依此规律循环,即可使各位数码管显示需要要显示的字符。虽然这些字符是在不同的时刻分别显示,但由于人眼存在视觉暂留现象以及发光二极管的余辉效应,只要每位显示间隔的时间足够短就可以给人以同时显示的感觉。一般每位数码管的点亮时间为1~2ms,数码管的位数越多,每位点亮的时间相对就较短。如果每位扫描的时间太长,就会看到数码管的各位显示的字符有明显地闪烁。在使用多位数码管显示时,采用动态显示方式比较节省I/O口,硬件电路也较静态显示方式简单,但由于是分时显示各位数码管,其亮度不如静态显示方式,而且在显示位数较多时单片机要依次扫描,需要占用CPU的时间较多。LED数码管显示应用1.3例1
电路如图4-5,在数码管上间隔一段时间循环显示0、1、2、3、4、5、6、7、8、9、A、b、C、d、E、F十六个字符。元件清单如表4-3所示。解:首先要确定数码管的类型,根据4-5的电路图数码管,可以看出数码管公共端接的是电源,因此得出是共阳极数码管。要显示0~F字符就需要根据表4-2共阳极数码管的段码列举出来,将其保存到一个一维数组,方便调用,流程如图4-6,仿真结果如图4-7、4-8、4-9、4-10。解电路如图4-11,在8位数码管上显示2018.10.23,元件清单如表4-4所示。例2解:由图4-11可以看出,用了两个74LS373锁存器分别控制8位数码管的段选控制端和位选控制端。根据数字电路的知识,74LS373锁存器正常工作时,输入端输入什么信号,输出端就得到什么信号。U2锁存器接在单片机的P0口上,U3锁存器接在单片机的P3口上,因此属于单片机动态显示的连接方法,要用动态显示的方法来驱动这8位数码管。同时,由于74LS373锁存器可以承受较大的电流,所以可以较好地保护单片机的I/O口。其次本例有小数点的显示,而由于题目上每一位显示的数字是固定不变的,小数点的位置也是固定的,所以可以在段编码中直接加上小数点就行。而实际过程中数码管显示的各位数都有可能在变化,因此先将要显示的数字转化到暂存数组中,小数点的显示放到数码管显示时根据显示的位置来合理安排。图中电路的接法可以看出8段数码管为共阴极数码管。对于共阴极数码管要点亮小数点,由于采用的是最高位来控制小数点的点亮,所以高位必须为高电平才能点亮,只需数字的编码或上0x80就能实现带小数点的数字显示。其流程如图4-12,仿真结果如图4-13。解电路如图4-14,用延时方式在数码管(共阴极)上实现显示0.00~59.99s的秒表,要求每10ms数码管的显示变化一次,秒的十位为0时不显示。元件清单如表4-5。例3解:该题与例2类似,但是该题数字10ms要变化一次,为了减少变量,因此我们只用一个计数器每10ms加一次的值。根据题秒的十位为0时,这时高位的0不显示,也就是要将显示秒的十位上的数码管不显示,可以将共阴极数码管不显示的编码也放到数组中去。同时秒的个位的位置有小数点,在显示方法上可以借用例2的方法,其流程如图4-15,仿真结果如图4-16。解8×8点阵显示及应用028×8点阵的显示原理2.18×8点阵的实际外观图如图4-17(a),一共64个发光点构成,上下两排引脚,每排8个,一共16个。有的点阵后面标有第一脚,有的没有标,现在大家习惯跟IC的管脚顺序一样,读法是第1脚一般在侧面有字的那一面,字是正向时左边第一脚为1,然后按逆时针排序至16脚。卖家所说8×8点阵的共阴或者共阳确切的说应该是行共阴或者行共阳,内部结构如图4-17(b)、(c)所示。点阵LED一般采用扫描方式显示,实际运用主要有两种方式:行扫描方式和列扫描方式。使用行扫描和列扫描时,则频率必须大于16×8=128Hz,周期小于7.8ms即可符合视觉暂留要求。点阵LED的扫描方式有点类似于数码管的动态显示,行扫描方式就是先将某一行置高电平(或低电平),然后所有的列置低电平(或高电平)来点亮对应的LED;列扫描方式就是先将某一列置低电平(或高电平),然后所有的行置高电平(或低电平)来点亮对应的LED。对于共阳型的8×8点阵当对应的某一行置高电平,某一列置低电平,则相应的二极管就亮;对于共阴型的8×8点阵当对应的某一行置低电平,某一列置高电平,则相应的二极管就亮。此外一次驱动一列或一行(8颗LED)时需外加驱动电路提高电流,否则电流太小LED亮度就会不足。8×8点阵的字模代码2.2
为了弄清楚汉字的点阵组成规律,我们先来通过列(竖柱)扫描方法获取汉字的代码。先将8行分成4位的上、下两部分,下为高4位,上为低4位,把发光的象素位编为1(图4-18与图4-19中的黑色的点),不发光的象素位编为0(图4-18与图4-19中的白色的点)。根据这个规律,图4-18中五的十六进制编码为:0x42,0x4A,0x4A,0x7E,0x4A,0x7A,0x42,0x00。其次,我们又通过行(横柱)扫描方法来获取汉字的代码。先将8列分成4位的左、右两部分,右为高4位,左为低4位,把发光的象素位编为1,不发光的象素位编为0,根据这个规律,图4-19中→的编码为:0x00,0x08,0x18,0x3f,0x7f,0x3f,0x18,0x08。每一个字由8行8列的点阵组成显示,可以把每一个点理解为一个象素,而把每一个字的字形理解为一幅图像。事实上8×8点阵不仅可以显示汉字,也可以显示在64象素范围内的任何图形,如图4-18与图4-19。当然也可以直接使用汉字库中的编码来点亮需要显示的汉字。8×8点阵显示应用2.3例1
在8×8点阵上显示“王”字符,电路如图4-20所示,元件清单如表4-6。解:根据点阵扫描显示原理,可以知道点阵的显示类似于前面的数码管动态显示,数码管的段码对应于点阵的行,数码管的位码对应于点阵的列。74HC573锁存器与74LS373锁存器的功能基本一样,使用方法相同。可以自定义画出点阵显示“王”的图形如图4-21所示,对于行共阳点阵,列为低电平,行为高电平点亮相应发光二极管,把发光的象素位编为1,不发光的象素位编为0,根据列扫描方式编码原理,于是得到代码为:0x82,0x92,0x92,0xfe,0x92,0x92,0x82,0x00;根据行扫描方式编码原理,于是得到代码为:0x00,0x7f,0x08,0x08,0x3e,0x08,0x08,0x7f(此时要点亮相应的LED,必须对前面的编码要逐位取反)。由于图4-20中选用的点阵为共阴型,对于共阴点阵,行为低电平,列为高点亮,才能点亮相应的LED。根据行扫描方式编码原理,黑色圆点为点亮的LED,由于列信号为高电平才能点亮,所以把发光LED的像素编为1,得到的代码为:0x00,0x7f,0x08,0x08,0x3e,0x08,0x08,0x7f。根据列扫描方式编码原理,黑色圆点为点亮的LED,由于行信号为低电平才能点亮,所以把发光LED的像素编为0,得到的代码为:0x7d,0x6d,0x6d,0x01,0x6d,0x6d,0x7d,0xff;若是此时仍把发光LED(黑色部分)的像素编为1,得到的代码为:0x82,0x92,0x92,0xfe,0x92,0x92,0x82,0x00,相当于对前面的每个代码进行逐位取反(编程时要对得到的代码依次取反才能点亮相应的LED)。流程如图4-22,仿真结果如图4-23列扫描方式与图4-24行扫描方式所示。解在8×8点阵上显示“→”字符,其点阵图如图4-18所示,让其从图上的位置向右移动出点阵,如此循环下去。电路如图4-20,元件清单如表4-6所示。例2解:要使“→”字符从图4-19的位置向右移动出点阵,要弄清“→”在点阵上是如何移动的。其移动过程和行扫描代码如图4-25所示。从图4-25中可以看出由九幅图构成其移动过程,每幅图的图形由行扫描八次实现,编程时把由九幅图构成其移动过程可以看成九个动作,每个动作由八次扫描形成,共形成72个编码。将所有编码一一执行一遍就能实现要表现的意图,其流程如图4-26,仿真结果如图4-27所示。解LCD1602显示原理及应用03液晶显示器简称LCD显示器。它是利用液晶经过处理后能改变光线的传输方向的特性实现显示信息。液晶显示器按其功能可分为三类:笔段式液晶显示器、字符点阵式液晶显示器和图形点阵式液晶显示器。前两种可显示数字、字符和符号等,而图形点阵式液晶显示器还可以显示汉字和任意图形,达到图文并茂的效果。LCD1602属于字符点阵式液晶显示器,一般只能显示ASCⅡ字符。市面上各种形式的液晶通常是按照显示字符的行数或液晶点阵的行、列数来命名的。1602是指每行显示16个字符,最多可以显示两行。LCD1602液晶显示器是广泛使用的一种字符型液晶显示模块。它是由字符型液晶显示屏(LCD)、控制驱动主电路HD44780及其扩展驱动电路HD44100,以及少量电阻、电容元件和结构件等装配在PCB板上而组成。不同厂家生产的LCD1602芯片可能有所不同,但使用方法都是一样的。LCD1602概述3.1LCD1602主要技术参数显示容量:16×2个字符芯片工作电压:4.5~5.5V工作电流:2.0mA(5.0V)模块最佳的工作电压:5.0V字符尺寸:2.95mm×4.35mm(宽×高)LCD1602引脚功能LCD1602采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表4-8所示。第1脚:VSS为电源地。第2脚:VDD接+5V电源。第3脚:VL为液晶显示对比度调整端,接正电源时对比度最弱,接地时对比度最强,使用时可以通过一个10k的电位器调整对比度。第4脚:RS为数据/命令选择端,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:R/W为读/写选择端,高电平时进行读操作,低电平时进行写操作。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第7~14脚:D0~D7,为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极。RAM地址映射图控制器内部带有80字节的RAM缓冲区,对应关系如图4-29。向图4-29中的00H~0FH、40H~4FH地址中的任意处写显示数据时,液晶都可以显示出来;但写入到10H~27H或50H~67H地址处时,必须通过移屏指令将它们移入可显示区域才能正常显示。在实际操作中向LCD1602写入地址时,第一行第一列写入的显示地址应该为00H+80H,第二行第一列写入的显示地址应该为40H+80H。HD44780内藏的字符发生存储器(ROM)已经存储了160个不同的点阵字符图形。这些字符有:阿拉伯数字、英文字母的大小写、常用的符号等,每一个字符都有一个固定的代码。比如数字“1”的代码是00110001B(31H),又如大写的英文字母“A”的代码是01000001B(41H),可以看出英文字母的代码与ASCII编码相同。要显示“1”时,我们只需将ASCII码31H存入DDRAM指定位置,显示模块将在相应的位置把数字“1”的点阵字符图形显示出来。LCD1602的指令1602液晶模块内部的控制器共有11条指令。(1)清屏命令清屏命令格式如表4-9所示。功能:清除屏幕,将显示缓冲区DDRAM的内容全部写入空格(ASCII20H)。光标复位,回到显示器的左上角。地址计数器AC清零。(2)光标复位命令光标复位命令格式如表4-10所示。功能:地址计数器AC清零,光标和画面回到初始位置(Home)。(3)输入方式设置命令输入方式设置命令格式如表4-11所示。功能:设置光标、画面的移动方式。当I/D=1时,光标从左向右移动;I/D=0时,光标从右向左移动。当S=1时,画面移动,S=0时,画面不移动。(4)显示开关控制命令显示开关控制命令格式如表4-12所示。功能:设置显示、光标及闪烁开、关。D表示显示开关:当D=1时显示开,D=0时不显示。C表示光标开关:当C=1时光标显示,C=0时光标不显示。B表示字符是否闪烁:当B=1时字符闪烁,B=0时字符不闪烁。(5)光标、画面位移命令光标、画面位移命令格式如表4-13所示。功能:移动光标或整个显示字幕移位。当S/C=1时整个显示字幕移位,S/C=0时只光标移位。当R/L=1时光标右移,R/L=0时光标左移。(6)功能设置命令功能设置命令格式如表4-14所示。功能:工作方式设置(初始化指令)。DL设置数据位数:DL=1时数据位为8位,DL=0时数据位为4位。N设置显示行数:N=1时双行显示,N=0时单行显示。F设置字形大小:F=1时5×10点阵,F=0时为5×7点阵。(7)设置字库CGRAM地址命令设置字库CGRAM地址命令格式如表4-15所示。功能:设置用户自定义CGRAM的地址,对用户自定义CGRAM访问时,要先设定CGRAM的地址,地址范畴00H~3FH。(8)显示缓冲区DDRAM地址设置命令显示缓冲区DDRAM地址设置命令格式如表4-16所示。功能:设置当前显示缓冲区DDRAM的地址,对DDRAM访问时,要先设定DDRAM的地址。N=0时,一行显示的地址范畴00H~4FH;N=1时,首行显示的地址范畴00H~2FH,第二行显示的地址范畴40H~67H。(9)读忙标志BF及地址计数器AC命令读忙标志BF及地址计数器AC命令格式如表4-17所示。功能:读忙标志及地址计数器AC。当BF=1时则表示忙,这时不能接收命令和数据;BF=0时表示不忙。此时AC值意义为最近一次的地址设置(CGRAM或DDRAM)定义。BF的功能是告诉单片机,LCD内部是否正忙着处理数据。当BF=1时,表示LCD内部正在处理数据,不接受单片机送来的指令或数据。LCD设置BF的原因是因为单片机处理一个指令的时间很短,只需几us左右,而LCD得花上40us~1.64ms的时间,所以单片机要写数据或指令到LCD之前,必须先查看BF是否为0。(10)写DDRAM或CGRAM命令写DDRAM或CGRAM命令格式如表4-18所示。功能:向DDRAM或CGRAM当前位置中写入数据。对DDRAM或CGRAM写入数据之前须设定DDRAM或CGRAM的地址。(11)读DDRAM或CGRAM命令读DDRAM或CGRAM命令格式如表4-19所示。功能:从DDRAM或CGRAM当前位置中读取数据。当DDRAM或CGRAM读出数据时,先须设定DDRAM或CGRAM的地址。LCD1602的时序1602的基本操作时序如表4-20所示。1602写操作和读操作时序如图4-30和图4-31。通过RS确定是读写数据还是命令,通过R/W确定是写操作还是读操作。在E为高脉冲期间进行完成从液晶读操作或向液晶写操作。操作时间参数如表4-21所示。1602字符型LCD的初始化过程延时15ms,写指令38H(可不检测忙信号);延时5ms,写指令38H(可不检测忙信号);延时5ms,写指令38H(可不检测忙信号);以后每次写指令、读/写数据操作均需要检测忙信号;写指令38H:显示模式设置;写指令08H:显示关闭;写指令01H:显示清屏;写指令06H:显示光标移动设置;写指令0CH:显示开及光标设置。单片机与LCD1602的连接电路单片机与LCD1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 某钢铁厂研发管理办法
- 旅行社经营管理(第五版) 教案
- 2026中国碳纤维复合材料行业成本下降路径与应用拓展研究
- 2026中国水处理化合物和净化化合物行业市场现状供需分析及投资评估规划分析研究报告
- 2026瑞典环境产业市场规模可持续技术发展分析评估规划分析报告
- 2026中国智能交通系统制造行业市场供需分析投资评估发展规划前景报告
- 2026全球与中国亚麻籽油行业市场发展分析及发展前景预测研究报告
- 2026中国洗涤用品行业市场细分与品牌建设工作报告
- 2026中国证券行业市场供需现状研究及投资评估规划研究报告
- 2026汽车整车行业市场深度调研及投资前景与投资策略研究报告
- 翻车机检修安全培训课件
- 《高等数学上册》全套教学课件
- 2025年北师大版新教材数学一年级上册教学计划(含进度表)
- 放射医学技术路线规划
- 医疗物资的数字化管理基于区块链技术的全流程追溯应用探索
- GJB9001C管理评审报告范例
- 无人机通信与导航技术-洞察分析
- T-BAAA 001-2024 事故车辆损失鉴定评估规范
- 手术器械的包装操作流程
- 人教版2024-2025学年七年级数学上册教学计划(及进度表)
- 空地堆场出租合同模板
评论
0/150
提交评论