《智能仪器设计基础》课件 张自嘉 第7-11章 人机交互接口电路设计- 智能仪器设计要求与实例_第1页
《智能仪器设计基础》课件 张自嘉 第7-11章 人机交互接口电路设计- 智能仪器设计要求与实例_第2页
《智能仪器设计基础》课件 张自嘉 第7-11章 人机交互接口电路设计- 智能仪器设计要求与实例_第3页
《智能仪器设计基础》课件 张自嘉 第7-11章 人机交互接口电路设计- 智能仪器设计要求与实例_第4页
《智能仪器设计基础》课件 张自嘉 第7-11章 人机交互接口电路设计- 智能仪器设计要求与实例_第5页
已阅读5页,还剩418页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第7章人机交互接口电路设计智能仪器设计基础1键盘输入·LED/LCD显示·触摸屏输入本章学习问题地图人机交互接口电路01按键识别按键类型、读取方式02键盘结构独立式、矩阵式、触摸按键.....03LED显示共阴/共阳、静态vs动态04LCD显示1602/12864/TFT_LCD05触摸屏原理电阻/电容/红外/声表面波06触摸控制器XPT2046/GT9147目录第7章人机交互接口电路设计

7.1键盘与接口 7.1.1按键及接口 7.1.2键盘 7.2LED显示器 7.2.1段码式LED显示器及接口7.2.2点阵式LED及接口 7.3LCD显示器 7.3.1LCD显示器工作原理 7.3.2笔段式LCD显示器接口 7.3.3点阵式LCD显示器接口 7.4触摸屏技术 7.5触摸屏控制器 7.5.1电阻触摸屏控制器 7.5.2电容触摸屏控制器

习题737.1键盘与接口4

键盘作为常见的输入接口,主要输入设备参数和控制指令。

按键分为独立式键盘和矩阵键盘。按照按键的机械锁定记忆功能可以分为自锁和非自锁两种,前者在按下去后会锁定按下的状态,再次按下之后才恢复,比如电源开关、开关机按键等;后者按下去松开后会自动弹回原来状态,实际上提供一个脉冲信号,比如数字按键。多样化的键盘7.1.1

按键及接口5

按键接口包括硬件和软件部分。硬件部分主要实现按键状态的高、低电平转化,软件部分实现按键状态读取和功能实现,对按键状态监测、识别、按键编码等过程称为识键,功能的实现即根据键的编码完成相应的键处理程序,称为键值分析。1.按键电路按键接口电路,将按键的断开和闭合,转化为高低电平,实现“0”和“1”的输入。一个按键表示一位二进制数。图7-1为典型的开关逻辑电路,(a)为上拉电阻电路,(b)为下拉电阻电路。7.1.1

按键及接口62.按键的识别与读取(1)按键消抖

一个完整的按键过程包括按下、保持和释放,软件必须能够识别按键的复位和按下状态,以及按下和释放的两个动作。根据人的动作与按键的机械结构,一次完整的按键时间一般大于100ms(10次/s),按键按下和释放时会发生抖动,如图7-2所示,抖动时间大约持续5~10ms。

通常有两种方法消抖:硬件和软件。硬件方法是利用RS触发器,实现按键消抖,这种方法能够输出较好的矩形波形,但按键较多时会增加硬件成本。软件方法是在检测到按下动作时,等待10~20ms,避开抖动过程,等待按键稳定后再次读取按键状态。软件方法实现简单,应用灵活,在智能仪器中普遍使用。7.1.1

按键及接口7(3)按键读取

按键有开、关状态之分,对应输出高低电平;同时按键也要按压和释放动作之分,对应的下降沿和上升沿。因此,按键可以根据状态和动作,来实现对应的按键功能。按键的软件读取有3种方法,分别是软件扫描、定时查询和中断扫描。(a)软件扫描方式。

假设按键接口电路电阻上拉,按键复位的默认状态为高电平。首先读取按键状态是否为0。若KEY_UP值为0,表示按键按下,否则继续读取按键状态。然后延迟10ms,再次读取按键值。若KEY_UP仍为0,说明按键确实被按下,且保持在闭合状态,是一次有效地按键动作,然后执行对应的按键功能程序;否则为无效的按键动作,继续读取按键状态。7.1.1

按键及接口8

软件查询或软件扫描方式,需要CPU一直读取按键状态,一方面占用了CPU资源,另一方面不能及时响应按键动作。比如CPU在执行别的一段程序时,按键发生动作,并且在CPU没有执行完这段程序时,按键释放掉,这样CPU就无法读取到按键动作。

(b)定时扫描方式。定时扫描方式是CPU每隔一定时间对键盘进行扫描一次,一般利用CPU内的定时器实现,按键状态读取程序在定时器的中断函数中。CPU在执行其他程序时,不会读取按键,只有在定时到后才跳入中断函数读取按键,并转入相应的处理程序。为了不漏掉按键,定时器的定时时间应与一次完整按键的时间相适应,定时时间小于一次按键时间并大于消抖时间。

(c)中断扫描方式。在正常情况下,CPU执行其它程序,只有当有键按下时,键盘电路才产生中断信号,使CPU发生中断,CPU在中断程序中对键盘进行扫描,识别按键并获取键码,转入相应的处理程序。7.1.1

按键及接口9

中断信号的产生可以是将矩阵式键盘的行线或列线相与后与单片机的外部中断引脚相连,目前多数单片机的GPIO都具有中断功能,也可以利用相应的GPIO中断,实现按键的中断扫描。

由于智能仪器或控制器在运行过程中,并不需要经常进行按键操作,软件扫描和定时扫描方式会占用较多CPU时间,而且是空扫描,中断扫描方式在无键按下时不进行扫描,并能对按键进行及时响应,提高CPU的效率,因此中断扫描是常用的方式。7.1.1

按键及接口10(3)按键连击的处理1)连击的消除。上述方法实际上是读取的按键动作和按下状态,由于按键按下状态可能维持较长时间,CPU读取的按键值时有可能发生误动作。若是在CPU执行完按键功能的程序后,主程序再返回到按键读取程序的过程中,按键没有放开,CPU还会跳入到按键读取的子程序,有可能会被误认为一次新的按键动作,称为连击。有效的解决办法是在按键读取基础上,添加按键释放动作的读取语句:“while(KEY_UP==0);”。这条语句若放置在按键功能程序执行前,则是按下后执行功能,执行完后等待按键松开,这样程序及时响应;若放在按键功能程序执行,则是等待松开按键后,执行按键功能程序。7.1.1

按键及接口11(4)长短键动作

在一些仪器设备中,有一些按键具有两种功能,短按是一种,长按则进入第二功能,这是按键的长短键功能。这种方式也常用在智能仪器中,将长短、按键分别赋予不同的功能,这样可以节约按键数目和控制面板尺寸。长短按键的处理方法是一旦按键按下,则键值KEY_UP=0,通过延时一定的时间后,进行计数,如用i进行计数,判断KEY_UP是否为0,如不为0则表示按键已释放。释放之后将计时值i与设定的TimeN比较。若i<TimeN,则是短按,否则是长按。7.1.2键盘12

键盘有多个按键组成,分为编码键盘和非编码键盘。编码键盘设有编码器,对每个按键设置一个键值,同时具有防抖和解决连击的功能,处理速度快,我们用的电脑键盘就是典型的编码键盘。非编码键盘分为独立式键盘和矩阵键盘。非编码键盘直接与单片机的IO连接,需要设计读取程序,对按键扫描读取,通过计算或查表方法获得键值。非编码键盘,适合小规模,成本较低,在智能仪器中应用普遍。1.独立式键盘

独立式键盘是将每个按键分别连接在一个单片机的IO口上,如图7-3所示。KEY0~KEY3分别于单片机的P1.0~P1.3口连接,每个按键有一个上拉电阻。当按键按下时,对应的引脚输入低电平。独立式键盘读取时,可以用软件扫描、定时扫描和中断扫描方式。独立式键盘仅适用于按键较少情况,按键较多时会占用较多IO口引脚,会增加单片机的硬件成本。7.1.2键盘13

