《《人机接口技术》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《人机接口技术》PPT课件.ppt(84页珍藏版)》请在三一办公上搜索。
1、人机接口是指单片机的输入输出设备,包括输入键盘、开关按钮和显示装置、打印机等。通过单片机的人机接口设备,向单片机输入命令和数据,了解单片机运行的状态和显示相关的工作参数。,10.1.开关接口,开关是一种有二个可选择的、有固定位置的装置,主要用于向单片机输入电平信号。通过拨动开关的位置,使单片机得到一个固定不变的电平信号,用于向单片机输入控制命令或数据,开关信号可以通过机械式开关、电子式开关等方式产生。,10.1.1 机械式开关接口的基本应用,在大多数情况下,都是使用机械式开关来产生二个固定的位置得到0、l电平信号。图10.1是开关通过单片机的I/O口输入电平信号的电路。,图10.1 开关输入电
2、路,在图10.1中共有3个开关,K0 K2,电阻R0 R2为上拉电阻,开关在断开状态时,+5V电压通过上拉电阻向P1.0 P1.2口输入一个高电平信号,开关在闭合状态时,P1.0 P1.2口直接接地,接收到一个低电平信号。由于开关的断开和闭合状态是稳定的,所以输入单片机的I/O口的电平信号也是稳定的,在编写程序时,只要读取P1.0 P1.2端口的0、1状态,就可以知道开关断开和闭合的状态。基本判别语句有:JB P1.0 Re1;语句用于当Pl.0=l,则程序转Rel执行。或JNB P1.0 Re2;语句用于当P1.0=0,则程序转Re2执行,在图10.1 的电路中,通过K0 K2三个开关,可以
3、向单片机输入三个开关的不同电平信号,表示三种命令,单片机通过对三个开关状态的判别执行相应的程序。在图10.1电路中,对K0 K2三个开关的断开和闭合状态的组合,还可以获得8个不同的电平信号,通过应用程序,向单片机输入8个不同的命令信号或数据。由于这种开关一次设置后能一直保持,在很多单片机应用系统中,使用这种开关来向系统输入某些固定不变的常数。也可以通过单片机扩展电路来设计开关接口电路。如图10.2是通过74LS244电路来进行设计的。,图10.2 开关接口电路的扩展设计,图10.2中的74LS244是八同相三态缓冲器,可以接入8个开关量信号。74LS244的数据输入端与单片机CPU的P0口相连
4、接,用于8位数据的传送,CPU的P2.7和P3.7相或后作为74LS244的片选信号,在74LS244被选中的情况下,三态缓冲器打开,开关量信号进入CPU内存。在没有被选中时,三态缓冲器关闭,开关量信号被阻隔,无法进入CPU。也可以通过P2口的其他地址线,设计多个74LS244集成电路,扩展更多的开关量。,在编写程序读取开关的状态与前面有所不同,74LS244应该被单片机看作是一个外存储单元,基本语句有:MOV DPTR,#7FFFH;设置74LS244集成电路的片选地址值 MOVX A,DPTR;将八个开关量的状况读入单片机内 通过上述两个语句,就可以把扩展的8个开关量所表示的命令或数据读入
5、单片机内存,并作相应的处理。,10.1.2 电子式开关接口的基本应用,除了使用机械式开关装置设计开关接口电路外,还可以应用光电传感器、接近开关、霍尔传感器等电子元器件设计成0、l电平信号输入单片机,完成开关量输入的作用。图10.3为光电传感器的应用电路。,图10.3 光电传感器开关 接口应用电路,图10.3中的D为红外发光二极管,R1为限流电阻,T是光电接收三极管,R2为取样电阻。D在+5V的作用下,产生红外光线,当红外光线没有被挡住时,T导通饱和向CPU输入一个O电平信号,当红外光线被挡住时,T截止向CPU输入一个1电平信号。,光电传感器的二极管大多采用砷化镓红外二极管,接收三极管输出电流较
6、小,在0.5-5毫安左右,接收三极管与晶体三极管组成的达林顿输出型,输出电流可达20 30mA,可以直接驱动继电器等功率器件。表10.1和10.2是光电传感器的基本参数。,向单片机输入开关信号,就能对红外光线进行控制。根据发光二极管与接收三极管的不同位置设计的开关接口电路,可以应用于计数、位置状态、转速等多方面的测试。图10.4是转速测量电路。,图10.4 光电传感器在转速测量中的应用,在图10.4中,带透光方孔的转盘与要测量转速的传动轴相连结,轴转动时,带动带透光方孔的转盘一起转动,使红外接收三极管断续地接收到发光二极管发出的红外光,在其输出端产生一系列脉冲电平信号,单片机通过对输入的脉冲电
7、平信号进行计数,就可以测量出该转动装置的转速了。设转速为S,转动盘上有N个方孔,单片机在l秒钟内的计数值为M,则S=M/N(转/秒)。很显然,N值越大,测量的转速越精确。,在图10.5中,红外发光二极管和红外接收三极管分别安装在产品流水线传送带的二边,每当传送带上有一个产品经过,就会遮挡红外光线一次,使红外接收三极管的输出一个脉冲电平信号。单片机对输入的脉冲信号进行计数,就可以对产品的产量进行统计。,图10.5 光电传感器在产量计数中的应用,图10.6是位置检测电路。,图10.6 光电传感器在位置检测中的应用,在图10.6中,当移动的物体一旦挡住红外光线,红外接收三极管就会输出一个脉冲信号。此
8、装置可以用来检测物体的有或无,可以作为运动物体的限位检测电路,可以作为外人侵入的报警检测电路,也可以作为自动门的控制电路。关于红外光电还可以有更多的应用,这里不再一一例举。,除了光电传感器外,还有电感式接近开关。图10.7是电感式接近开关的应用原理图。,图10.7 电感式接近开关应用原理图,电感式接近开关由高频振荡器、检波放大器、输出电路和开关组成。由感应线圈产生高频振荡信号形成一交变磁场,当有金属类物体接近时,在金属物体内产生涡流并吸收振荡器的能量,使振荡信号变弱或停止振荡,在检波放大器和输出电电路的作用下,产生一个开关信号输入单片机的P1.0端口,用于有无物体接近的检测。因此电感式接近开关
9、可以和红外光电管一样,用于有无物体接近或对经过物体进行计数,或者用于物体的位置状态进行检测。,图10.8是开关型霍尔传感器的应用。,图10.8 开关型霍尔传感器的应用原理图,在图10.8中,霍尔传感器为开关型霍尔传感器,在5V电压的作用下,外加一个磁场会在霍尔传感器的3端输出一个电平信号。当开关型霍尔传感器在固定电平的作用下,若外加一个固定的磁场,则一个金属类物体接近或通过时,会改变磁场对传感器的作用,随之改变它的输出电平。若不外加一个固定磁场,而是一个带永久磁钢的物体接近或通过,那么在磁场的作用下,也会改变传感器的输出电平状态。因此,当有一个金属物体或带磁钢的物体通过或接近开关型霍尔传感器时
10、,会引起输出电平的变化,霍尔传感器的输出端与单片机的P1.0端口相连接,单片机就会接收到一个开关信号。开关型霍尔传感器同样可以应用于测量转速、计数、物体的位置和有无的检测。,图10.9是霍尔效应原理图,一个半导体簿片的两个端面通过控制电流I,并在簿片的垂直方向上施加磁感应强度为B的磁场,那么在垂直于电流I和磁场B的方向上会产生电势U,称为霍尔电势。霍尔效应是由运动的电荷受磁场中洛伦兹力的作用而产生的,霍尔电势U可用下式表示:U=RIB/d(V)其中 R-霍尔常数(m3C)I-控制电流(A)B-磁场强度(T)d-半导体簿片的厚度(m)可以表示为 U=KIB 其中 K=R/d 由此可知,霍尔传感器
11、的霍尔电势与控制电流、磁场强度成正比。,图10.9 霍尔效应原理图,图10.10a是开关型霍尔传感器的结构框图,它由霍尔元件、电压放大器、电压波形整形电、集电极开路输出电路等部分组成。图10.10b是开关型霍尔传感器的工作特性,由图可知,开关型霍尔传感器的工作特性存在磁滞,B1点为工作点开状态的磁场强度成,B2点为关状态的磁场强度。,图10.10 开关型霍尔传感器的结构和工作特性,10.2 键盘接口,键盘,是一种按钮,与开关不同的是它只有一个稳定的位置,当按下键盘时,改变了开关的位置,但是一旦放开就会回到原来的位置。因此在按键过程中会产生抖动,从而引起读键误判断,需要对键抖动进行处理。键抖动处
12、理有硬件和软件两种处理方法,软件处理方法更方便更常用。键盘有简单键和矩阵键,应该根据实际情况来设计。在单片机应用系统中,键盘是人机对话的主要设备,用于向单片机应用系统输入数据、程序和操作命令。键盘分机械式键盘和触摸式键盘两大类。,当键按下或松开时,会向单片机CPU输入一个“0”电平或“1”电平,CPU根据接收到的“0”或“1”电平信号,决定具体的操作。但是在键的按下和松开时,开关的机械触点会产生抖动,一般抖动时间在5ms-10ms左右,抖动的波形如图10.11所示。在抖动期间CPU不能接收到稳定的电平信号而无法作出正确的判断,因此需要对键进行去抖动处理。,图10.11 按键时产生抖动的波形示意
13、,10.2.1.硬件消除抖动法,硬件消除抖动的原理见图10.12,是利用R-S触发器集成电路来实现消除抖动功能的。当键按下时,R-S触发器的1端为高电平,2端为低电平,尽管按下的键会产生抖动,但由于触发器的作用,在3端会产生一个稳定的低电平。在键松开的过程中,由于1端变为低电平,2端变为高电平,同样R-S触发器的作用,在3端会产生一个稳定的高电平。,图10.12 硬件消除抖动电路原理图,10.2.2.软件消除抖动法,硬件消除抖动法需要增加电子元件,电路复杂,特别是按键比较多的时候,实现起来有困难。而用软件消除抖动法,不需要增加电子元件,只要编写一段延时的程序,就可以达到消除抖动的作用。在软件消
14、除抖动方法中,若CPU检测到有键按下,就执行一段延时程序后再检测此按键,若仍为按下状态,CPU则认为该键确实按下。同样,当键从按下再松开时,CPU检测到有键松开,并在延时一段时间后仍检测到键在松开状态,则认为键确实松开,这样就消除了抖动的影响,实现了软件消除抖动的功能。图10.13所示为软件去抖动判别程序的流程图.,图10.13 软件消除抖动流程图,10.2.3 简单键盘接口,每个键盘独立地与单片机的I/O线直接相连接就构成了简单键盘。如图10.14所示,键与键之间的工作状态互不影响。简单按键可以根据需要灵活地进行设计,每键占用一根I/O线,软件编写方便。在图中,R1-R4为上拉电阻,K1-K
15、4为按键,当键未按下时,CPU从I/O口接收到的是“1”电平,当某个键按下,则CPU读取该I/O端口的电平变化状态,以确定键是按下或松开的状态。,图10.14 单片机简单按键电路,单片机简按键电路,采用了软件消除抖动方式来消除按键的抖动,参考程序如下。ORG 0003H AJMP JPCON JPCON:MOV P1,#0FFH;P1口输入准备 MOV A,P1;输入P1口的值 JNB ACC.3,PROC3;查询键K4 JNB ACC.2,PROC2;查询键K3 JNB ACC.1,PROC1;查询键K2 JNB ACC.0,PROC0;查询键K1 RET PROC3:CALL D20;调用
16、2Oms延时程序 MOV P1,#0FFH;再次读P1准备 MOV A,P1;再次确认P1值 JNB ACC.3,JPC4;再次查询K4键,真的按下处理 RET PROC2:;K3及其它键的处理 在该程序中,第一次读键盘并判别K1K4中哪个键按下,确定哪个键后,延时20ms后再次查该键是否仍按下,若确实按下则转到该键的处理子程序进行处理,由于两次读键过程中延迟了2Oms,起到了软件消除抖动的作用。,10.2.4 矩阵式键盘接口,图10.15是一个4*4的矩阵式键盘接口,一共使用了8个I/O口,可以实现16个键的输入。从这里可以看到,矩阵式键接口比简单键接口有更多的键容量。如果十根I/O线,矩阵
17、式键接口键的数量可的达到25个。其中,P1.0P1.3为行线,用于输出低电平。P1.4P1.7为列线,用于检测的输入线,判别键盘的状态。,图10.15,单片机矩阵式键盘,CPU采用定时查询方式工作。先使P1.0为0,然后分别读取P1.4P1.7的状态,当没有任何键按下时,在上拉电阻作用下,P1.4P1.7全为1电平。当P1.4P1.7中有某一个值为0,就可以判断是哪个键按下。例如9键按下,则P1.4为0电平。若是8键按下,P1.7应为低电平。CPU依次轮流使P1.0P1.3为0,逐列读取P1.4P1.7的状态,可以确定一个具体的键按下,并进行相应的键盘处理。下面是这个键盘接口的键盘处理参考程序
18、:,MOV R4,#00H;R4为返回键值,初值为0 MOV P1,#0F0H;行线为0,列线为1 MOV A,P1;读列线值 ANL A,#0F0H;分离高4位 CJNE A,#0F0H,PRSO;不全为1,有键按下 SJMP DONE;无键按下,返回PRSO:ACALL DL;延时子程序调用 MOV A,P1 ANL A,#0F0H CJNE A,#0F0H,PRS1;确认有键按下,识别键 SJMP DONE;抖动,返回执行PRS1:MOV R2,#04H;四次扫描数 MOV R3,#01H;记录扫描到第几行,SCA:MOV A,R3;开始扫描 CPL A;使第一行为低电平 MOV P1,
19、A;输出扫描值 MOV A,P1;读列线电平 ANL A,#0F0H;分离列线电平 CJNE A,#0F0H,FN;找按键行 MOV A,R3;准备一下行扫描 RL A MOV R3,A DJNZ R2,SCA;判四次扫描完成否 SJMP DONE;无键按下,返回FN:CPL A ADD A,R3 MOV R4,A;返回键值DONE RET,在矩阵键盘接口中,也可以采用中断扫描方式。采用中断扫描方式,可以提高CPU的工作效率,仅在有键按下时,向CPU申请中断,CPU才响应中断,对键盘进行扫描,识别键码进行键盘事件处理。,10.2.5 BCD码拨盘接口,BCD码十进制拨盘是向单片机应用系统输入数
20、据的设备,并且十分方便,是一种硬件设置数据的设备。使用拨盘输入的数据具有不可变性,却又易于修改。十进制输入BCD输出的拨盘是最常使用的一种。图10.16是一个四位BCD码拨盘组结构和连接示意。每位拨盘有09十个拨动位置,每个位置有相应的数字表示,分别代表拨盘输入的十进制数。所以,一位拨盘可以代表一位十进制数,可以根据设计的需要,用多位BCD码拨盘组成多位十进制数。,BCD码有一个输入控制线A,四个BCD码输出信号线。拨盘的各个不同的位置,使输入控制线A分别与四根BCD码输出线中的某几个根接通,使BCD码输出线的状态与拨盘所显示的值一致,并使该编码信号输入单片机的CPU。BCD码拨盘的输入输出状
21、态见表10.3。,图 10.16 4位BCD码拨盘结构和连接,BCD码拨盘与单片机相连的应用见图10.17。拨盘的输入控制线A接+5V,四根输出线通过电阻接地并接单片机CPU的P1口。由表10.3可知,当拨盘在09的某个位置时,四根输出线的8、4、2、1端有一组相应的电平状态生成,CPU可以通过读取P1口的端口状态知道拨盘设置的数据。在这种情况下,拨盘输出的BCD码为正逻辑电平。如果BCD码拨盘的输入控制线A接地,四根输入线通过电阻接+5V,那么拨盘输出的BCD码为负逻辑电平。见图10.18所示。,图10.17 单片机与BCD码拨盘的接口,图10.18 BCD码拨盘负逻辑接口,在实际应用中,常
22、常需要多位十进制数据输入,因此需要多位BCD码拨盘组成。,串行键盘应用,除了利用并行输入口设计键盘电路外,还可以用串行方式设计键盘电路。图10.18为用串行口设计的串行键盘电路。,图 10.19 单片机串行口键盘控制电路,CD4014是8位表态移位寄存器(同步并入),实现并行输入串行输出,其引脚排列如图10.20所示,功能如表10.4。,图10.20 CD4014 引脚排列图,表10.4 CD4014逻辑功能表,如图10.20,P1P8作为8个开关输入K1K8,输入的开关量通过TXD控制CLK端,把值逐次串行数位进入RXD端口,并存入寄存器A中。键盘电路程序如下:S1:SETB P1.0;置位
23、CD4014的 P/S端 CLR P1.0;清CD4014的 P/S端,开始串行移位 MOV SCON,#10H;设置串行方式0,开始接收 W1:JNB RI,W1;判RI状态 CLR RI;一次串行输入完成 MOV A,SBUF;存放输入的数据 RET 除了使用CD4014集成电路外,还可以使用74LS165等集成电路芯片设计串行键盘控制电路。,10.3 LED显示接口,LED发光二极管和数码管是单片机应用系统的主要显示设备。发光二极管可以用于状态的指示,数码管用于数字和字符的显示。在控制中有静态显示和动态显示二种,与单片机的接口有并行的或串行的方式。由于单片机接口的驱动能力较差,需要在单片
24、机和LED之间加接口电路实现译码驱动。应该根据LED数码管的位数、电流大小来决于接口电路的形式。显示器接口是实现单片机信息输出的重要接口。用户的程序、数据、命令都需要通过显示装置显示,才知道输入的正确与否。目前在单片机上常用的有LED显示器和LCD显示器两大类,显示的方式有静态显示和动态显示两种。,10.3.1 发光二极管接口,发光二极管在单片机应用中,可以用于各种信号指示、红外发光源,可以用于光电测量和控制,可以做成光电隔离器,增加抗干扰能力,可以用于文字、图形显示。发光二极管的基本驱动电路如图10.21。,图10.21 二极管基本驱动电路,图a为负极控制,图b为正极控制,Vi为控制信号 当
25、Vi=1时,发光二极管D上无电流流过,不发光 Vi=0时,I=5V-Vf-Vs R 式中 Vf LED正向导通压降 Vs Vi为低电平时的电压 R LED的限流电阻 I LED的工作电流 设 Vf=1.7V Vs=0.2V 则 I=(5-1.7-0.2)V=3.1V R R 一般选取I=415mA,当取I=10mA,亮度已够,但使用寿命可以大大延长。图b中,当Vi=0时,LED上无电流流过不发光 当Vi=1时,I=5-Vf-Vs,有电流流过LED产生光 R,大多数情况下,Vi为CPU的I/O口或集成缓冲器的端口。对于用低电平吸收电流的方式工作,可以不加缓冲器。因为CPU的I/O口低电平吸收电流
26、在20mA左右,CD4000系列和74LS系列电路的低电平吸收电流也在20mA左右,图10.22所示为单片机通过I/O口驱动三极管来点亮LED灯的。在a图中,单片机输出低电平,三极管G截止,Vc电源通过R2使LED点亮,当单片机输出高电平时,三极管G导通,LED被短路不发光。图b中,单片机输出0电平,三极管G截止,LED上无电流流过不发光,当单片机输出高电平时,三极管导通有电流流过,LED发光。使用时可以根据需要选择控制的方式。,图10.22 单片机通过三极管对LED的控制,/管无电流流过,不发光。CPU为0时,反相缓冲器输出为1电平,发光二极管上有电流流过发光。,图10.23 单片机通过反相
27、器对LED的控制,10.3.2 LED数码管接口,LED数码管是由发光二极管组成并封装在一个标准的外壳中,有8字形和米字形之分,各有共阳极和共阴极两种。如图10.24所示为8字形共阳极和共阴极两种连接方式。,图10.24 LED数码管的结构,LED数码管的发光二极管负极连接在一起接地(COM端)的称为共阴极,LED数码管的发光二极管正极连接在一起接到+VC端的称为共阳极。两种形式的LED数码管的外形及管脚排列相同。图10.25所示为米字形LED数码管外形和共阴极,共阳极接法。,图10.25 米字形LED数码管的结构,LED显示器显示接口有静态和动态两种。在静态显示接口中每一个接口驱动器件驱动一
28、个显示器,一些常用的LED静态驱动接口器件特性见表10.5。在静态显示时,单片机把数据写入接口驱动电路后,驱动电路能够锁存数据并使显示器显示输入的值,因此,接口驱动电路应该有锁存数据的功能,表中的TTL电路和CMOS电路中的CD14547均无锁存功能,电路设计中应增加锁存功能。其它器件均有锁存功能。所有器件均为BCD码,输出均不能驱动小数点。,CD14513,CD14543和CD14544在驱动共阴极LED时,可直接显示相应的数字。CD14543和CD14544的输出为异或门结构的,因此还可以驱动LCD液晶显示器。根据上述各种器件的特点,在静态显示时,驱动共阴极LED,一般选用CD4511、C
29、D4513或CD14495;驱动共阳极LED,可选用74LS74或74LS274,驱动LCD可选用CD14543或CD14544。CD4511是BCD码-7段译码/锁存/驱动器。CD4511从D,C,B,A输入待显示的BCD码,当LE=0时输入数据,当LE=1是数据锁存。数据输入后立即在引脚AG端输出用于驱动共阴极LED显示器的字段的信号。当LT=0是,进行等测试,使LED显示器显示“8”。当BI=0时,显示器消隐显示,即显示器“暗”。图10.26所示的是8031通过CD4511与共阴极七段LED显示器的接口电路。图中的4个5.1K电阻是上拉电阻,使单片机的输出电平与CD4511的CMOS输入
30、电平相容,另外,译码器的输出也应接上拉电阻,图中未画出。CD4511的输出端与LED数码管之间连接有限流电阻,限流电阻的阻值按下式计算:R=(VOH-VDF)/IDF 式中VOH是CD4511的输出高电平电压;VDF是发光二极管的正向、压降,约为1.5V;IDF 是发光二极管通过的电流。设VOH=3.5V,VDF=2V,IDF=8mA,可求得R=250,图10.26 CD4511电路与共阴极LED数码管的接口,与CD4511有相同功能的CD4513BCD-7段锁存/译码/驱动器的引脚及原理框图如图10.27.,图10.27 CD4513 引脚和工作原理,引脚功能说明如下:LT:测试输入端,为低
31、电平时,与输入无关,是各段全亮。LE:锁存允许端,为高电平时,锁存输入的BCD码。BI:灭灯输入端,为低电平时各段全灭。RBI:高位零消隐输入端。当其有效时,如果BCD码为0,则产生消隐,即高位零不显示。RBO:高位零消隐输出端,当高位零发生消隐时,产生此信号,作多位显示消隐之用。图10.28为利用MC14513的三位数字显示器,为静态工作方式,对高位零进行自动消隐输入RBI接高电平,让其有效,并将百位的消隐输出RBO接至十位的消隐输入端,这样当百位为零时,产生消隐,零不被显示,同时百位的消隐输出RBO=1,进而十位的消隐输入端RBI=1,高电平有效,对十位进行消隐,当十位为零时,此零也不被显
32、示,结果000只显示出个位的零,十,百,位的零不被显示。如果数字是101则三位照常显示,如果数字是090,则只显示90,百位零消隐。此三位静态显示器能显示0999之间的任何整数。编程比较简单,其中P1.0P1.3输出显示数字的BCD码,P1.4P1.6产生BCD码输入锁存信号,当BCD码被锁存后,经7段译码,相应位产生出应有的显示。下面的程序将使显示器显示出数字123。,图10.28 CD4513驱动三位LED静态显示电路,DISP_123:MOV A,#01H;数1送A MOV P1,A;写入P1口 SETB P1.4;锁存入IC1中,百位显示1 MOV A,#02H;数2送A MOV P1
33、,A;写入P1口 SETB P1.5;锁存入IC2中,十位显示2 MOV A,#03H;数3送A MOV P1,A;写入P1口 SETB P1.6;锁存入IC3,个位显示3 CLR P1 RET 除去并行LED接口电路,还有串行LED接口电路,MAX7219是一种高性能、低价格的多位串行LED显示驱动器,是串行输入、串行输出、共阴极的LED显示驱动器。一个芯片可以驱动8位7段LED显示器,所有的显示器只须一个外接电阻进行电流设定。MAX7219的引脚排列见图10.29。,图10.29 MAX7219引脚排列,MAX7219共有24个引脚,与单片机的接口电路如图10.30所示。,单片机的P1.2
34、向MAX7219输入时钟信号,P1.0、P1.1作为模拟串行口与MAX7219输出数据,一个MAX7219芯片可以驱动8位LED显示器,并且可以通过DOUP引脚级联多片MAX7219芯片,能够以极少的单片机I/O口驱动许多位LED显示器。,图10.30 单片机与MAX7219的接口电路,10.4 LCD液晶显示接口,液晶显示器具有工作电压低、功耗少、寿命长、可以显示各种复杂的文字和图形曲线,在各种单片机应用系统中有广泛的使用。液晶显示器的上、下玻璃电极之间封入向列型液晶材料,液晶分子平行排列,上、下扭曲90,外部入射光线通过上偏振片后形成偏振光,该偏振光通过平行排列的液晶材料后被旋转90,再通
35、过与上偏振片垂直的下偏振片,被反射板反射回来,呈透明状态;当上、下电极加上一定的电压后,电极部分的液晶分子垂直排列,失去旋光性,从上偏振片入射的偏振光不被旋转,光无法通过下偏振片返回,因而呈黑色。根据需要,将电极做成各种文字、数字、图形。就可以获得各种状态显示。,液晶显示器的驱动方式由电极引线的选择方式确定。因此,在选择好液晶显示器后,用户无法改变驱动方式。液晶显示器的驱动方式一般有静态驱动和时分割驱动两种。在静态显示方式中,某个液晶显示字段上两个电极的电压相位相同时,两电极的相对电压为零,该字段不显示;当此字段上两个电极的电压相位相反时,两电极的相对电压为两倍幅值方波电压,该字段呈黑色显示。
36、时分割驱动方式通常采用电压平均化法,其占空比有1/2,1/8,1/11,1/16,1/32,1/64等,偏比有1/2,1/3,1/4,1/5,1/7,1/9等。液晶显示器有字段型、字符型、点阵图形型,在使用时,有的液晶显示器内部有控制器,使用比较方便。字段型液晶显示器有六段、七段、八段等多种,七段是常用的一种。字符型液晶显示器有58、511点阵,单片机与字符型LCD显示器件的连接有直接访问和间接访问。点阵图形型液晶显示器内部都有控制器,各种类型的点阵图形液晶显示器的控制器使用要求不同,指令各异,但基本控制方式相同,一般点阵图形型液晶显示器都有一个对外的接口,了解了接口引脚的定义和使用条件,可以
37、应用单片机的数据总线或P1口对点阵图形型液晶显示器件进行控制。,10.4.1 字段型LCD及其应用,字段型LCD以七段显示为常见,用于显示09十个数字及少量字符,在单片机应用中需要专用的液晶显示译码驱动器才能工作。常用的字段型液晶显示驱动器有CD4543、ICL71O6、ICL7116、ICL7126、ICL7136和ICM7211、ICM7211A、ICM7211M、ICM7211AMD等。液晶显示部分 字段型显示器采用通用的三位半字段式芯片,它的具体尺寸和显示信息见图10.31所示。,图10.31 字段型液晶显示器尺寸图,字段型液晶显示器的显示字段分布见表10.8。,该液晶显示器共40个引
38、脚,有三位半数字可以显示,可以显示000到1999的数字,有十、一号显示,有三个可以选择的小数点位置,通过程序来决定小数点的位置表示数的大小,还有LO BAT字符和时钟符号”:”,它的显示有动态和静态二种方式。,CD4543是液晶显示器的驱动接口电路,具有BCD七段锁存、译码、驱动的功能。CD4543电路的引脚排列和真值表如图10.32。,图10.32 CD4543电路引脚、真值表,当CD4543的锁存端LD=1时,锁存器的输出数据ag随着输入端的输入值DA的变化而变化,当LD=0时,锁存器保存最后变化的值,并不再接受新的数据。BI端为显示开关,在BI=1时,不显示。PH端为外部振荡电路脉冲信
39、号输入端,振荡频率在322O0Hz。CD4543适用于位数少的液晶显示器件,图10.33是三位液晶显示驱动电路。,图10.33 CD4543三位液晶显示驱动电路,在图10.33中,单片机AT89系列的AT8951/AT8952,也可以是MCS-51系列的8031/8032。由单片机的P1口控制,P1.0P1.3向CD4543输入显示的数据,P1.4P1.6用来控制三位CD4543的锁存信号端LD,决定液晶显示字符的锁存与不锁存。由于在静态液晶显示过程中,液晶显示器件上要加脉冲电信号,在本例中采用单片机CPU的ALE引脚产生的时钟六分频信号通过外电路分频器得到脉冲信号加到CD4543芯片的PH端
40、和液晶显示器件的BP端。也可以采用外振荡频率电路来产上脉冲电信号。它的软件编写是简单的,只需对P1口进行写入操作和对某位的置位、清零操作就实现了显示的功能。,图10.24是用AT89C52单片机的输入输出口直接驱动液晶显示器的电路。,图10.34 单片机直接驱动液晶显示器,对于图10.34,在编程序时要建立显示缓冲区和显示驱动区,可以把DIS1、DIS2、DIS3内存单元设置为显示缓冲区,再把DRI1、DRI2、DRI3内存单元设置为显示驱动区,用来实现驱动变化和输出。P1、P2、P3为驱动的输入端,它们的对应关系如10.9表。,编写程序时还要建立显示字形数据库供显示时调用。设定显示状态为1,
41、不显示状态为O,字形数据库在程序的LCDTAB表中。程序中使用定时器来产生交流的驱动波形,在显示驱动区内将数据取反后再送入驱动输出。在显示缓冲区内修改显示数据并使BP置0表示有数据输入,在显示驱动程序中先判别驱动区BP位是否为1,若为1,则再判别显示区BP位是否为0,若为0,表示显示区的数据为新的数据,将显示缓冲区内的显示数据写入显示驱动区内,再输出驱动输出端,否则驱动区单元内容取反输出。程序中采用定时器0为驱动时钟,中断程序为驱动子程序。实现中断方式驱动液晶显示器,要进行初始化设置,要对显示缓冲区、显示驱动区、驱动输出进行初始化。其参考程序为:,CLR A;初始化,A清零 MOV P1,A;
42、驱动输出清零 MOV P2,A MOV P3,A MOV DRI1,A;驱动区清零 MOV DRI2,A MOV DRI3,A MOV DIS1,A;显示缓冲区清零 MOV DIS2,A MOV DIS3,#80H;BP=1 MOV TMOD,#31H;设定时器0为定时方式 MOV TH0,#0D8H;设置时间常数 MOV TL0,#0EFH;设置扫描频率为5OHz MOV IE,#82H;开中断 SETB TR0;启动定时器O工作,三位液晶显示值修改参考程序如下:LCD1:MOV DPTR,#LCDTAB;输入字形库首地址 MOVC A,A+DPTR;取字形数据 MOV B,A;A B MO
43、V A,DIS1;读显示单元1 ANL A,#80H;取出4ab位 ORL A,B;与新数据或 MOV DIS1,A;写显示单元1 MOV A,DIS3;读显示区BP位 CLR ACC.7;BP=O MOV DIS3,A;修改BP值 RET,LCD2 MOV DPTR,#LCDTAB;输入字形库首地址 MOVC A,A+DPTR;取字形数据 MOV B,A;A B MOV A,DIS2;读显示单元2 ANL A,#80H;取出4g位 ORL A,B;与新数据或 MOV DIS2,A;写显示单元2 MOV A,DIS3;读显示区BP位 CLR ACC.7;BP=O MOV DIS3,A;修改BP
44、值 RET,LCD3:MOV DPTR,#LCDTAB;输入字形库首地址 MOVC A,A+DPTR;取字形数据,字形最高位为0,BP=O写入显示单元3 MOV DIS3,A;修改BP值 RET它的第四位是显示1和,由A的内容决定:ACC.7=1,显示1;ACC.7=0,显示一ACC.6=1,为显示状态;ACC.6=0,为不显示状态ACC.0=1,为一状态显示;ACC.0=0,为一状态不显示,10.4.2 图形式液晶显示驱动器,需要进行图形显示的场合,可以使用图形液晶驱动控制器组成的液晶显示驱动和控制系统,成本低,功耗低,集成度高。下面介绍几种点阵图形式液晶显示驱动器。,1.YEJHD1286
45、4C系列液晶驱动器 YEJHD12864为128 x 64点,它的电参数如表10.10所示。,驱动器接口引脚定义见表10.11。,单片机与YEJHD12864C液晶驱动器的应用电路见图10.35,*对于LCD负压和背光部分因不同模组而略有不同,不同模组连接顺序可能有变化 图10.35 单片机与YEJHD12864C的应用电路,2.LMB-018图形式液晶驱动器 LMB-018的占空比及偏压有1/64、1/6两种,点阵数为12864(点)点尺寸为0.480.48(mm),点间为0.520.52(mm)。它的引脚定义见表10.12。,单片机与LMB-018图形式液晶驱动器的连接见图10.36所示。
46、,图10.36 单片机与LMB-018连接的电路图,3.MGLS240128图形式液晶驱动器 MGLS240128是是内置T6963C控制器的液晶驱动器,点阵数为240128,并带有背光功能。点尺寸为0.40.4mm,视屏尺寸为11464mm,5V工作电压。它的引脚定义见表10.13。,MGLS240128液晶驱动器与MCS-51单片机的连接有直接控制和间接控制二种方式。直接控制方式见图10.37所示。,图10.37 8031与MGLS240128的直接访问接口,在直接访问接口方式中,单片机把MGLS240128作为存储器,通过数据总线、地址总线、控制总线对MGLS240128传送数据,P0口
47、向驱动器传送显示的数据,单片机和驱动器的读写线相连,片选及地址信号由P2口提供。图10.38是单片机与MGLS240128的间接访问电路。,图10.38 8031与MGLS240128的间接访问接口,在间接访问接口形式中,利用单片机I/O口的P1口向驱动器传送数据,P3口进行读写和片选控制,在这种访问形式中,不占用单片机的存储器空间,也不受时序的影响,完全可以用程序来决定显示的过程。由于单片机应用系统对显示的要求越来越高,图形式液晶显示器也得到了越来越多的应用,图形式液晶显示器的品种也越来越多,设计人员在设计中也有更多的选择余地.,思考题与习题,1.消除键盘抖动的硬件、软件方法各有什么特点?2
48、.见图10.14,共有K1-K4四个键,如果K1-K4分别用于输入数字1-4,在不改变电路设计的基础上,要增加输A、B、C三个字母的功能,叙述你的设计思路并用框图予以表达。3.设计一个55的矩阵键盘并叙述其工作原理。4.设计一个二位BCD码拨盘输入电路,通过P0口输入,编写数据读入的程序。5.共阴极LED数码管和共阳极LED数码管在应用中有何区别?选择的原则是什么?6.应用74LS164集成电路,设计三位LED数码管的静态显示电路,编写显示程序段。7.叙述LED发光数码管与LCD液晶显示器的工作原理和优缺点。8.用CD4543静态液晶驱动器设计一个四位显示电路,分析工作原理,写出相应的程序。9.叙连YEJHD12864C点阵图形型液晶显示器工作原理。,