《片机的并行口线PPT课件》由会员分享,可在线阅读,更多相关《片机的并行口线PPT课件(42页珍藏版)》请在金锄头文库上搜索。
1、第第1010章章 单片机的并行口线扩展及应用单片机的并行口线扩展及应用 10.1 并行口线扩展 10.2 输出口线的驱动与隔离10.1 并行口线扩展101.1 通过锁存存器扩展并行接口10.1.2 可编程并行接口芯片815510.1 10.1 并行口线扩展并行口线扩展 10101.1 1.1 通过锁存存器扩展并行接口通过锁存存器扩展并行接口 51单片机本身有4个8位的I/O口线,一般情况下足以满足我们的要求,在需要较多的I/O端口时,可以用扩展I/O口线的方法:(1)采用74LS244,74LS273芯片实现存储器映像方式的I/O口线扩展;(2)采用8155、8255可编程I/O芯片的I/O口
2、扩展;(3)采用串行转并行的方式的I/O口扩展。51系列单片机通过总线扩展外设的方法如图4-1所示。图图10-1 5110-1 51系列单片机的扩展系列单片机的扩展 并行输入扩展通常采用缓冲器74LS244实现输入口线扩展的原理图如图10-2所示,在图10-2中,采用3-8译码器74LS138进行地址译码,74LS138的A B C输入端接地址线为A0A1A2, 74LS138使能端接G1aG2aG2B,分别接A15A14及,因此只有在A15为1,A14为0和信号有效,即执行MOVX A, DPTR 指令,且DPTR满足相应地址条件时,输入端的状态才能被读入到A中,实现输入端口的扩展功能。输出
3、端口的扩展功能如图10-2所示,与输入端口不同的是74LS244缓冲器换成了74LS273 8D触发器及信号换成了,当执行MOVX DPTR,A时,地址符合条件译码器输出有效,同时使能端WR也有效,输出的数据由A中送到8D触发器74LS273上并锁存住,完成了输出A中内容到74LS273并锁存的功能,实现了输出口线的扩展功能。 10-2采用74LS244的输入口线扩展图 10-3采用74LS273的输出口线扩展图10-3是同时扩展输入和输出的电路,在图10-3中地址译码采用线译码方式,即采用A15地址线(P2.7)完成,8000H地址译码,当对8000H地址进行MOVX A, DPTR和MOV
4、X DPTR ,A时,分别从74LS244及74LS273上输入或输出信号,采用此方法可以同时扩展多片74LS244或74LS273,实现多I/O口的扩展,当扩展数量较多时,应注意P0口的带载能力,可以在P0口上加缓冲器实现增强驱动能力,但需要注意的是P0口中数据的流向,如果只扩展输入口线或只扩展输出口线,则可以采用74LS244单向缓冲器进行缓冲,如果同时扩展输入及输出口线,应采用74LS245这样的双向缓冲器进行驱动能力扩展。如图10-4所示。图10-4同时有输入,输出口线扩展电路10.1.2 可编程并行接口芯片8155图10-5 8155的引脚图 8155是一种可编程的并行I/O插口芯片
5、。有2个8位1个6位并行I/O口一个14位计数器的及256BRAM。8155的引脚见图4-5所示。 1、8155各引脚功能说明如下: RST:复位信号输入端,高电平有效。复位后,3个I/O口均为输入方式。 AD0AD7:三态的地址/数据总线。与单片机的低8位地址/数据总线(P0口)相连。单片机与8155之间的地址、数据、命令与状态信息都是通过这个总线口传送的。:读选通信号,控制对8155的读操作,低电平有效。:写选通信号,控制对8155的写操作,低电平有效。:片选信号线,低电平有效。IO/:8155的RAM存储器或I/O口选择线。当IO/0时,则选择8155的片内RAM,AD0AD7上地址为8
6、155中RAM单元的地址(00HFFH);当IO/1时,选择 8155的I/O口,AD0AD7上的地址为8155 I/O口的地址。 ALE:地址锁存信号。8155内部设有地址锁存器,在ALE的下降沿将单片机P0口输出的低8位地址信息及,IO/的状态都锁存到8155内部锁存器。因此,P0口输出的低8位地址信号不需外接锁存器。PA0PA7:8位通用I/O口,其输入、输出的流向可由过程控制。PB0PB7:8位通用I/O口,功能同A口。PC0PC5:有两个作用,既可作为通用的I/O口,也可作为PA口和PB口的控制信号线,这些可通过过程控制。TIMER IN:定时/计数器脉冲输入端。TIMER OUT:
7、定时/计数器输出端。VCC:5V电源。2、 8155的地址编码及工作方式在单片机应用系统中,8155是按外部数据存储器统一编址的,为16位地址,其高8位由片选线提供,0,选中该片。当0,IO/0时,选中8155片内RAM,这时8155只能作片外RAM使用,其RAM的低8位编址为00HFFH;当0,IO/1时,选中8155的I/O口,其端口地址的低8位由AD7AD0确定,如表10-1所示。这时,A、B、C口的口地址低8位分别为01H、02H、03H(设地址无关位为0)。表10-1 8155芯片的I/O口地址AD7AD0选择I/O口A7A6A5A4A3A2A1A000001100110001010
8、1命令/状态寄存器A口B口C口定时器低8位定时器高6位及方式8155的A口、B口可工作于基本I/O方式或选通I/O方式。C口可工作于基本I/O方式,也可作为A口、B口在选通工作方式时的状态控制信号线。当C口作为状态控制信号时,其每位线的作用如下:PC0:AINTR(A口中断请求线)PC1:ABF(A口缓冲器满信号)PC2:(A口选通信号)PC3:BINTR(B口中断请求线)PC4:BBF(B口缓冲器满信号)PC5:(B口选通信号) 8155的I/O工作方式选择是通过对8155内部命令寄存器设定控制字实现的。命令寄存器只能写入,不能读出,命令寄存器的格式如图10-6所示。在ALT1ALT4的不同
9、方式下,A口、B口及C口的各位工作方式如下:ALT1:A口,B口为基本输入/输出,C口为输入方式。ALT2:A口,B口为基本输入/输出,C口为输出方式。ALT3:A口为选通输入/输出,B口为基本输入/输出。PC0为AINTR,PC1为ABF,PC2为,PC3PC5为输出。ALT4:A口、B口为选通输入/输出。PC0为AINTR,PC1为ABF,PC2为,PC3为BINTR,PC4为BBF,PC5为。图10-6 8155命令寄存器格式 8155内还有一个状态寄存器,用于锁存输入/输出口和定时/计数器的当前状态,供CPU查询用。状态寄存器的端口地址与命令寄存器相同,低8位也是00H,状态寄存器的内
10、容只能读出不能写入。所以可以认为8155的I/O口地址00H是命令/状态寄存器,对其写入时作为命令寄存器;而对其读出时,则作为状态寄存器。图10-7 8155状态寄存器格式3、8155的定时/计数器8155内部的定时/计数器实际上是一个14位的减法计数器,它对TIMER IN端输入脉冲进行减1计数,当计数结束(即减1计数“回0”)时,由TIMER OUT端输出方波或脉冲。当TIMER IN接外部脉冲时,为计数方式;接系统时钟时,可作为定时方式。定时/计数器由两个8位寄存器构成,其中低14位组成计数器,剩下的两个高位(M2,M1)用于定义输出方式。其格式如图10-8所示。图10-8 8155定时
11、/计数器控制字10.2 输出口线的驱动与隔离 10.2.1驱动芯片 10.2.2 光耦合器件10.2 10.2 输出口线的驱动与隔离输出口线的驱动与隔离10.2.1驱动芯片开关量的输入/输出,从原理上讲十分简单,在控制现场经常遇到。CPU只要通过对输入到端口的信息进行分析,判断其状态是“0”还是“1”,就可得知开关是“闭合”的还是“断开”的。对于软件设计者来说,如果要控制某个执行器的工作状态,只需在编程时送出“0”或者“1”,即可操作执行机构。但是由于工业现场存在着电、磁、振动、温度等各种干扰,再加上各类执行器所要求的一电压量及功率不同,所以在接口电路中除根据需要选用不同的元器件来设计电路外,
12、还需要考虑各种缓冲、隔离和驱动电路的设计。见图10-9单片机驱动口线的几种接法.图10-9单片机口线驱动其它电路的几种接法 常用驱动芯片有ULN2803,7407等,见图10-10所示。八达林顿晶体管阵列ULN2803中的八NPN达林顿连接晶体管是低逻辑电平数字电路(如TTL,CMOS或PMOSNMOS)和大电流高电压要求的灯、继电器、打印机锤和其它类似负载驱动理想器件。广泛用于计算机,工业和消费类产品中。所有器件的集电极开路输出并接有用于瞬变抑制的续流钳位二极管。ULN2803的设计与标准TTL系列兼容。7407是一种集电极开路的驱动芯片,用它可以驱动小型电器的电路.由于集电极开路,故可以由
13、电源经负载到7407输出端,然后到地形成新的控制回路。常用的驱动电路如图10-10所示,图10-11是ULN2803驱动小型继电器的电路。(a)ULN2803 (b)7407 (C)7406图10-10 常用的驱动芯片图10-11 ULN2803驱动小型继电器的电路10.2.2 光耦合器件 1、光耦合器件原理 在单片机应用系统中,为了防止干扰,一般采用隔离技术,I/O的隔离最常采用的是光耦合器。光耦合器是以光为媒介传输信号的器件,它把一个发光二极和一个光敏晶体管封装在一起,发光二极管加上正向输入电压信号(1.1V)就会发光。光信号作用在光敏晶体管上输出信号。光电耦合器的输入电路和输出电路是绝缘
14、的,是把“电的联系”转化为“光的传输”,再把“光的传输”转化为“电的联系”。即采用光耦合器件时,单片机用的是一组电源,外围器件用的是另一组电源,两者之间完全隔离了电气联系,而通过光的联系来传输信息。一路光耦合器可以完成一路开关量的隔离,如果将8路或16路一起使用,就能实现8位数据或16位数据的隔离。光耦合器的输入侧都是发光二极管,但是输出侧则有多种结构,如光敏晶体管、达林顿晶体管、TTL逻辑电路以及光敏晶闸管等。光电耦合器的主要参数有: (1)导通电流和截止电流:当发光二极管流过一电流时,光耦合器输出端处于导通状态;当流过发光二极管的电流小于某一值时,光耦合器输出端截止。不同的光耦合器通常有不
15、同的导通电流,一般在1020mA之间。 (2)频率响应:由于受发光二极和光敏晶体管响应时间的影响,开关信号传输速度受光耦合器频率特性的影响,普通光耦只能传输10kHz以内的脉冲信号。因此,高频信号传输中要考虑其频特性。在开关量I/O通道中,信号频率一般较低,不会受光耦合器频率特性的影响。(3)输出端工作电流I是指光耦合器导通时,通过光敏晶体管的客定电流以,它代表了光耦合器的驱动能力,与电流传输比Ic/If有关,如输出端是单个晶体管的光耦合器如4N25的电流传输比20%,输出端是达林顿晶体管的光耦合器如4N33的电流传输比500%。(4)输出端暗电流:是指光耦合器处于截止状态时,流过光敏晶体管的
16、额定电流。对光耦合器来说,此值越小越好,以防止输出端的误触发。(5)输入/输出压降:分别指示发光二极管,一般在1.21.5V之间。 (6)隔离电压:是指光耦合器对电压的隔离能力。光电耦合器二极管侧的驱动电路可采用门电路直接驱动。一般的门电路能力有限,常选用带OC门的电路(如7406反向驱动器、7407同向驱动器)进行驱动。根据受光源结构的不同,可以将光耦合器件分为晶体管输出型和晶闸管输出型。晶体管输出型光耦合器内部结构如图10-12所示。在晶体管输出的光耦合器件中,受光源为光敏晶体管。光敏晶体管可能有基极,如图10-12(a)所示的4N25,此外还有4N27、4N38等,如图10-12(b)所
17、示的TLP521,此外还有TLP421,TLP621等。部分光耦合器输出回路的晶体管采用达林顿结构,用来提高电流传输比,如图10-12(c)所示的4N33,此外还有H11G1、H11G2、H11G3等。 晶闸管输出型光耦合器内部结构如图10-13所示晶闸管(俗称可控硅)输出的光耦合器件受光元件为光敏晶闸管。输入回路驱动电流是发光二极的工作电流,一般为1030mA。输出回路中的光敏晶闸管可耐高压,4N40和MOC3041的耐压值高达400V,MOC30093012的输出耐压值电压为250V,工作电流为十到几百毫安,可直接控制小功率负载或作为大功率晶闸管的触发源。 2、开关量输入接口 (1)行程开
18、关、继电器触点与MCS-51单片机的接口、行程开关、继电器触点输入与MCS-51单片机的接口如图10-14所示。当触点闭合时,光电耦合器件的发光二极管因有电流流过而发光,使得右侧光敏晶体管导通,从而单片机的一根I/O端口线送高电平;而当触点未闭合时,光敏晶体管不导通,送向单片机的I/O端品引脚为低电平。 如果用按钮一来代替行程开关、继电器触点,其原理是相同的。所以,可以用此接口电路的原理采集输入按钮开关、行程开关、继电器触点等的状态信息。对于类似上述输入的开关信号。(2)按键开关与M51系列单片机的接口,按键一或者钮子开关类器件,可将高电平(或低电平)经单片机的I/O引脚输入单片机。 如图10
19、-15所示,根据8路开关的状态,当开关闭合时程序分别转移至KF1KF8的程序。图中8路开关通过扩展输入接口74LS244与AT89S51的P0口相连,开关闭合时产生低电平,当P3.0和RD均为低电平时才能选通74LS244。ORG 0100HSTART:CLRP3.0;准备选通74LS244读入开关状态MOVXA,DPTR;读P0口数据(只需操作)RRCAJNCKF1;如果D0为低电平,转KF1RRCAJNCKF2;如果D1为高电平,转KF2RRCAJNCKF3;如果D2为低电平,转KF3RRCAJNCKF4;如果D3为低电平,转KF4RRCAJNCKF5;如果D4为低电平,转KF5RRCAJ
20、NCKF6;如果D5为低电平,转KF6RRCA JNCKF7;如果D6为低电平,转KF7RRCAJNCKF8;如果D7为低电平,转KF8SJMP START3、功率输出电路的控制继电器常用于控制电路的导通和断开,包括电磁继电器、接触器和干簧管。其工作原理是利用线圈产生磁场,吸引内部的衔铁,使动片离开常闭结点,与常开结点连通,实现电路的通断。根据线圈所加电压类型分为直流继电器和交流继电器两大类,其中直流继电器常用于单片机系统的输出接口。在驱动大功率设备时,经常得用继电器作为中间驱动源,通过这个驱动源,可以完成从低压直流到高压交流的过渡。如图10-16所示。控制信号经光电隔离后,继电器控制线圈由直
21、流部分控制,而其输出触点则可以直接控制220V基至更高的电压。在设计时要考虑3个方面: (1)驱动电压与继电器的额定电压相匹配。例如,额定吸合电压为12V的继电器,驱动电压应在12V左右。驱动电压太小,将引起继电器抖动,甚至不吸合;驱动电压太大,会因线圈过流而损坏。 (2)控制回路的工作电流要小于继电器的额定触点电流。 (3)由于电器的控制线圈有一定的电感,在关断瞬间能产生较大的反电势,因此在继电器的控制线圈上反向并联一个二极管用于电感反向放电,用来保护驱动晶体管不会击穿。 (4)对于驱动电流较大的继电器,可以采用达林顿输出的光耦合器件直接驱动。也可以在光电耦合器件与继电器之间再加一级晶体管驱
22、动,例如S8050、S8550、S9012S9015等。 1、双向晶闸管输出接口 如图10-17为MOC3041与双向晶闸管的接线图,双向晶闸管具有双向导通功能,开关无触点,且能在交流、大电流的应用场合使用,在工业领域应用极为广泛。双向晶闸管器件也称光耦合双向晶闸管驱动器,与一般的光耦合器不同,其输出部分是硅光敏双向晶闸管,有的还带有过零触发检测器,用于保证在电压接近为零时触发晶闸管。常用的有MOC3000系列等,如MOC3011用于110V交流、MOC3041用于220V交流。 2、固态继电器数出接口 固态继电器是(SSR)是近年来发展起来的一种新型电子继电器,其输入控制电流小,用TTL、H
23、TL、CMOS等集成电路或简单的辅助电路就可以直接驱动,因此特别适宜在控制现场作为输出功率控制组件。其输出利用晶体管或晶闸管驱动,无接触电,与普通的电磁继电器和磁力开关相比,具有无机械噪声、无抖动和回跳、开关速度快、体积小、质量轻、寿命长、工作可靠等特点,并且耐冲力、抗腐蚀,因此,目前已经逐步取代传统的电磁式继电器和磁力开关作为开关量输出控制组件。 图10-18是固体继电器内部逻辑图。它由光电耦合电路、触发电路、开关电路、过零控制电路和吸收电路5部分组成。它被封装成一个整体,外面只有4个引脚(图10-18中的A、B、C、D)。图10-18中固态继电器分为过零型SSR,非过零型SSR,非过零型S
24、SR没有“过零控制电路”组成。 按负载类分类,固态继电器分为直流型和交流型两类。 、直流型固态继电器 主要用于直流大功率控制场合。其输入为光电耦合电路,可用OC门和经晶体管直接驱动,驱动电流一般为330mA,输入电压为530V。其输出端为晶体管输出,输出电压为30180V。 、交流型固态继电器 分为非过零型和过零型,二者都是用双向晶闸管作为开关器件。对于非过零型SSR,在输入信号时,不管负载电源电压相位如何,负载端立即导通;图10-20为非过零型交流固态继电器的控制波形。而过零型必须在负载电源电压接近零且输入控制型号有效时,输出端负载电源才导通,可以抑制射频干扰。当输入端的控制电压撤销后,流过双向晶闸管负载电流为零时才关断。图10-19为过零型交流固态继电器的控制波形。图10-19 过零型交流固态继电器的控制波形 图10-20 非过零型交流固态继电器的控制波形 对于交流型SSR,其输入电压为332V,输入电流为332mA,输出工作电压为交流140400V。图10-21采用交流型固态继电器控制一个小型气泵的电路图。图10-21 SSR控制小型功率泵电路图