以软件扫描方式为例,首先读取P1.0的值,判断是否按下,若是按下则执行对应的功能。接着依次读取P1.1~P1.3的值,如果有按键按下,分别执行对应程序。多个按键同时按下时,上述步骤可能会产生丢键的情况。比如在同时按下四个按键时,若KEY0~KEY2对应功能程序执行的时间较长,执行完后可能KEY3已经放开,这样KEY3的操作就会丢掉。为此,在功能不冲突情况下,可以先读P1端口的值作为键值,然后根据键值判断哪些按键按下,统一执行相应程序。

在用中断扫描方法时,有两种方案。若单片机的IO引脚具有中断功能,则可以分别设置中断,甚至区分中断优先级别。若中断功能的引脚较少时,可将所有IO引脚连连接与门。有按键按下,则与门输入端必然有低电平,输出低电平,用于触发中断。7.1.2键盘14

由于独立式键盘占用的IO资源较多,在单片机的IO引脚紧张的情况下,还有一种单线的解决办法。如图所示,在分压串联电阻上设置开关按键,闭合的按键不同,分压大小不同,最后由单片机的一个ADC通道引入到模数转换模块,根据ADC的电压值区分按键。当没有按键按下时,ADC引脚有上拉电阻R0,为高电平。当某一个按键KEYN按下时,ADC测量的电压为VADC=VCC(1-R0/Rall),Rall为串联在电路中的总电阻。

这种方式仅用了单片机的一个ADC通道,不必占用太多IO引脚。但是必须注意,相对于IO引脚,单片机的ADC模块功耗要值得考虑。7.1.2键盘152.矩阵键盘

图7-5为4×4矩阵键盘,4行线为D0~D3,4列线为D4~D7。在行列交叉点上有开关按键,编号为0~15开关。列线连接上拉电阻,无按键按下时为高电平;若有按键按下时,列线与按键对应行线连接。比如按键6按下时,D1和D6连在一起。矩阵按键的读取方法有扫描法和线反转法,以下分别介绍基本原理。7.1.2键盘16(1)扫描法:(a)先判断有无按键按下。单片机给行线D3~D0输出低电平0000B,读取列线D7~D4的值。若D7~D4为1111B,则没有键按下,否则表示有按键按下。(b)如有键按下,消抖延时10ms,再次重复(a)。(c)若有键按下,逐行扫描判断哪个按键。先让第一行线为低电平D3~D0=1110B,读取列线D7~D4的值。若D7~D4还是高电平1111B,说明该行没有按下,若列线有0值出现,说明该列对应的按键按下。比如“2”键按下,扫描到第一行时,D7~D4=1011B。依次扫描到最后一行,读取列线值,可以得到其它按键的状态,这个方法也可读取多个按键同时按下的情况。7.1.2键盘17(2)线反转法

线反转法矩阵键盘电路如图7-6所示。(a)单片机给行线D3~D0输出低电平0000B,读取列线D7~D4的值。按下的按键对应的列线输出必然为低电平,可以确定按键所在的列。(b)列和行输入、输出反转,单片机给列线D7~D4输出低电平0000B,读取行线D3~D0的值。按下的按键所在的行线必然为0。只需要两步就可也确定按键所在的行和列,从而确定具体的按键。7.1.2键盘183.编码式键盘

编码式键盘通过硬件电路完成按键的状态监测、识别、按键编码以及产生中断信号等,CPU只需根据中断信号对按键的编码进行读取即可,节省了CPU对键盘的扫描和编码时间等。编码式键盘通常都需要相应的专用的键盘识别芯片,有些还可以带有显示控制等,如ZLG7290、CH452A等。以下分别介绍一种利用优先编码器的编码式键盘。

7.1.2键盘193.编码式键盘

利用优先编码器可以实现一种简单的编码式键盘,这里利用8线-3线优先编码器实现,例如用sn74HC148可以构成一种编码式键盘,可以实现8个按键的编码。图7-7给出了利用优先编码器sn74HC148实现的简单编码式键盘。S0-S7分别产生编码111H-000H。该电路需要在中断程序中去抖动,无法处理同时有多个按键按下的情况。该电路也适用于3.3V的ARM微控制器。这种简单的编码式键盘,不适用按键较多的应用。7.1.2键盘204.电容触摸式键盘

电容式触摸键盘是近年来出现的一种键盘实现方式,通过检测按键电容的变化,检测是否有触摸操作,没有机械结构,轻触即可,不需要用力按压,具有较好的手感,一般是在PCB电路板上制做铜焊盘作为电容,面积为手指大小,表面涂覆绝缘材料或用绝缘板隔开。其原理如图7-8所示,通过R1C0构成的RC电路的充放电时间,检测电容大小的变化,手指相当于一个电容,其大小为Cp,当手指触摸焊盘P时,原有的电容C0变为C0+Cp,充电时间变长,由此可以检测是否有触摸。开关K1是充放电开关,一般可以通过MCU的IO控制。也可以将VCC改为交流输入,测量V1的幅值大小。7.1.2键盘21

电容触摸式键盘可以通过专用的芯片进行检测,专用的检测芯片有TTP224/226/229等,分别可以检测4、8、16个按键,可以通过并行或串行与CPU连接。这里以TTP226为例说明其应用。有8个输入引脚I7-I10分别与作为按键的金属片相连,内部集成有检测电容变化的电路,当手指触摸时,检测到电容变化,内部集成有去抖动电路。对应有8个输出引脚Q7-Q0,当有触摸时,对应的引脚电平发生变化,表示有键按下。图7-9给出了TTP226触摸按键的主要电路连接。7.1.2键盘22

5.键值分析(键处理)

键值分析程序对键盘的操作做出识别并调用相应的功能程序模块,完成预定的任务。智能仪器与控制器中,按键可以有单义键和多义键。单义键即一键一义,CPU只需根据键码执行相应的程序,主要适用于功能比较简单的仪器系统,多义键即一键具有两个或两个以上的含义,需做键语分析,按照规定的键语语法,把由键序组合成的输入序列的含义译出后执行相应的键盘处理程序。7.2LED显示器23

对简单的信息可以用独立的指示灯显示或声音指示,比如电源指示、报警信息等,接口较为简单。当要显示测量结果、仪器状态和参数时,就需要显示器实现。常用的显示器有LED显示器、LCD显示器、TFT-LCD显示器。

LED(LightEmitingDecode:发光二极管)显示器是一种利用发光二极管构成的显示器,LED是一种半导体PN结,具有二极管的特性。当LED正向偏置时会发出明亮的光。LED的工作压降是固定的,在1.5V~3.0V范围不等,工作电流几到十几mA,电流越大,亮度越高。LED显示器具有工作电压低,体积小,寿命长,响应速度快的优点。7.2LED显示器24

LCD(LiquidCrystalDisplay:液晶显示屏)是液晶材料制成的显示器,利用液晶分子的可极化和旋光性工作。不加电压时,LCD的液晶材料是透明的,不显示数字或图案。当施加电压后,由透明电极构成的数字或图案不再透明,就显示出来。LCD不会发光,因此黑暗环境无法看到,需要有背光照明,LCD是电压显示器件,具有功耗低的优势。

TFT-LCD(Thinfilmtransistorliquidcrystaldisplay:薄膜晶体管液晶显示器)是近年来广泛应用的一种主动式LCD显示器,可以显示更加丰富的色彩和画面,在智能仪器与控制器的设计中也得到广泛应用。

7.2.1段码式LED显示器及接口25

LED显示器有有段码式数码管显示器和点阵式显示器2种。本小节介绍段码式LED显示器接口,下一小节介绍点阵式LED显示接口。

