《数字信号输入输出接口电路课件》由会员分享,可在线阅读,更多相关《数字信号输入输出接口电路课件(80页珍藏版)》请在金锄头文库上搜索。
1、第7章数字信号输入输出接口电路P PA A N N第7章数字信号输入输出接口电路输入/输出接口电路是单片机应用系统中必不可少的单元电路之一,它涉及数据输入电路以及经过单片机处理后的数据输出电路。单片机应用系统总要对输入信号进行比较、判断或运算处理后,输出适当的控制信号去控制特定设备。输入/输出量可以是模拟信号,也可以开关信号。对于模拟信号,经放大、限幅、低通滤波电路,再经A/D转换电路转换为数字信号后,单片机才能处理;单片机处理结果也需要经过D/A转换、平滑滤波后,才能得到模拟量。有关模拟信号的处理,如D/A、A/D转换方法后续章节会介绍,本章主要介绍数字信号的输入/输出(I/O)接口电路。9
2、/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N7.1开关信号输入/输出方式开关信号包括脉冲信号、电平信号。在单片机控制系统中,常采用如下几种方式现实开关信号的输入和输出。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N1.直接解码输入直接解码输入/输出方式输出方式在这种方式中,直接利用CPUI/O引脚输入/输出开关信号,如图7-1(a)所示。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路
3、2.编码输入编码输入/输出方式输出方式在这种方式中,将若干条用途相同(均为输入或输出)的I/O引脚组合在一起,按二进制编码后输入或输出。例如,对于n条输出引脚,经过译码后,可以控制2n个设备;对于2n个不同时有效的输入量,经过编码器与CPU连接时,也只需要n个引脚,如图7-1(b)所示。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路3.矩阵输入矩阵输入/输出方式输出方式将CPUI/O引脚分成两组,用N条引脚构成行线,M条引脚构成列线,行、列的交叉点就构成了所需的NM个检测点。显然,所需的I/O引脚数目为N+M,而检测点总数达到了NM个,如图7-1(C)所示
4、。可见,I/O引脚的利用率较高,硬件开销少,因此得到了广泛应用。在矩阵编码方式中,如果行线、列线均定义为输出状态,就可以输出NM个开关量;当行、列线中有一组为输出线,另一组为输入线时就构成了NM个输入检测点,如矩阵键盘电路。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路7.2I/O资源及扩展资源及扩展通过单片机实现数字信号的输入处理和输出控制时,必须了解以下问题:(1)准确理解CPU中各引脚的功能,确定可利用的I/O资源,并做出相对合理的使用规划。(2)作输出控制信号时,必须了解CPU复位期间和复位后该引脚的状态。MCS-51系列CPU在复位期间和复位后各
5、I/O端口的状态可参阅第2章有关内容。(3)了解I/O端口输出级电路结构和I/O端口的负载能力。只有了解了CPUI/O端口输出级电路结构和负载能力,才可能设计出原理正确、工作可靠的I/O接口电路。(4)了解I/O端口输出电平范围。(5)了解I/O端口耐压。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N7.2.1通过锁存器、触发器扩展通过锁存器、触发器扩展I/O口口当仅需要扩展少量的I/O引脚时,可使用锁存器、触发器或三态门电路实现。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出
6、接口电路第7章数字信号输入输出接口电路P PA A N N1.输出口输出口MCS-51写外部RAM时,用作写选通信号。在时序上,数据输出有效到有效时间TQVWX最小值为零,而无效到数据输出无效(即数据保持)时间TWHQX也不超过1个机器周期。而利用触发器扩展输出口时,触发器送数时钟信号由外部RAM写选通信号和高位地址译码信号经过“与门”或“或非门”产生,这样送数时钟信号就存在一定的延迟,因而只能利用的前沿将数据锁存到触发器中,常使用74LS273(八上升沿触发器,带公共清零端)、74LS174(六上升沿触发器)、74LS374(八上升沿触发器,三态输出)、74LS377(八上升沿触发器,带使能
7、端)来扩展MCS-51的输出口,如图7-2所示。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路图7-2使用74LS273扩展输出口9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路2.输入口输入口对输入口来说,一般无须锁存,原则上三态门电路、具有三态输出的总线缓冲器、驱动器、D型触发器(如74LS374)以及电平触发的锁存器(如74LS373)等均可以作为输入口扩展芯片,如图7-3所示。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路9/17/20249/17/2024数字信号输入输出接
8、口电路数字信号输入输出接口电路图7-4是一个实用的输入/输出口扩展电路,其中74LS273构成8位输出口,74LS373构成8位输入口。图7-4扩展输入/输出口9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N7.2.2利用串入并出及并入串出芯片扩展利用串入并出及并入串出芯片扩展I/O口口在速度要求不高情况下,可利用74LS164、74HC594、74HC595等“串入并出”芯片扩展输出口;利用74LS165、74HC597等“并入串出”芯片扩展输入口,也是一种简单、实用的I/O口扩展方式。当串行口未用时,可通
9、过串行口方式0完成串行数据的输入或输出(可参阅第4章);而当串行口已做它用时,可根据串行芯片的操作时序,使用I/O引脚完成数据的输入/输出,例如在图7-5中使用89C5X芯片三根I/O线,借助两片74HC595即可获得16根输出线。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路图7-5通过“串入并出”芯片扩展输出引脚9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N7.2.3用8255可编程I/O芯片扩展MCS-51并行I/O口Intel公司8255芯片是一块通用的可编程并
10、行接口(PPI)芯片,除地址线A1、A0外,可直接与Intel公司8位微处理器,如MCS-51芯片相应总线直接相连,是MCS-51单片机应用系统中较常见的并行I/O扩展芯片之一。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路1.8255的结构及引脚功8255采用DIP40、LCC44或QFP44封装形式,引脚功能及排列如图7-6所示。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N2.8255工作方式工作方式8255属于可编程的I/O扩展芯片,其工作方式由写入工作方式控制
11、寄存器的工作方式控制字决定,如表7-2所示。1b6b5b4b3b2b1b0工作方式控制字特征A口工作方式控制00(方式0)01(方式1)1x(方式2)A口输入/输出控制0(输出)1(输入)C口高4位输入/输出控制0(输出)1(输入)B口工作方式控制0(方式0)1(方式1)B口输入/输出控制0(输出)1(输入)C口低4位输入/输出控制:0(输出)1(输入)与A口工作方式有关的控制位A组(PC7PC4)输入/输出控制与B口工作方式有关的控制位B组(PC3PC0)输入/输出控制表7-28255工作方式控制字各含义9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7
12、章数字信号输入输出接口电路P PA A N N8255I/O口有三种工作方式:方式0,基本输入/输出方式。特点是对输出信号锁存功能;对输入信号没有锁存功能。方式1,选通输入/输出方式。特点是使用C口部分引脚作为A、B通信联络信号,对输入、输出数据均具有锁存功能。方式2,双向传输方式。只有A口可以工作于方式2,使用C口部分引脚作为双向传输联络信号,对输入、输出数据均具有锁存功能。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N可见8255三个I/O口的地位不完全相同,其中A口有三种工作方式,B口有两种工作方式;
13、而C口较特殊,被分成A(PC7PC4)、B(PC3PC0)两组,只有当A、B口工作在方式0时,C口才可作为输入/输出引脚使用(PC7PC4、PC3PC0处于输入还是输出状态,分别由工作方式控制字的b3、b0位决定),而当A、B口工作在方式1或2时,C口部分引脚作为A、B口通信联络信号(这时未用的C口引脚仍可作为输入/输出引脚使用,由控制寄存器的b3、b0位选择),具体情况如表7-3所示。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N NC口引脚方式1(A或B口)方式2(A口)输入输出输入输出PC0INTRBIN
14、TRBPC1IBFBPC2PC3PC4PC5PC6PC7BBBINTRAINTRAINTRAINTRAIBFAIBFAAAAAAA表7-3A、B口工作在方式1/2下C口引脚的含义9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N(a)A口工作在选通输入方式下信号连接方式及时序(b)A口工作在选通输出方式下信号连接方式及时序9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N3.8255芯片与芯片与MCS-51接口应用举例接口应用举
15、例MCS-51CPU与8255接口芯片按如下方式连接:8255芯片数据总线与CPU数据总线直接相连。读控制信号()、写控制信号()分别与CPU读写控制信号相连。8255芯片地址线A1、A0可直接与CPU高8位地址,如A9(即P2.1引脚)、A8(即P2.0引脚)相连;当然如果已使用了D型锁存器(如74LS373)锁存了MCS-51芯片P0口低8位地址信号A7A0,则8255芯片地址线A1、A0也可以与CPU地址线A1、A0相连。片选信号可直接与CPU高位地址线相连(即采用线选法,如图7-8所示)或由高位地址译码后产生,如例7.1所示。9/17/20249/17/2024数字信号输入输出接口电路
16、数字信号输入输出接口电路图7-8MCS-51与8255芯片的连接9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N7.2.4利用利用8155/8156可编程可编程I/O芯片扩芯片扩展展MCS-51的的I/O口口8155/8156曾经是MCS-51单片机系统常用的可编程并行I/O扩展芯片之一,与MCS-51接口方便。采用DIP40、LCC44或QFP44封装形式,单一+5V工作电源。8155/8156可编程I/O扩展芯片除了可提供
17、三个可编程的I/O端口(A、B均为8位I/O口,C口为6位I/O端口)外,还具有256字节的SRAM存储单元和一个14位的可编程定时/计数器,并内置了地址锁存器,地址线可直接与MCS-51单片机的P0口相连,无须使用74LS373锁存低8位地址信号,适合扩展具有片内程序存储器 的 MCS-51单 片 机 CPU, 如 8751、 8752、 87C51/52/54/58、89C51/52/54/58、87C51X2/52X2/54X2/58X2、89C51X2/52X2/54X2/58X2等的I/O口。当系统所需外部数据存储器容量不大时,由1片CPU和1片8155即可构成I/O端口较多的单片机
18、应用系统。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N1.内部结构及引脚功能内部结构及引脚功能8155/8156芯片内部结构及引脚排列如图7-10所示。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N2.8155芯片初始化芯片初始化8155内部有一个命令寄存器,其内容规定8155的工作方式,各位含义如表7-4所示。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接
19、口电路P PA A N N7.2.5利用利用CPU扩展扩展I/O当I/O引脚资源不够时,用另一块CPU来扩展I/O端口比通过三态门、触发器、专用I/O扩展芯片如8255、8155等扩展I/O引脚,在某些单片机应用系统中可能更经济。一方面,不仅扩展了I/O引脚,也扩展了其他硬件资源(如定时/计数器、中断输入端),部分工作可由扩展CPU完成,有效地减轻了主CPU负担。另一方面,由于CPUI/O口电平可任意设置,完全可以省去承担逻辑转换的与非门电路芯片。利用CUP扩展I/O资源时,可使用UART、I2C异步通信方式、类似SPI接口同步串行通信方式或并行通信方式实现两CPU之间的信息交换。9/17/2
20、0249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路7.3简单显示驱动电路简单显示驱动电路7.3.1发光二极管发光二极管发光二极管在本质上与普通二极管差别不大,也是一个PN结,同样具有正向导通,反向截止的特性。发光二极管的伏安特性曲线与普通二极管相似,如图7-12所示(为了便于比较,图中用虚线表示普通二极管的伏安特性曲线)。图7-12LED二极管伏安特性曲线9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路(1)外加正向电压小于0.9V1.1V时,LED不导通;当外加电压大于正向阀值电压时,LED导通,同时发光。显然,LED二极管的正向导通
21、电压比普通二极管大,具体数值与LED材料有关,如表7-7所示。表7-7LED正向压降与材料的关系(2)LED导通后,伏安特性曲线更陡,即LED导通后,内阻更小(因此也常用作降压元件,如将+5V电源降为3V电源)。(3)LED二极管反向击穿电压比普通二极管低,一般在5V10V之间。LED材料正向导通电压VF/V砷化镓(GaAs)1.2镓铝砷(GaAlAs)1.61.8磷化镓(GaP)1.92.5磷砷化镓(GaAsP)1.61.89/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路7.3.2驱动电路驱动电路LED工作电流较大,而MCS51系列CPUP1P3口I/O引
22、脚负载能力仅为四个TTL门电路,因此不能直接驱动LED发光二极管,必须使用三极管或驱动IC芯片驱动,如图7-13所示。图7-13CPU与LED接口电路(a)、(b)、(d)低电平有效;(c)高电平有效9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N7.3.3LED发光二极管显示状态及同步发光二极管显示状态及同步一般说来,单个LED有“亮”、“灭”显示两种状态,但在单片机应用系统中,由于I/O引脚、成本等因素限制,要求一只LED发光二极管显示出更多的状态。例如电源监控设备中的电源指示灯就可能用“灭”、“常亮”、
23、“快闪”、“慢闪”四种状态分别表示“无交流”、“交流正常”、“过压”、“欠压”四种状态;又如,带有后备电池设备的电源指示灯也可用“灭”、“常亮”、“快闪”、“慢闪”分别表示“无交流/电池电压正常”、“交流正常/电池电压正常”、“交流正常/电池低压”、“无交流/电池低压”四种状态。在这种情况下,一般用两个bit记录每一只LED发光二极管的状态,如00表示灭;01表示慢闪;10表示快闪;11表示常亮,这样一字节内部RAM单元可记录4个LED指示灯的状态。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N当系统中存在
24、两个或两个以上LED发光二极管以闪烁方式表示不同的状态时,就遇到LED显示同步问题,否则可能出现甲灯亮时,乙灯灭呈现类似霓虹的走动显示效应。解决方法:快闪、慢闪时间呈倍数关系,如快闪切换时间为0.15s0.25s,则慢闪切换时间可设为0.45s0.75s(23倍);然后在定时中断服务程序中设置快、慢闪切换标志,并根据LED状态关闭或打开LED指示灯即可。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N7.4LED数码管及其显示驱动电路数码管及其显示驱动电路7.4.1LED数码管数码管LED数码管是单片机控制系
25、统中最常用的显示器件之一,LED数码管在单片机应用系统中的地位类似于CRT(阴极射线管)显示器在台式微机系统中的地位。在单片机系统中,常用一只到数只,甚至十几只LED数码管显示CPU的处理结果、输入/输出信号的状态或大小。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N NLED数码管的外观如图7-14(a)所示,笔段及其对应引脚排列如图7-14(b)所示,其中ag段用于显示数字或字符的笔画,dp显示小数点,而3、8引脚连通,作为公共端。一英寸以下的LED数码管内,每一笔段含有1只LED发光二极管,导通压降为1.
26、2V2.5V;而一英寸及以上LED数码管的每一笔段由多只LED发光二极管以串、并联方式连接而成,笔段导通电压与笔段内包含的LED发光二极管的数目、连接方式有关。在串联方式中,确定电源电压Vcc时,每只LED工作电压通常以2.0V计算,例如4英寸七段LED数码显示器LC4141的每一笔段由四只LED发光二极管按串联方式连接而成,因此导通电压应在7V8V之间,电源电压Vcc必须取9V以上。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路根据LED数码管内各笔段LED发光二极管的连接方式,可以将LED数码管分为共阴极和共阳极两大类。在共阴极LED数码管中,所有笔段
27、的LED发光二极管的负极连在一起,如图7-14(c)所示;而在共阳极LED数码管中,所有笔段的LED发光二极管的正极连在一起,如图7-14(d)所示。图7-14LED数码显示管9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N7.4.2LED数码显示器接口电路数码显示器接口电路从LED数码管结构可以看出,点亮不同笔段就可以显示出不同的字符,例如笔段a、b、c、d、e、f被点亮时,就可以显示数字“”;又如笔段a、b、c、d、g被点亮就显示数字“3”。理论上,七个笔段可以显示128种不同的字符,扣除其中没有意义的组
28、合状态后,七段LED数码管可以显示的字符如表7-9所示。依据显示驱动方式的不同,可将LED数码显示驱动电路分为静态显示方式和动态显示方式。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N1.LED静态显示接口电路LED静态显示接口电路由笔段代码锁存器、笔段译码器(采用软件译码的LED静态显示驱动电路不用笔段译码器)、驱动器等部分组成。在单片机应用系统中,一般不用七段译码器芯片,如74249、CD4511等构成笔段译码,而是采用软件方式实现译码,原因是软件译码灵活、方便,下面是单片机系统中常用的LED静态显示接
29、口电路形式。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路(1)图7-15(a)是一位的共阳LED静态显示驱动电路,P1口输出笔段代码,通过7407驱动LED数码管。该电路优点是结构简单,直接利用P1口锁存器作笔段代码锁存器,缺点是占有了P1.0P1.6七根I/O线。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N(2)在图7-15(b)中,通过八上升沿D型触发器74LS273扩展输出口,分别作为LED1、LED2的笔段代码锁存器。9/17/20249/17/2024数字
30、信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N(3)如果LED数码管工作电流小于10mA,使用74HC273芯片后,可省去OC输出的驱动芯片7407,如图7-15(c)所示。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N(4)当系统中I/O引脚资源不紧张时,可使用I/O引脚作D型触发器锁存脉冲,如图7-15(d)。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N2.动态显示方
31、式动态显示方式LED显示器显示器在静态显示方式中,显示驱动程序简单,CPU占用率低,但每一位LED数码管需要一个8位锁存器来锁存每一显示位的笔段代码,硬件开销大(元件数目多,印制板面积也会随之增加),仅适用于显示位数较少(4位以下)的场合。当需要显示的位数在412时,多采用按位扫描软件(在单片机系统一般不用硬件)译码的动态显示方式或按笔段扫描的动态显示方式,如图7-16所示。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路在图
32、7-15中,使用P2口作为笔段码锁存器,用7407作笔段码驱动器(由于在LED动态显示电路中,为获得足够亮度,限流电阻小,LED瞬态电流大,一般不能省去笔段驱动器);P0口作位扫描码锁存器,用低频中功率PNP管作位驱动器。显然,笔段、位扫描均采用软件译码方式。 显示时,依次将各位笔段码送P2口,位扫描码送P口,即可分时显示所有位。就微观来说,任一时刻只有一只LED数码管工作,但由于人眼视觉惰性特征,只要刷新频率不小于25Hz,宏观上就看到所有位同时亮,且没有闪烁感。 从图中可以看出,在软件译码的动态LED显示电路中,无论位数多寡,都只需一套笔段码锁存器与驱动器,一套位扫描码锁存器与驱动器,硬件
33、开销少。因此,在单片机应用系统中得到了广泛应用。 9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N当CPUI/O引脚资源紧张时,可采用D型锁存器、可编程8255并行I/O扩展芯片构成动态LED显示器的笔段码锁存器和位扫描码锁存器,如图7-16所示。图(a)使用两片74LS273构成笔段码锁存器和位扫描码锁存器,而图(b)用8255的B口作为笔段码锁存器;A口作为位扫描码锁存器。由于8255A口负载能力有限,不能直接驱动LED,为此图中采用中功率PNP管(如MPS8850)增大笔段驱动电流。9/17/20249
34、/17/2024数字信号输入输出接口电路数字信号输入输出接口电路(a)由74LS273(74HC273)构成的按位扫描动态显示驱动电路9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N当显示位数较多,如12位以上时,即使将显示刷新率降到25Hz(实际上当刷新频率降到25Hz时已出现明显闪烁现象)后,仍不能保证每位显示时间大于1ms时,可采用按字段扫描方式或按位分组扫描方式的动态显示驱动电路。在按字段扫描方式中,不论位数多少,对于八段数码显示器来说,笔段引脚只有8根,即使显示刷新频率为50Hz, 按 字 段 扫
35、描 时 , 每 一 字 段 显 示 时 间 依 然 为1/(508)=2.5ms。显示时每次点亮一个字段(即扫描信息从字段引脚dpa输入),同一字段的显示信息由位选择电路控制,如图7-17(a)所示,显示时先将显示数码缓冲区内数码转换为笔段码,然后将笔段码缓冲区内信息转化为位笔段显示信息码,如下所示。显示时只将位笔段显示信息送位选择口。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N由8255构成的按位扫描动态显示驱动电路9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7
36、章数字信号输入输出接口电路P PA A N N7.5键盘电路在单片机应用系统中,除了复位按钮外,可能还需要其他按键,以便控制系统的运行状态,或向系统输入运行参数。键盘电路一般由键盘接口电路、按键(由控制系统运行状态的功能键和向系统输入数据的数字键组成)以及键盘扫描程序等部分组成。7.5.1按键结构按键电压波形7.5.2键盘电路形式7.5.3键盘按键编码7.5.4键盘监控方式9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路7.5.1按键结构按键电压波形1.按键结构及工作原理单片机控制系统中广泛使用的机械键盘的工作原理是:按下键帽时,按键内的复位弹簧被压缩,动片
37、触点与静片触点相连,使按键的两个引脚被接通,接触电阻大小与按键触点面积及材料有关,一般在数十以下;松手后,复位弹簧将动片弹开,使动片与静片触点脱离接触,两引脚断开。可见,机械键盘或按钮的基本工作原理就是利用动片和静片触点的接触和断开来实现键盘或按钮两引脚的通、断。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路在理想状态下,按键引脚电压变化如图7-20(a)所示。但实际上,在按键被按下或放开的瞬间,由于机械触点存在弹跳现象,实际按键电压波形如图7-20(b)所示,即机械按键在按下和释放瞬间存在抖动现象,抖动时间的长短与按键的机械特性有关,一般在5ms10ms
38、之间,而按键稳定闭合期长短与按键时间有关,从数百毫秒到数秒不等。为了保证按键由“按下”到“松手”之间仅视为一次或数次输入(对于具有重复输入功能的按键),必须在硬件或软件上采取去抖动措施,避免一次按键输入一串数码。2.按键波形9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N7.5.2键盘电路形式根据所需按键个数、I/O引脚输出级电路结构以及可利用的I/O引脚数目,确定键盘电路形式。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N
39、N1.直接编码输入键盘直接编码输入键盘通过检测单片机I/O引脚电平状态,判别有无按键输入就构成了直接编码键盘,如图7-19(b)所示。优点是键盘接口电路简单,适用于仅需少量按键的场合9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N2.矩阵键盘矩阵键盘当系统所需按键个数较多时,为了减少键盘电路占用的I/O引脚数目,一般采用矩阵键盘形式,如图7-22所示。在矩阵键盘电路中,行线是输入引脚,列线是输出引脚(当然也可以倒过来,将行线作为输出引脚,而列线作为输入引脚)。9/17/20249/17/2024数字信号输入输
40、出接口电路数字信号输入输出接口电路9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N7.5.3键盘按键编码在键盘电路中,按键的个数不止一个,即存在键盘按键编码(键值)问题。按键编码与按键功能(即键名)有关联,但又是两个不同的概念。键盘电路结构不同,确定键值的方式也不同,例如对于图7-19这样的简单键盘接口电路,将K0对应的按键值定义为“0”;K1对应的按键值定义为“1”;依此类推,K3对应的按键值定义为“3”。对于图7-22所示的矩阵键盘接口电路,确定键值的方法很多:可用行、列对应的二进制值作为键值,例如当列线
41、P1.7P1.4输出的扫描信号为1110,如果P1.4与P1.0交叉点对应按键,即第一个按键被按下时,从P1.3P1.0口读入的信息必然为1110,因此P1.0与P1.4交叉点对应的按键值为1110,1110(即0EEH);同理,P1.0与P1.5交叉点对应的按键值为1101,1110(即0BEH),P1.0与P1.7交叉点对应的按键值为0111,1110(即7EH)。但通过这种编码方式获得的键值分散性大,且不等距。因此,一般均按顺序对键盘按键进行编码,即将按键行列对应的二进制码作为扫描码,查表转换为键值。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路例如
42、,可按如下顺序对图7-23所示矩阵键盘的按键进行编号:将P1.0引脚对应行线的行号定义为0,P1.1引脚对应行线的行号定义为1,P1.2引脚对应行线的行号定义为2,P1.3引脚对应行线的行号定义为3;P2.0引脚对应列线的列号定义为0,P2.1引脚对应列线的列号定义为1,依次类推,P2.4引脚对应列线的列号定义为4,则键盘任意按键的扫描码=5行号+列号(因为一行为5列)或4列号+行号(因为一列为4行)。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N7.5.4键盘监控方式在单片机应用系统中,可采用查询方式(包
43、括随机扫描方式和定时中断扫描方式)或硬件中断方式监视键盘有无按键输入。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N1.随机扫描方式随机扫描方式在随机扫描方式中,CPU完成某一特定任务后,执行键盘扫描程序,以确定键盘有无按键被按下,然后根据按键功能执行相应的操作。但这种扫描方式因不能在执行按键规定操作中检测键盘有无输入,失去了对系统的控制,很少采用。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N2.定时扫描方式定时扫描方
44、式定时扫描方式与随机扫描方式基本相同,利用CPU内的定时中断,每隔一定时间(10ms-50ms)扫描键盘有无按键被按下,键盘反映速度较快,在执行按键功能规定操作过程中,可通过键盘命令进行干预,如取消,或暂停等。在定时扫描方式中,为提高CPU利用率,尽量避免通过被动延迟10ms20ms方式等待按键稳定闭合,建议在定时中断服务程序中,用3个位存储单元记录最近三次定时中断检测到的按键状态(可初始化为111态)。如果规定没有按键被按下时为“1”,有按键被按下时为“0”,则按键状态含义下:9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路111表示最近三次定时中断均未发
45、现按键被按下;110表示前两次定时中断未检测到按键被按下,只在本次定时中断检测到按键被按下,未延迟,还不能肯定按键被按下。100表示最近两次定时中断检测到按键被按下,且已延迟了一次定时中断时间;对键盘进行扫描,确定哪一按键被按下,并执行按键规定的动作。000表示处于按键稳定闭合期。001按键可能处于释放状态。011按键已经释放。010在很短时间内(小于两次中断时间)检测到按键处于释放状态,视为干扰,作000态处理。101在很短时间内(小于两次中断时间间隔)检测到按键处于按下状态,视为干扰,作111态处理。再利用一字节内部RAM单元保存按键值和按键有效标志(在单片机控制系统中,按键个数一般不超过
46、64个,为减小内存开销,可使用该字节的b7位作为按键有效标志),如下所示。这样不仅记录了最近按了哪一按键,也记录是否已执行了按键规定的操作。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N7.6并行接口及应用实例并行接口及应用实例7.6.1MCS-51与并行输入/输出设备之间的连接当单片机芯片以并行方式与另一单片机芯片或并行输入/输出设备连接时,就涉及并行接口问题,在并行接口中主要涉及下列信号:(1)数据线及宽度。对于8位并行接口设备来说,数据线宽度为8位,即D7D0;对16位并行接口来说,数据线宽度为16位
47、,即D15D0。在单片机应用系统中,由于I/O引脚限制,数据线宽度也可能只有4位(D3D0),即一个字节分两次传送。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N(2)选通脉冲(Strobe)。由输出设备提供,输入设备用信号锁存数据总线上的数据。至于采用低电平有效,还是高电平有效由并行通信协议决定。(3)应答信号(Acknowledge)。由输入设备提供,当输入设备已读取了数据总线上的数据时,向输出设备回送的应答信号。此外,一些高速并行输入设备,如并行接口打印机带有一定容量的输入缓冲器,可连续接收输入数据,
48、在这类并行设备中多使用Busy(输入设备忙)联络信号代替应答信号。输出设备将数据输出到数据总线,并给出选通信号后,如果检测到Busy信号无效,就接着输出下一数据,直到Busy信号有效为止(表示输入缓冲器满)。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路MCS-51与并行输出/输入设备之间可按图7-25所示连接。图7-25MCS-51与并行输入/输出设备之间的连接9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N7.6.2MCS-51与并行打印机之间的连接与并行打印机之间的
49、连接1.并行打印机接口标准并行打印机一般采用与Centronic标准兼容的DB-25并行接口,各信号含义如表7-9所示,DB-25插座引脚编号、信号时序如图7-26所示。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路表7-9Centronic并行接口标准信号引脚编号信号名称信号流向(输入/输出)含义1输入,低电平有效输入选通脉冲29D0D7输入数据总线。由主控设备,如计算机主机向打印机输出控制命令及数据。10输出,低电平有效打印机应答信号。表明打印机已可靠接收了主机输出的数据。11Busy输出,高电平有效打印机忙信号,当该信号有效时,表示打印机忙(即打印机
50、输入缓冲器满,不能再接收数据)。12PE输出,高电平有效打印机缺纸。当PE为高电平时,表示打印机处于缺纸状态。13SEL输出,高电平有效联机信号。当SEL为低电平时,表明打印机处于脱机状态(如打印电缆未连接或用户触发联机按钮造成脱机)14备用15输出,低电平有效出错。当输入命令有错时,该信号有效1617备用1825GND接地9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N图7-26并行打印机插座引脚编号及信号时序9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号
51、输入输出接口电路P PA A N N2.MCS-51与并行打印机之间连接实例当I/O引脚资源不紧张时,并行打印机各信号线直接挂接在MCS-51的I/O引脚上,如图7-27(a)所示;当I/O引脚资源紧张时,可通过并行I/O口扩展芯片,如8255与并行打印机相连,如图7-27(b)所示。为充分利用8255功能,当8255通过PA口输出打印数据时,最好将8255芯片A口置为方式1(即选通输出方式),这时PC7是输出缓冲器满信号,将它作为打印机选通脉冲;打印机应答信号接PC6引脚,8255中断请求INTR为高电平有效,可通过NPN三极管反相后接MCS-51外中断输入端。9/17/20249/17/2
52、024数字信号输入输出接口电路数字信号输入输出接口电路图7-27MCS-51与并行打印机的连接9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N7.7光电耦合器件接口电路 光电耦合器件是将砷化镓制成的发光二极管(发光源)与受光源(如光敏三极管、光敏晶闸管或光敏集成电路等)封装在一起,构成电光电转换器件, 其内部结构如图7-28所示。 从发光二极管特性看出:发光强度与流过发光二极管中的电流大小有关,这样就将输入回路中变化的电流信号转化为变化的光信号,而光敏三极管中集电极电流大小与注入的光强度有关,从而实现了“电光
53、电”的转换。由于输入回路与输出回路之间通过光实现耦合,因此光电耦合器件也称为光电隔离器件,或简称光耦。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N图7-28 光耦结构及等效电路9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N 晶体管输出的光电耦合器件与单片机的基本接口电路如图7-29所示,其中输入回路的工作原理与LED发光二极管驱动电路相同,当单片机I/O引脚输出低电平时,7407输出级饱和导通,光耦内部的LED发光,工
54、作电流If=( Vcc-Vf-Vcs)/R;输出回路的三极管因光照而饱和导通,集电极输出低电平。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N光耦器件具有如下特点:(1)输入回路与输出回路之间通过光实现耦合,彼此之间的绝缘电阻很高(1010以上),并能承受2000V以上高压,因此输入回路与输出回路之间在电气上完全隔离。 由于输入、输出自成系统,无须共地,绝缘和隔离性能都很好,因此,有效地避免了输入/ 输出回路之间的相互作用。 (2)由于光耦中的发光二极管以电流方式驱动,动态电阻很小,输入回路中的干扰,如电源
55、电压波动、温度变化引起的热噪声等均不会耦合到输出回路。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路(3)作为开关使用时,光耦器件具有寿命长,反应速度快(开关时间在s级)的特点,高速光耦开关时间只有10ns。 光耦广泛应用于彼此需要隔离的数字系统中,根据受光源结构的不同,可将光耦器件分为晶体管输出的光电耦合器件和晶闸管输出的光电耦合器件两大类。 在晶体管输出的光电耦合器件中,受光源为光敏三极管。光敏三极管可以有基极(如图7-28(a)所示的4N254N38等),也可以没有基极(如图7-28(b)所示的TLP124、TLP126等),部分光耦输出回路的晶体管
56、采用达林顿结构,以提高电流传输比 (如图7-28(c)所示的4N33、H11G1、H11G2、H11G3等),其中泄放电阻R的作用是给V1管的漏电流提供泄放通路,防止热电流引起V2管误导通;二极管VD的作用是防止输出管CE结反偏,保护输出管)。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路 晶体管输出的光电耦合器件与单片机的基本接口电路如图7-29所示,其中输入回路的工作原理与LED发光二极管驱动电路相同,当单片机I/O引脚输出低电平时,7407输出级饱和导通,光耦内部的LED发光,工作电流If=( Vcc-Vf-Vcs)/R;输出回路的三极管因光照而饱和
57、导通,集电极输出低电平。 图7-29 4N25与单片机的接口电路9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N7.8单片机与继电器接口电路单片机与继电器接口电路 继电器类也是单片机控制系统中常用的开关元件,用于控制电路的接通和断开,包括电磁继电器、接触器和干簧管。继电器由线圈及动片、定片组成。线圈未通电(即继电器未吸合)时,与动片接触的触点称为常闭触点,当线圈通电时, 与动片接触的触点称为常开触点。 继电器的工作原理是利用通电线圈产生磁场,吸引继电器内部的衔铁片,使动片离开常闭触点,并与常开触点接触,实现电
58、路的通、断。由于采用触点接触方式,接触电阻小,允许流过触点的电流大(电流大小与触点材料及接触面积有关)。另外,控制线圈与触点完全绝缘,因此控制回路与输出回路具有很高的绝缘电阻。9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N 根据线圈所加电压类型可将继电器分为两大类,即直流继电器和交流继电器。其中直流继电器使用最为普及,只要在线圈上施加额定的直流电压,即可使继电器吸合,与单片机接口方便。 直流继电器线圈吸合电压以及触点额定电流是直流继电器两个非常重要的参数,例如对于6V继电器来说,驱动电压必须在6V左右,当驱动电压小于额定吸合电压时,继电器吸合动作缓慢,甚至不能吸合或颤抖,影响继电器寿命或造成被控设备损坏;当驱动电压大于额定吸合电压时,会因线圈过流而损坏。 小型继电器与单片机接口电路如图7-30所示,其中二极管VD2是为了防止继电器断开瞬间引起的高压击穿驱动管9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路第7章数字信号输入输出接口电路P PA A N N9/17/20249/17/2024数字信号输入输出接口电路数字信号输入输出接口电路