在数码管中,将多个LED按照一定字符图像排列,封装成一个显示单元。数码管中每一个LED称为一段,常见的有“日”字型的7段数码管(加上小数点,也称为8段数码管)、方框内“米”字型的16段数码管。按照LED的连接方式,可以分为共阳极和共阴极两种方式,如图7-10所示。共阳极数码管的正极连在一起,形成公共端,共阴极数码管则负极连在一起。若点亮共阴极数码管的某一段,需要给高电平;反之,若点亮共阴极数码管,则要给低电平。7.2.1段码式LED显示器及接口26

数码管常显示的字型为0~9、A~F,共16个,按照顺序g~a的段码如下表所示。若共阴极数码管显示“5”,则段码为6DH,即01101101B,a、c、d、f、g段LED亮。每个字符对应的共阴极和共阳极段码之和为FFH。在程序中通常将这些段码预先保存数组中,显示的字符和数组下标对应。7.2.1段码式LED显示器及接口27LED数码管的显示,可以通过静态方式显示,也可以通过动态方式显示。2种显示方式的电路不同,控制方式也不同。(1)静态方式显示静态方式显示,需要每位数码管都要有各自的驱动电路,一般用带有锁存器的元件将显示信息锁存,然后显示在数码管上。静态方式显示在每次显示输出后,需要够保持显示不变,仅在待显示数码需要改变时,才更新显示锁存器中的内容。在显示某一字符时,相应段的LED始终是导通或截止,所显示段连续发光。静态显示的优点是亮度高,控制程序简单,显示稳定可靠,没有闪烁感。不足在于当显示的位数较多时,占用的I/O口较多,需要的驱动器较多,功耗比较大。7.2.1段码式LED显示器及接口28

如图7-11是一种静态显示电路,用89C51单片机控制2位8段数码管显示,单片机的数据总线P0口,与2个8位D型锁存器74HC573的D输入端相连,(省略了单片机及上拉电阻电路)。LE为锁存器的时钟信号,高电平期间,内部的D触发器在跟随状态,输出Q的值与输入D保持一致。LE低电平时,D触发器保持状态,D怎么变化都不会影响输出。因此给LE下降沿,可以把输入数据锁存在寄存器内。两个锁存信号LE分别与P1.0和P1.1连接,用于控制数据的锁存。7.2.1段码式LED显示器及接口29

开始时,两个LE为低电平,锁存器数据保存不变。在更新数码管时,单片机先将数码管1的段码输出到总线上,然后拉高U1的LE(P1.0=1),等待输出数据稳定后,拉低LE(P1.0=0),锁存数码管1的数据,之后数码管1显示保持。这个过程中锁存器U2在保持状态(P1.1=0),输入信号变化不会影响输出,数码管2保持不变。同样的方法更新数码管2的数据。这样我们用单片机的P0和P2口,至少可以控制8个数码管,大大节约了IO引脚资源。数码管静态显示方法,显示的数据可以保存在锁存器中,不在占用CPU。但当数码管较多时,硬件开销成本增加。7.2.1段码式LED显示器及接口30

开始时,两个LE为低电平,锁存器数据保存不变。在更新数码管时,单片机先将数码管1的段码输出到总线上,然后拉高U1的LE(P1.0=1),等待输出数据稳定后,拉低LE(P1.0=0),锁存数码管1的数据,之后数码管1显示保持。这个过程中锁存器U2在保持状态(P1.1=0),输入信号变化不会影响输出,数码管2保持不变。同样的方法更新数码管2的数据。这样我们用单片机的P0和P2口,至少可以控制8个数码管,大大节约了IO引脚资源。数码管静态显示方法,显示的数据可以保存在锁存器中,不在占用CPU。但当数码管较多时,硬件开销成本增加。7.2.1段码式LED显示器及接口31(2)动态方式显示动态显示是利用人眼的视觉暂留现象和LED的余辉效应,每次使一位数码管显示一段时间,多位数码管轮流显示,一般每秒钟显示24次以上,人眼看到的就是连续的显示,次数少时会有闪烁现象。

在电路上,所有数码管的相同笔段(a、b、…、g)并联在一起,位线(com)作为数码管的选通控制。每次选通一个数码管,将显示数据从笔段线传送给数码管,延时1ms~5ms后关掉。如此扫描所有数码管后,继续从头开始,往复循环。尽管每个数码管只显示1ms~5ms,但观察到的整体效果是所有数码管都在显示。7.2.1段码式LED显示器及接口32

多位数码管显示时,利用动态显示可以节省CPU的IO口。多位数码管的动态显示,可以采用多位合1数码管,例如5合1、4合1、3合1数码管等,多合1数码管将多位数码管封装在一个器件内,内部段线均连在一起,外部只有一组段线引脚和每一位的com引脚,com引脚做为位选择w,如图7-12所示,这种数码管简化了外部电路设计,目前有5、4、3、2位的多位合1数码管可选用,这种数码管只能用于动态显示。7.2.1段码式LED显示器及接口33

图7-13为共阴极数码管动态显示的接口电路,为了简化,图中省去了51单片机P0口的上拉电阻和单片机的其它电路。数码管为5合1数码管,内部a、b、c、d、e、f、g、dp笔段都已并联在一起,只引出一组笔段线。用2个锁存器74HC573分别控制位选择wi(i=1-5)和笔段线。P0口将段码送到数据总线,通过P1.1将显示码锁存到U2中,然后再将位选择数据从P0口送出,需要显示的一位数码管的wi为低,其它为高,通过P1.0将位选择锁存到U1中,对应的数码管显示,保持1ms~5ms后,将该位的位选择拉高,关掉显示。然后接着下一位显示,循环不断,数据就可以连续显示在数码管上。7.2.1段码式LED显示器及接口34

图7-13为共阴极数码管动态显示的接口电路7.2.1段码式LED显示器及接口35

对动态显示电路设计,限流电阻需要根据显示器特点进行确定,一般为几百Ω,对高亮显示器,电阻可以大一些。由于上述电路中两个锁存器内部输出均有限流电阻,另外LED数码管有一定压降,因此电阻可以小一些,不加限流电阻也可以,亮度会大一些。

数码管的大小有0.36、0.56、0.8英寸等,体积大的,需要的电流会大一些。

LED显示接口往往会占用较多CPU的IO口和时间,利用一些可编程的LED接口芯片,可以简化电路设计、减轻CPU负担。MAX7219是一种比较有代表性的LED驱动芯片,MAX7219可以驱动8个8段共阴极数码管,能够自动动态扫描显示,

如图7-14所示。通过编程可以控制显示位数,通过SPI串行接口与微控制器连接,兼容3.3V和5V微控制器。可以直接输入段码(字型码)显示,也可以输入BCD码进行译码后显示。电阻R1可以调节数码管的亮度。7.2.1段码式LED显示器及接口36

MAX7291的LED接口电路7.2.1段码式LED显示器及接口37

MAX7291的LED接口电路在软件上,MAX7291内部有8个字节的RAM,可以保存显示的数据,还有5个控制寄存器用于控制是否译码、亮度、扫描位数等,数据是以2个字节为单位进行传输,2个字节中包含要操作的寄存器地址和对应的数据。类似的芯片还有CH423、CH422等。7.2.1段码式LED显示器及接口38

(3)

按键与显示一体式接口电路

无论是动态显示还是静态显示,都会占用较多的MCU的IO端口,也会占用扫描时间。近年来有一些专用芯片,可同时进行键盘扫描及数码管的显示,如ZLG7290、CH452可以驱动8位共阴数码管或64个独立LED、64个独立按键。TM1650可以驱动4位数码管、7×4的矩阵键盘。其他还有CH455、TM3130、WT0033、MM74C922等芯片。7.2.1段码式LED显示器及接口39

CH452A是数码管驱动与按键扫描一体的集成芯片,可以驱动8个数码管,能够检测8×8个按键,通过串行接口与单片机连接,可以3-5V电压工作,简化了按键和数码管驱动电路的设计,如图7-15给出了参考电路设计,详细电路和软件设计,可查阅相应的数据手册。7.2.2点阵式LED及接口40

数码管只能显示简单的数字和符号,无法显示更复杂的汉字和图像,LED点阵可以显示更丰富的内容。LED点阵显示器是由LED排成的矩阵,LED位于行和列的交叉点上。常用的有4×4、4×8、5×7、8×8、16×16、40×40等多种点阵,还可以通过扩展形成更大尺寸显示屏。点阵有单色、双色和彩色之分,可以显示色彩丰富的图案,甚至是动画效果。图7-16为8×8的单色点阵,在交叉点上,LED正极接行线,负极接列线,图中只画出了部分LED。点阵的引脚有8根行线和8根列线。7.2.2点阵式LED及接口41

点阵常用动态扫描的方法显示。电路上需要能够进行、列分开控制,每次显示一行或一列。例如对8×8点阵,可以用2个8位锁存器分别控制行和列,也可以用MAX7291进行控制,电路和控制比较简化,如图7-17所示,MAX7291可以多片串接控制更大的点阵.在软件上,需要对点阵逐行扫描,行线高电平选中整行,列线为低电平,交叉点的LED点亮,是逐行显示。在图7-17中,8×8点阵显示字符“A”。MAX7291的位线控制行,行线输出01H,选中第一行,列线出FFH,第一行LED全灭。然后行线输出02H,选中第二行,列线输出E7H,第二行中间两个LED点亮。8根行线依次为1,完成逐行扫描,显示字型“A”。42本小节结束!智能仪器设计基础43第7章人机交互接口电路设计键盘输入·LED/LCD显示·触摸屏输出目录第7章人机交互接口电路设计

7.1键盘与接口 7.1.1按键及接口 7.1.2键盘 7.2LED显示器 7.2.1段码式LED显示器及接口7.2.2点阵式LED及接口

7.3LCD显示器 7.3.1LCD显示器工作原理 7.3.2笔段式LCD显示器接口 7.3.3点阵式LCD显示器接口 7.4触摸屏技术 7.5触摸屏控制器 7.5.1电阻触摸屏控制器 7.5.2电容触摸屏控制器 习题7447.3LCD显示器45

液晶显示器(LiquidCrystalDisplay,LCD)是一种用液晶材料制成的显示器。液晶是一类介于固态和液态间的有机化合物,在电场作用下,液晶分子会发生排列上的变化,从而影响入射光束透过液晶产生强度上的变化,所以可以通过电场控制透光强度的明暗改变,达到信息显示的目的。

液晶显示器是电压控制型显示器,具有体积小、重量轻、功耗低的特点。

从原理上分类,液晶显示器分为TN(向列型液晶:TwistNematic)STN(SuperTwistedNematic)TFT(ThinFilmTransistor)三种。7.3LCD显示器46

TN型LCD的液晶分子将入射光旋转90度,STN型超扭转式向列液晶可以将入射光旋转180~270度。它们在可视角、彩色、对比度及动画显示品质上有较大区别。TN型是最基本的一种类型,可视角较小。常见的段码型、字符点阵型是TN型,颜色一般为黑白型。

TFT型是通过TFT控制液晶的电场,从而控制光的透过与关闭,每个像素可以比较小,分辨率可以比较高,可以显示复杂的图形,颜色也比较鲜艳,广泛地应用于手机、电视、电脑等,也越来越多地应用于智能仪器与控制器的显示与控制终端。7.3LCD显示器47

还有一种OLED屏,OLED为OrganicLightEmittingDiode的简写,即有机发光二极管显示屏,具有轻薄,厚度小、响应快的特点,工艺简单,成本低,不足在于寿命比LCD短,不易实现大尺寸量产等,在一些小型的显示面板上有应用。

从显示方式上分类,液晶显示器主要有笔段式、字符点阵式和图形点阵式3种形式。笔段式主要用来显示数字、英文字母或某些字符,字符点阵式主要用来显示字符、数字和符号等,图形点阵式可以显示图形和汉字等复杂信息。

无论哪种显示器,都会通过芯片进行显示控制,从外部看,与微控制器的接口基本类似,包括一些数据端口、控制端口等。7.3.1

LCD显示器工作原理48

LCD利用液晶分子的旋光性和可极化性原理工作,结构上一般包括相互垂直的两个透明偏振板、液晶层、上下电极(透明)等多层结构,电极形状为透明的ITO(氧化铟锡)导电涂层构成的显示图形。透明液晶层位于上下二块偏振板之间。未加电压时,液晶材料存在一种从下到上的旋转排列(这种旋转是由上下二层定向膜固定形成的,TN型旋转90度,STN型旋转超过180度),光线透过下偏转板时变为偏振光,穿过液晶材料后,偏振方向旋转90度,能够从上偏振板穿过,因此整个多层结构是透明的。在液晶层的上下电极施加电压后,在电场作用下,液晶材料因极化而使排列方向发生了变化,无法再使偏振光旋转90度,光线无法通过上偏振板,于是加电场的区域,就不再透明,显示出暗色字符或图案,如图7-18所示。7.3.1

LCD显示器工作原理49

TN-LCD的下偏振板的底面有一个反射层,反射从上面照射下来的散射光,在晚上或没有照明的条件下,无法显示字符,一般会在侧面加背光,可以在照明不足时显示出字符或图案。TN-LCD可以通过电场大小控制液晶的旋转角度,从而使字符有一定灰度,但一般字符型显示,只显示字符,并不需要显示灰度,因此只有显示与不显示二种状态。STN-LCD的液晶材料旋转角度较大,有一些不同的特点,如有较大的视角等。7.3.1

LCD显示器工作原理50

TFT-LCD是点阵式显示器,利用面积极小的薄膜晶体管(TFT)作为电极开关,控制各个像素点电极电压,从而控制液晶材料的偏转,使透过光的强度发生变化,显示具有一定的灰度。对彩色显示器,每个像素点有靠得非常近的三个电极和TFT,在下偏振板的下面不是反射层,而是一个白色面光源。在每个上电极的外面是一个滤色膜,对一个像素点的三个电极透过的光分别进行过滤,显示出三基色红、绿、蓝,从而可以显示彩色图像,TFT-LCD的像素可以做得很小,分辨率可以做得比较高。由于底部面光源的存在,因此没有照明条件下,也可以显示图像。

LCD是电压驱动,电极之间没有电流通过,功耗很低;但液晶本身不发光,往往需要提供背光光源。LCD显示器主要有笔段式、字符点阵式和图形点阵式三种类型。7.3.1

LCD显示器工作原理51

(2)TN-LCD的显示驱动原理

LCD不能通过直流驱动显示,必须是交流驱动。LCD液晶屏的公共端和驱动端都需要加方波信号,利用改变两者的相位来控制对应的像素是否显示,这与LED数码管存在本质区别。没有共阴或者共阳的说法。不能把公共端COM直接接地而通过控制驱动端接高电平来显示。长时间直流驱动会造成液晶屏的永久损坏。

图7-19为液晶驱动电路原理图和控制信号波形图,B为固定频率的方波,A为显示控制信号。LCD的公共电极COM接B,另一个控制电极接AB的异或信号。通过波形时序可以发现,A低电平时,LCD两个电极电压为0,不显示;A高电平时,对B来说异或门作为反相器,LCD两个电极形成交流电,为显示状态。52特点:功耗低,分类:笔段式和点阵式。点阵式分为字符式和图形式。1、笔段式:可以显示数字、部分英文字母

LCD显示器类型7.3.2

笔段式LCD显示器接口53

笔段式LCD的显示可以是动态显示,也可以是静态显示,静态显示需要对每个笔段都能够进行控制,与LED数码管不同,很少有单个字符的LCD或者每个笔段电极都引出的器件,因此几乎没有静态控制,主要是动态控制。

笔段式LCD显示器将若干段液晶显示单元形成要显示的图案,常见是“8”字型状的数码管。在一些仪器仪表面板上会有特定形状的显示图案,如电池电量、音量条等一些固定图案。7.3.2

笔段式LCD显示器接口54

由于需要交流驱动和动态显示,直接用单片机控制,软件比较复杂,因此常用一些集成的LCD驱动芯片实现显示控制。接口比较方便的LCD驱动芯片有HT1623等,可驱动8×48段LCD,有8个位选择引脚和48个段引脚,HT1623是一个内存映射式LCD控制器。内部静态RAM用于存储显示数据,其内容直接映射到LCD上,共有96个4位数据(96×4),由7位地址可以访问每一个4位RAM。2个相邻地址的RAM中的2×4位数据对应COM0-7。该控制芯片为串行接口,只需要4个引脚与微控制器相连,电路设计比较方便。支持蜂鸣器发声、看门狗定时器等。类似芯片还有HT1621(32×4,已停产),HT1625(64×8)等。

7.3.2

笔段式LCD显示器接口55

图7-20为HT1623与微控制器的接口电路,控制器通过串行接口,对内部RAM进行读写从而控制显示内部。CS为片选信号,低电平有效;RD为读信号,WR为写信号。DATA为数据线。RD下降沿时数据锁存到DATA引脚上,可在紧接着下一个上升沿读取到单片机中;WR上升沿DATA引脚的数据锁存到HT1623内。COM0~7为LCD公共端,可以认为是位线;SEG0~47为段线,R1用于调整显示电压。另外的时钟电路及蜂鸣器电路等均未画出。每个芯片可以控制8个、最多48个笔段构成的字符或图形。7.3.2

笔段式LCD显示器接口56

显示内存RAM的结构如图7-21所示。每个显示内存有一个6位地址,主机通过该地址,对内存进行读写。7.3.2

笔段式LCD显示器接口57

对HT1621的控制是通过其内部寄存器的读或写实现的,读、写操作是在CS有效时,由WR和RD上的时钟控制。任何操作都是首先由DATA引脚上给出类型码,然后给出寄存器地址和读写的数据。读模式是读出内部寄存器中的数据,写模式是将数据写入到内部寄存器,读-修改-写模式是将寄存器中的数据读出,然后写另一个数据到同一个寄存器。HT1621有27种命令用于控制显示器的开、关,看门狗的设置、声音的开关、内部时钟的开关等,每个命令为1个字节,命令是DATA上以100开始后的一个字节数据为命令。7.3.2

笔段式LCD显示器接口58HT1621操作时序7.3.3

点阵式LCD显示器接口591.点阵式LCD的特点与分类

点阵式LCD是目前应用最为广泛的LCD显示器,不仅可以显示字符、数字,还可以显示图形、曲线、汉字和图像等。TFT-LCD可以显示彩色图像或视频。

点阵式LCD需要进行行、列控制,需要动态显示。点阵式LCD由于点数比较多,控制比较复杂,因此很少由单片机直接进行点阵的显示控制,都是通过专用的控制芯片进行控制

将控制芯片、辅助电路及液晶屏等,制做成电路模块进行使用,称为液晶显示模块或LCM(LiquidCrystalModule)。LCM就是一种将液晶显示器、集成电路、连接件、背光源,结构件、PCB板等装配在一起构成的组件。

近年来由于手持设备的需求,LCD出现了一种COG液晶屏,特点是轻薄,美观,方便应用。7.3.3

点阵式LCD显示器接口60

点阵式LCD分字符式和图形式,字符式只能显示字符,如数字、英文字符、ASIC码等,字符式典型的代表是LCD1602,能够显示二行5×8的点阵字符。

图形式LCD一般按照列、行点的数量(或称为分辨率)来分类,如128×64点阵称为LCD12864,其分辨率为128×64,还有LCD19264等。对TFT型液晶屏一般按照屏的大小分类如2.2、2.4、3.2、5寸等。图形式LCD的原理也是行列扫描的方式,但由于点数比较多,因此控制比较复杂,通常都由专用的芯片控制。

虽然不同类型的点阵式LCD差别较大,但与微控制器的接口是类似的。点阵式LCD与微控制器的接口有并行接口和串行接口。字符式可以显示:数字、英文字母、简单汉字61点阵字符型

点阵字符式

:LCD1602

6263点阵图形式

,如LCD12864等7.3.3

字符点阵式LCD显示器接口642.点阵式LCD的并行接口以下以常用的LCD1602和LCD12864为例,说明点阵式LCD的并行接口电路。(1)LCD1602的并行接口LCD1602为字符式点阵LCD,虽然是点阵式,但其点阵是以5×8的小块分布的,共有二行,每行有16个小块,每一块可以显示一个字符。如图7-25为LCD1602模块的内部结构及引脚。7.3.3

点阵式LCD显示器接口65LCD1602引脚配置7.3.3

点阵式LCD显示器接口66LCD1602内部集成有字符发生存储器(CGROM)(字库),存储约160个不同的点阵字符图形,包括伯数字、大小写英文字母、常用符号等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把代码41H中的点阵字符图形显示出来,显示出字母“A”。LCD1602的每一个字符位置都有一个编号,第一行为0-0F,第2行为40-4F。在某一位置显示一个字符时,需要在指令中给出显示的位置和字符编码。LCD1602有11条指(表7-4)令,完成对指定位置字符的显示等功能。

7.3.3

点阵式LCD显示器接口67指令1:清显示,指令码01H,光标复位到地址00H位置。指令2:光标复位,光标返回到地址00H;指令3:光标和显示模式设置I/D:光标移动方向,高电平右移,低电平左移S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效;指令4:显示开关控制。D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示。C:控制光标的开与关,高电平表示有光标,低电平表示无光标B:控制光标是否闪烁,高电平闪烁,低电平不闪烁;指令5:光标或显示移位S/C:高电平时移动显示的文字,低电平时移动光标;指令6:功能设置命令DL:高电平时为4位总线,低电平时为8位总线N:低电平时为单行显示,高电平时双行显示,F:低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符;指令7:字符发生器RAM地址设置;指令8:DDRAM地址设置。指令9:读忙信号和光标地址BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。指令10:写数据;指令11:读数据

7.3.3

点阵式LCD显示器接口68LCD1602与89C52微控制器的接口电路,这里采用模拟总线的方式连接。总线的方式连接需要外加芯片进行信号转换。7.3.3

点阵式LCD显示器接口69(2)LCD12864的并行接口LCD12864液晶显示模块能显示中文汉字、数字、字符等,能显示16×16点阵的汉字数量为32个(4×8),即4行,每行8个汉字,能显字符个数为64个(4×16)。目前不少LCD12864采用COG封装,其驱动芯片被封装在了玻璃表面的胶粘层中。这里介绍一种利用ST7920作为控制器的LCD2864,这是一种非COG封装的液晶屏。该芯片带有字库,内置8192个中文汉字(16×16的点阵)、128个字符(8×16点阵)、以及64×256图形点阵的显示RAM(GDRAM)。可以串行和并行两种数据通信方式,由PSB引脚选择,如下表7-5所示。

7.3.3

点阵式LCD显示器接口70LCD12864提供了8位、4位并行接口及串行接口可选。图7-27为LCD12864的8位并行接口电路,PSB接高电平,VL通过一个电位器调节LCD对比度。51单片机的P0口连接并行数据引脚DB;P1.0连接RS,控制指令和数据;P1.1连接R/W,控制读写;P1.2链接EN,使能芯片。8位并行接口占用的单片机IO引脚较多,可以选用串行方式通信节约IO引脚,具体方法请读者查阅数据手册等相关资料。图7-20给出了LCD12864与微控制器的并行接口参考电路。

7.3.3

点阵式LCD显示器接口71(3)存储器空间LCD12864的工作原理先要分析存储器空间。LCD12864内常用ST7920作为控制驱动器,其存储器包括DDRAM、HCGROM、CGROM、CGRAM、GDRAM等。DDRAM是LCD的显示存储器,向该存储器中写入字模地址,就会在LCD屏幕上显示出来。DDRAM的地址空间和4行LCD显示屏对应关系如表7-6所示。每个地址两个字节,对应表中H和L,分别对应地址的高字节和低字节,需要分二次写入。其中储存的不是字模,而是字模的地址。汉字的字模储存在CGROM中,每个汉字字模都是16×16的点阵。这样80H~97H地址映射到LCD屏幕上,LCD128×64的点阵就可显示32个汉字(4×8)。GDRAM为图形显示存储器,用于绘图显示。与DDRAM不同,GDRAM写入的数据是字模本身,而非字模的地址。

7.3.3

点阵式LCD显示器接口72对字符显示,DDRAM显示的字符有三种选择,其字模地址分别来自下面三个存储器:(a)HCGROM的半宽字型:半宽字型的字模是16×8的点阵,在HCGROM中的地址是一个字节,范围02H~7FH,对应字型可查芯片手册,一般可显示的字符和ASCII一致。比如要显示“A”,则HCGROM的地址0041H(扩展2字节)写入DDRAM。(b)CGROM中文字型:存储了双字节的汉族字模地址,范围为A1A0H~F7FFH(GB2312码,简体字)或A140H~D75FH(BIG5码,繁体字)。比如要显示“气”字,查找其GB2312码为C6F8H,则表示CGROM的C6F8H的地址存储了“气”的字模,将C6F8H写入DDRAM即可显示。(c)CGRAM自定义字型:RAM的数据掉电不可保持,因此该存储器中不能永久保存字模地址。用户可以将自己需要的字型或图案存储在这个存储器中,但该存储器只有0000H、0002H、0004H、0006H四个字型存储空间,可存储四个16×16的点阵。

7.3.3

点阵式LCD显示器接口73(4)访问时序图7-28和图7-29分别为LCD12864的写、读时序。在写入的时序中,首先确定写入的是数据还是指令,RS拉低为指令,拉高为数据。然后R/W拉低,表示写入。接着能EN拉高,使能芯片,至少保持140ns。然后DB数据线上写入数据,等待一段稳定时间,确保数据有效写入。最后依次撤销EN、DB、R/W、RS等信号,完成写入过程。两次相邻的EN使能需要间隔1200ns以上。读的过程类似,不一样的地方是R/W保持高电平。

7.3.3

点阵式LCD显示器接口74(5)指令LCD12864有基本指令(RE=0)和扩展指令(RE=1)两个指令集。这里只给出基本指令如表7-7所示。

7.3.3

点阵式LCD显示器接口753.点阵式LCD的串行接口多数情况下,LCD显示的速度并不高,不少点阵式LCD具有串行接口。串行接口的点阵式LCD引脚少,可以方便与微控制器连接。串行接口LCD一般为SPI接口,也有I2C接口。SPI有4根线,加上复位信号只需要5个IO口即可。串行接口的LCD类型也较多,尺寸有1.4、2.2、2.4、4.0寸等,分辨率有128×64、320×240、480×320等。有些还带有字库、触摸屏等。以下以ILI9341为驱动器的TFT串行LCD为例说明接口方法,分辨率为320×240,大小有。2.2、2.4、3.2寸等,均为彩色TFT-LCD,不带触摸屏。图7-30给出了一种串行LCD的引脚与功能表。

7.3.3

点阵式LCD显示器接口76如图7-31和图7-32分别给出了串行LCD与89C52和STM32F103的接口。STM32F103具有SPI接口,PB15为SPI2-MOSI,PB13为SPI2-SCK,因此不必占用CPU的时间进行显示。如果没有SPI接口,可以用软件模拟SPI时序,但需要额外占用CPU时间。在设计时尽量使用SPI接口连接。

7.4触摸屏技术77触摸屏(TouchScreen)又称为“触控屏”、“触控面板(TouchPanel)”,是一种可接收手指、触笔等操作而感应信号的输入与显示一体式装置。当触摸屏幕上的图形按钮时,根据预先编写的程序,接收相应的输入信号或指令,完成输入或控制操作等。目前越来越多地应用于各种终端作为输入与显示设备,不少场合可以取代传统的机械式按键、按钮面板等。触摸屏具有界面直观、自然、美观、灵活、不占空间、轻便的特点,还可以手写文字输入等,是目前应用最为广泛的一种人机交互方式。触摸屏广泛应用于手机、平板电脑、服务终端、工业控制终端、医疗设备、仪器仪表等众多领域。触摸屏最早由美国的山姆·赫斯特(SamuelHurst)于1971年发明,是一种简单的电阻式触摸屏。早期主要用于军事设备以及工控计算机、POS机终端等。20世纪90年代末被用于早期的掌上电脑和手机,需要触摸笔,不够灵敏。2000年后,一些手机采用电阻触摸屏代替部分机械式按键,2007年前后出现了电容触摸屏,由于电容触摸屏的优点,应用越来越广泛,但在不少场合,电阻触摸屏也有很多应用。

7.4触摸屏技术78触摸屏由触摸传感器与控制器构成。触摸屏是附加在显示器上的一个感应与处理装置,接受触摸的前面板上有传感器,能够感应触摸点的触摸操作,将触摸点的位置信息转换为电阻、电容或电压的变化。触摸屏控制器将电阻、电容等变化信号,转换为电压信号,进一步转换为数字信号,通过计算得到触摸点的坐标值,并传送给主机,同时接收主机发来的命令,进行相应的处理。实质上触摸屏是一个带有位置检测传感器和微控制器的检测系统,微控制器是集成传感器检测、信号转换和CPU的专用芯片。根据触摸屏的传感器感应原理,可以分为4种类型,分别是电阻式、电容式、红外线式和表面声波式触摸屏,下面介绍它们的工作原理。

7.4触摸屏技术791.电阻式触摸屏电阻式触摸屏的触摸面板实质上是一个传感器,触摸不同位置引起电阻变化,再转化为电压信号,在X、Y二个方向分别进行测量,得到二个电压数值,通过计算转换为触摸位置的坐标值。在物理结构上,电阻式触摸屏是一块与显示器表面紧密配合的多层复合薄膜,它由聚乙烯(PET)制成的柔性顶层和玻璃制成的刚性底层组成。这两层相对面都涂有一种称为氧化铟锡(IndiumTinOxide:ITO,成份为In2O3

•SnO2)的透明的电阻性导电化合物,中间有一层具有很多细小绝缘隔点的隔离层,使两个导电层处于绝缘状态。如图7-33所示,当手指触摸屏幕时,两导电层在触点位置接触,通过检测接触点的阻性导电层的分压,可以计算出X、Y坐标。7.4触摸屏技术80图7-34为四线电阻屏工作原理。触摸在P点,使得上下电极接触导通。首先在顶层水平方向施加电压VIN。一般X+为5V,X-接地。P点与下电极短接,在竖直方向上Y+通过ADC测量电压VOUT,即为水平方向P点的分压。VOUT大小与X坐标成正比,可以得到X的坐标。同样在竖直方向施加电压,水平方向检测,如图7-24(b)所示,可以得到Y的坐标。这就是电阻屏的触摸坐标测量的基本工作原理。上述电阻式触摸屏共有4根引线,因此称为4线电阻触摸屏。4线电阻式触摸屏的缺点是耐用性欠佳,多次的触摸与按压,PET和ITO层会发生变形,导电的均匀性受到影响,造成坐标计算出现偏差,后来出现了一种改进的5线电阻触摸屏。5线电阻触摸屏的导电层也是二层ITO层,但上层(触摸层)ITO附着在透明基板下面,下层ITO层的4个角引出4个电极,连接测量的引出线,上层ITO层只作为导电层接电源电压,这样共有5根导线引出,1根接电源电压,另外4根,分别测量对角的2根线之间的电压,可以计算出触摸位置坐标。上层基板耐用性较强,并且只起导电作用,增加了触摸屏的使用寿命。

7.4触摸屏技术81早期得到应用的主要是电阻式触摸屏,灵敏度高,成本较低,应用广泛。但电阻触摸屏不支持多点触控和滑动操作,触摸时需要一定的压力,使用时间长后,表面磨损,或者上下两层失去弹性而造成接触不良,影响检测精度和使用寿命,电阻触摸屏使用时还经常需要校准操作。随着可多点触控的电容触摸屏的出现,电阻触摸屏的应用有被电容触摸屏取代的趋势,但还有不少场合应用电阻式触摸屏。电阻式触摸屏需要专用的控制器进行检测,主要有4线控制器:ADS7843、ADS7846、TSC2046、XPT2046、AK4182等,它们使用相互兼容,5线控制器:ADS7845等,其使用方法在下节课介绍。

7.4触摸屏技术822.电容式触摸屏电容触摸屏最早于2007年在手机上使用,相比于电阻触摸屏,电容触摸屏可以多点触控,更加方便与高效,因此应用越来越广泛。电容屏利用人体感应进行触点检测,分为表面电容式和投射电容式两种。(1)表面电容式触摸屏(SurfaceCapacitiveTouch)表面电容式触摸屏是一个多层复合结构,最上部为保护层,下面是透明的ITO导电层,第三层为玻璃基板,最内的第四层也是ITO导电层。最内导电层是屏蔽层,起到屏蔽内部电气信号的作用,外层的导电层为工作层,是整个触控屏的关键部分,四个角或四条边上有直接的引线,负责触控点位置的检测。当手指触摸在屏幕上时,由于人体的导电作用,手指和触摸屏表面形成一个耦合电容,由于采用的是高频电流,电容的阻抗较小,于是手指从接触点分流一部分电流。电流流过触摸屏四角上的电极,通过四个电极的电流,与手指到四角的距离成一定的比例关系,控制器将四个电极电流转化为电压,再通过控制器中的ADC转换为数字量,计算得到触摸点的位置坐标。表面电容式触摸屏相当于ITO层为一个极板,手指为另一个极板,构成电容器,结构简单,检测精度高,响应速度快,但无法实现多点触控。

7.4触摸屏技术83(2)投射式电容触摸屏(ProjectedCapacitiveTouch)投射电容式触摸屏是在两层绝缘的ITO导电玻璃涂层上蚀刻垂直交叉的阵列电极图案,如图7-35所示。在一个方向施加高频信号,另一个方向检测。手指没有触摸时,各交叉点检测的信号基本一致。当手指触摸时,就会引起交叉点电容的变化,经由A/D控制器转为数字信号,通过控制器计算处理取得(X,Y)坐标位置,进而达到定位的目地。

7.4触摸屏技术84根据扫描方式不同,可以分为自电容和互电容两种类型。(1)自电容触摸屏分别对X和Y方向扫描,每个电极本身与地之间构成了一个电容,通过检测每个电极自身电容的变化,确定触摸位置坐标。自电容触摸屏在多点触摸时,容易出现虚假的触摸点。(2)互电容触摸屏测量的是行列之间的互电容变化,确定触摸坐标,一个行线发送高频信号,在另一个方向测量。互电容触摸屏能够实现真实的多点检测,速度快,但功耗大,成本高。目前智能手机/平板电脑等触摸屏,都采用互电容测量。电容触摸屏的优点是手感好、无需校准、支持多点触摸、透光性好。缺点是成本较高、精度不很高、抗干扰能力差。另外电容触摸屏对工作环境要求较高,在潮湿、多尘、高低温环境条件下,更容易受到影响。电容触摸屏需要控制器进行驱动和控制,常见的控制器有GT811、FT5206、OTT2001A等。

7.4触摸屏技术853.红外线式触摸屏红外触摸屏是在显示器的前面安装一个电路板外框,电路板在屏幕四边安装红外发射管和红外接收管。图7-36为红外线式触摸屏的工作原理。左侧和底边为红外线发射管,右侧和顶边为红外线接收管。X和Y方向发射管和接收管一一对应。当按住触摸屏时,手指会挡住红外线,后面接收管的无法接收端光信号。根据右侧和顶边没有接收到信号的接收管传感器的位置,可以确定触摸点的坐标。7.4触摸屏技术86红外线式触摸屏的主要优点是价格低廉、安装方便,可以用在各档次的计算机上。它完全透光,不影响显示器的清晰度。而且由于没有电容的充放电过程,响应速度比电容式快。红外触摸屏可用手指、笔或任何可阻挡光线的物体来触摸。红外线触摸屏技术成熟,尤其是对于大尺寸触控一体机,都是选用的红外屏。红外线触摸屏由于发射、接收管排列有限,因此分辨率不高。由于依靠感应红外线工作,当外界光线发生变化,如阳光强弱或室内射灯的开、关均会影响其准确度。由于红外光直线传播,不适于非平面屏应用。7.4触摸屏技术874.表面声波式触摸屏表面声波是一种沿固体表面传播的声波,当物体受到冲击时,产生的声波一部分向物体的纵深方向传播,一部分沿物体表面传播,沿表面传播的声波称为表面声波或声表面波。表面声波容易受到物体表面状态的影响,表面声波触摸屏就是利用这种原理制成的。表面声波触摸屏安装在显示器屏幕的前玻璃屏上,玻璃屏的左上角和右下角各安装一个超声波发射器,右上角则安装两个超声波接收换能器,分别接受X方向和Y方向超声波。玻璃屏的四个周边则刻有呈45°角的反射条纹,如图7-37所示。7.4触摸屏技术88没有触摸时,发射的脉冲信号经过不同的条纹反射后,在接收换能器端接收到的连续的脉冲信号,单个脉冲信号得到达接收器的时间,就代表了X坐标信息。这些连续的脉冲信号叠加在一起,形成一个类似矩形的方波。手指触摸时,玻璃板上竖直向上的超声波脉冲会被吸收掉一部分,反应在接收波形上即某一时刻位置上会有一个衰减缺口。这个衰减缺口的到达时间,就代表了X坐标信息,通过控制器计算处理得到X的坐标。同样的方法,左上角Y轴的超声波发生器工作时,就可得到Y的坐标。表面声波触摸屏对原显示器的清晰度影响很小,对触摸的感知分辨率很高,而且经久耐用。声表面波触摸屏在面积较大时成本较低。超声波的传播对平面的平整度要求不高,可以应用于曲面屏。不足之处是手指和接触笔必须能够吸收声波,容易受到噪声干扰,要求屏幕表面洁净度较好,水渍、污渍都会影响使用效果。7.5触摸屏控制器89触摸屏由触摸传感器与控制器构成,本节介绍触摸屏控制器,主要是应用较为广泛的电阻触摸屏控制器和电容触摸屏控制器。早期的触摸屏以电阻触摸屏为主,其控制器是焊接在PCB板上,然后与触摸屏的导线相连,由于电容触摸屏的检测导线较多,为了轻便,多采用将芯片焊接在柔性电路板上,分辨率较高的电容触摸屏则采用COG封装,与显示器的玻璃粘合在一起,触摸屏控制器一般以串行接口方式与微控制器连接。7.5.1

电阻触摸屏控制器90触摸屏控制器有三个方面作用,一是给触摸传感器提供电压并进行切换,二是对采集到电压进行放大并进行模数转换,三是将转换的数字量传输给主控制器(MCU)。ADS7843是比较典型的一种触摸屏控制器,另外还有类似的ADS7846、TSC2046、XPT2046、AK4182等,以及5线电阻触摸屏控制器ADS7845等。7.5.1

电阻触摸屏控制器91引脚功能如下:1、10:+VCC,电源正极输入。AD7843的+VCC范围从2.2V到5.25V,这两个+VCC引脚应直接连接在一起。2:X+,X+位置输入,ADC输入通道1。3:Y+,Y+位置输入,ADC输入通道2。4:X−,X−位置输入,与X+配对应用。5:Y−,Y−位置输入,与Y+配对应用。6:GND,电源地。7:IN3,辅助输入1,ADC输入通道3。8:IN4,辅助输入2,ADC输入通道4。9:VREF,参考电压输入端,其范围是1.0V至+VCC。11:PENIRQ,触摸中断信号,当有触摸信号时产生低电平,用于主机产生中断处理触摸信号,CMOS逻辑开漏输出,需要10kΩ至100kΩ的外部上拉电阻。(1)ADS7843引脚与基本连接ADS7843是一个内置12位模数转换、低导通电阻模拟开关的串行接口芯片,具有SPI接口。供电电压2.7~5V,参考电压VREF为1V~+VCC,转换电压的输入范围为0~VREF,最高转换速率为125kHz。7.5.1

电阻触摸屏控制器9212:数据输出端,AD7843的转换结果,以串行数据流的形式通过该端口输出。输出数据在DCLK的下降沿输出,当CS为高电平时,该端为高阻抗状态。13:忙信号输出端,当芯片进行数据转换时为忙(高平),转换结束时输出低电平。当CS为高时,该输出为高阻抗状态。14:DIN,数据输入端,需要写入AD7843控制寄存器的数据通过该端输入,在DCLK的上升沿写入寄存器(参见控制寄存器部分)。15:CS,芯片的片选信号输入端,低电平有效,该输入具有双重功能,既能启动AD7843的转换过程,又能使能串行输入/输出寄存器。16:DCLK,外部时钟输入,DCLK提供串行时钟,用于从该芯片读取数据,该时钟还被用作AD7843转换过程的时钟源。7.5.1

电阻触摸屏控制器93引脚功能如下:1and10:+VCC,PowerSupplyInput.The+VCCrangefortheAD7843isfrom2.2Vto5.25V.Both+VCCpinsshouldbeconnecteddirectlytogether.2:X+,X+PositionInput.ADCInputChannel1.3:Y+,Y+PositionInput.ADCInputChannel2.4:X−,X−PositionInput.5:Y−,Y−PositionInput.6:GND,AnalogGround.GroundreferencepointforallcircuitryontheAD7843.AllanaloginputsignalsandanyexternalreferencesignalshouldbereferredtothisGNDvoltage.7:IN3,AuxiliaryInput1.ADCInputChannel3.8:IN4,AuxiliaryInput2.ADCInputChannel4.(1)ADS7843引脚与基本连接ADS7843是一个内置12位模数转换、低导通电阻模拟开关的串行接口芯片,具有SPI接口。供电电压2.7~5V,参考电压VREF为1V~+VCC,转换电压的输入范围为0~VREF,最高转换速率为125kHz。7.5.1

电阻触摸屏控制器949:VREF,ReferenceInputfortheAD7843.Anexternalreferencemustbeappliedtothisinput.Thevoltagerangefortheexternalreferenceis1.0Vto+VCC.Forspecifiedperformance,itis2.5V.11:PENIRQ,PenInterrupt.CMOSlogicopen-drainoutput(requires10kΩto100kΩpull-upregisterexternally).12:DOUT,DataOut.LogicOutput.TheconversionresultfromtheAD7843isprovidedonthisoutputasaserialdatastream.ThebitsareclockedoutonthefallingedgeoftheDCLKinput.ThisoutputishighimpedancewhenCSishigh.13:BUSY,BUSYOutput.LogicOutput.ThisoutputishighimpedancewhenCSishigh.14:DIN,DataIn.Logicinput.DatatobewrittentotheAD7843controlregisterisprovidedonthisinputandisclockedintotheregisterontherisingedgeofDCLK(seetheControlRegistersection).15:CS,ChipSelectInput.ActiveLowLogicInput.ThisinputprovidesthedualfunctionofinitiatingconversionsontheAD7843andalsoenablestheserialinput/outputregister.16:DCLK,ExternalClockInput.LogicInput.DCLKprovidestheserialclockforaccessingdatafromthepart.ThisclockinputisalsousedastheclocksourcefortheAD7843conversionprocess.7.5.1

电阻触摸屏控制器95ADS7843的连接。7.5.2

电容触摸屏控制器967.5.2电容触摸屏控制器电容触摸屏控制器的芯片较多,如GT811、GT928、GT9147、OTT2001A等,其中OTT2001A引脚较多,有300多个,分辨率较高,但属于COG(

chiponglass,封装在玻璃上的芯片)应用。这里以较简单的GT9147为例说明其应用。GT9147内部有驱动电路,检测电路、ADC、数字控制逻辑、数字信号处理电路、振荡电路,Turbo51电路等。可实现同时5点触摸检测。GT9147有18根驱动线,10根感应线,可以对屏幕上的18×10个点进行检测,可用于4.5寸以下电容触摸屏。与主机的通信为I2C接口,只需要4根线即可,电压为1.8-3.3V。如图7-39给出了GT9147的主要引脚和连接电路。7.5.2

电容触摸屏控制器97电容触摸屏控制器7.5.2

电容触摸屏控制器98

GT9147是I2C接口,与MCU连接需要4根线:SDA、SCL、RST和INT。其中RST为主机对GT9147进行复位,INT为GT9147发出的中断信号,由主机读取数据,其时序为标准的I2C时序,GT9147的I2C地址为0X14或0X5D。

GT9147内部有180多个寄存器,每个寄存器均有一个16位地址,主机通过这些地址对这些寄存器进行访问,这些寄存器分为控制寄存器(0X8040),配置寄存器(0X8047~0X8100),产品ID寄存器(0X8140~0X8143),状态寄存器(0X814E),坐标数据寄存器(共30个)。这些寄存器完成对GT9147的控制、设置和保存触摸坐标数据等。这里只介绍坐标数据寄存器。每个触摸点有6个字节,X、Y分低字节和高字节,还有一个参数是触摸点的大小,占2个字节。如表7-9所示,给出了GT9147的坐标寄存器。7.5.2

电容触摸屏控制器99

在进行触点坐标读取时,一般只用读取前4个值得到触点的x、y坐标即可。GT9147支持寄存器地址自增,发送寄存器组的首地址,然后连续读取,GT9147会自动地址自增,从而提高读取速度。触摸屏的软件设计工作量较大,往往需要借助操作系统提供的控件或专门的函数库进行设计,目前也有不少专门软件可用于触摸屏设计,如DGUS组态软件、emWin、littleVGL等。

100习题77-1简要说明矩阵按键的读取方法。7-2试说明什么是编码式键盘。7-3说明多位LED数码管的动态显示和静态显示的区别。7-4说明图7-13的动态显示电路,在软件上应如何处理。

7-5说明TN-LCD和TFT-LCD的区别。7-6说明LCD12864的写、读时序的意义。7-7说明电阻触摸屏的原理和检测方法。7-8说明电容触摸屏的原理和检测方法。7-9查资料了解还有哪些电容触摸屏控制器,简要说明其原理接口方法。7-10请简述各种类型触摸屏优缺点。7-11查资料了解T5L系列ASIC芯片的GUI编程软件DGUS的使用方法。101本章结束!第8章总线与通信接口电路设计

智能仪器设计基础102CHAPTER08智能仪器中常用的串行接口、现场总线与短距无线通信本章主要内容01总线与数据通信概述并行/串行、同步/异步、差错检测与CRC02同步串行接口I²C总线与SPI总线03异步串行接口RS-232、RS-422、RS-48504Modbus通信协议帧格式、寄存器模型与功能码05USB通用串行总线系统结构、数据格式与传输类型06现场总线与CANCAN总线特点、节点与帧格式07

短

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论