第十章 单片机并行口线_第1页
第十章 单片机并行口线_第2页
第十章 单片机并行口线_第3页
第十章 单片机并行口线_第4页
第十章 单片机并行口线_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

第10章

单片机的并行口线扩展及应用10.1并行口线扩展

10.2输出口线的驱动与隔离

10.1并行口线扩展

10.1.1通过锁存存器扩展并行接口10.1.2可编程并行接口芯片815510.1并行口线扩展

10.1.1通过锁存存器扩展并行接口

51单片机本身有4个8位的I/O口线,一般情况下足以满足我们的要求,在需要较多的I/O端口时,可以用扩展I/O口线的方法:(1)采用74LS244,74LS273芯片实现存储器映像方式的I/O口线扩展;(2)采用8155、8255可编程I/O芯片的I/O口扩展;(3)采用串行转并行的方式的I/O口扩展。51系列单片机通过总线扩展外设的方法如图4-1所示。图10-151系列单片机的扩展

并行输入扩展通常采用缓冲器74LS244实现输入口线扩展的原理图如图10-2所示,在图10-2中,采用3-8译码器74LS138进行地址译码,74LS138的ABC输入端接地址线为A0A1A2,74LS138使能端接G1aG2aG2B,分别接A15A14及,因此只有在A15为1,A14为0和信号有效,即执行MOVXA,@DPTR指令,且DPTR满足相应地址条件时,输入端的状态才能被读入到A中,实现输入端口的扩展功能。输出端口的扩展功能如图10-2所示,与输入端口不同的是74LS244缓冲器换成了74LS2738D触发器及信号换成了,当执行MOVX@DPTR,A时,地址符合条件译码器输出有效,同时使能端WR也有效,输出的数据由A中送到8D触发器74LS273上并锁存住,完成了输出A中内容到74LS273并锁存的功能,实现了输出口线的扩展功能。10-2采用74LS244的输入口线扩展图10-3采用74LS273的输出口线扩展图10-3是同时扩展输入和输出的电路,在图10-3中地址译码采用线译码方式,即采用A15地址线(P2.7)完成,8000H地址译码,当对8000H地址进行MOVXA,@DPTR和MOVX@DPTR,A时,分别从74LS244及74LS273上输入或输出信号,采用此方法可以同时扩展多片74LS244或74LS273,实现多I/O口的扩展,当扩展数量较多时,应注意P0口的带载能力,可以在P0口上加缓冲器实现增强驱动能力,但需要注意的是P0口中数据的流向,如果只扩展输入口线或只扩展输出口线,则可以采用74LS244单向缓冲器进行缓冲,如果同时扩展输入及输出口线,应采用74LS245这样的双向缓冲器进行驱动能力扩展。如图10-4所示。图10-4同时有输入,输出口线扩展电路10.1.2可编程并行接口芯片8155图10-58155的引脚图8155是一种可编程的并行I/O插口芯片。有2个8位1个6位并行I/O口一个14位计数器的及256BRAM。8155的引脚见图4-5所示。

1、8155各引脚功能说明如下:

RST:复位信号输入端,高电平有效。复位后,3个I/O口均为输入方式。

AD0~AD7:三态的地址/数据总线。与单片机的低8位地址/数据总线(P0口)相连。单片机与8155之间的地址、数据、命令与状态信息都是通过这个总线口传送的。

:读选通信号,控制对8155的读操作,低电平有效。:写选通信号,控制对8155的写操作,低电平有效。:片选信号线,低电平有效。IO/:8155的RAM存储器或I/O口选择线。当IO/=0时,则选择8155的片内RAM,AD0~AD7上地址为8155中RAM单元的地址(00H~FFH);当IO/=1时,选择8155的I/O口,AD0~AD7上的地址为8155I/O口的地址。ALE:地址锁存信号。8155内部设有地址锁存器,在ALE的下降沿将单片机P0口输出的低8位地址信息及,IO/的状态都锁存到8155内部锁存器。因此,P0口输出的低8位地址信号不需外接锁存器。

PA0~PA7:8位通用I/O口,其输入、输出的流向可由过程控制。

PB0~PB7:8位通用I/O口,功能同A口。

PC0~PC5:有两个作用,既可作为通用的I/O口,也可作为PA口和PB口的控制信号线,这些可通过过程控制。

TIMERIN:定时/计数器脉冲输入端。

TIMEROUT:定时/计数器输出端。

VCC:+5V电源。2、8155的地址编码及工作方式

在单片机应用系统中,8155是按外部数据存储器统一编址的,为16位地址,其高8位由片选线提供,=0,选中该片。

当=0,IO/=0时,选中8155片内RAM,这时8155只能作片外RAM使用,其RAM的低8位编址为00H~FFH;当=0,IO/=1时,选中8155的I/O口,其端口地址的低8位由AD7~AD0确定,如表10-1所示。这时,A、B、C口的口地址低8位分别为01H、02H、03H(设地址无关位为0)。表10-18155芯片的I/O口地址AD7~AD0选择I/O口A7A6A5A4A3A2A1A0××××××××××××××××××××××××××××××000011001100010101命令/状态寄存器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所示。在ALT1~ALT4的不同方式下,A口、B口及C口的各位工作方式如下:

ALT1:A口,B口为基本输入/输出,C口为输入方式。

ALT2:A口,B口为基本输入/输出,C口为输出方式。

ALT3:A口为选通输入/输出,B口为基本输入/输出。PC0为AINTR,PC1为ABF,PC2为,PC3~PC5为输出。

ALT4:A口、B口为选通输入/输出。PC0为AINTR,PC1为ABF,PC2为,PC3为BINTR,PC4为BBF,PC5为。图10-68155命令寄存器格式8155内还有一个状态寄存器,用于锁存输入/输出口和定时/计数器的当前状态,供CPU查询用。状态寄存器的端口地址与命令寄存器相同,低8位也是00H,状态寄存器的内容只能读出不能写入。所以可以认为8155的I/O口地址00H是命令/状态寄存器,对其写入时作为命令寄存器;而对其读出时,则作为状态寄存器。图10-78155状态寄存器格式3、8155的定时/计数器

8155内部的定时/计数器实际上是一个14位的减法计数器,它对TIMERIN端输入脉冲进行减1计数,当计数结束(即减1计数“回0”)时,由TIMEROUT端输出方波或脉冲。当TIMERIN接外部脉冲时,为计数方式;接系统时钟时,可作为定时方式。

定时/计数器由两个8位寄存器构成,其中低14位组成计数器,剩下的两个高位(M2,M1)用于定义输出方式。其格式如图10-8所示。图10-88155定时/计数器控制字10.2输出口线的驱动与隔离驱动芯片

10.2.2光耦合器件10.2输出口线的驱动与隔离

驱动芯片

开关量的输入/输出,从原理上讲十分简单,在控制现场经常遇到。CPU只要通过对输入到端口的信息进行分析,判断其状态是“0”还是“1”,就可得知开关是“闭合”的还是“断开”的。对于软件设计者来说,如果要控制某个执行器的工作状态,只需在编程时送出“0”或者“1”,即可操作执行机构。但是由于工业现场存在着电、磁、振动、温度等各种干扰,再加上各类执行器所要求的一电压量及功率不同,所以在接口电路中除根据需要选用不同的元器件来设计电路外,还需要考虑各种缓冲、隔离和驱动电路的设计。见图10-9单片机驱动口线的几种接法.图10-9单片机口线驱动其它电路的几种接法

常用驱动芯片有ULN2803,7407等,见图10-10所示。

八达林顿晶体管阵列ULN2803中的八NPN达林顿连接晶体管是低逻辑电平数字电路(如TTL,CMOS或PMOS/NMOS)和大电流高电压要求的灯、继电器、打印机锤和其它类似负载驱动理想器件。广泛用于计算机,工业和消费类产品中。所有器件的集电极开路输出并接有用于瞬变抑制的续流钳位二极管。ULN2803的设计与标准TTL系列兼容。7407是一种集电极开路的驱动芯片,用它可以驱动小型电器的电路.由于集电极开路,故可以由电源经负载到7407输出端,然后到地形成新的控制回路。常用的驱动电路如图10-10所示,图10-11是ULN2803驱动小型继电器的电路。(a)ULN2803(b)7407(C)7406图10-10常用的驱动芯片图10-11ULN2803驱动小型继电器的电路10.2.2光耦合器件

1、光耦合器件原理

在单片机应用系统中,为了防止干扰,一般采用隔离技术,I/O的隔离最常采用的是光耦合器。光耦合器是以光为媒介传输信号的器件,它把一个发光二极和一个光敏晶体管封装在一起,发光二极管加上正向输入电压信号(>1.1V)就会发光。光信号作用在光敏晶体管上输出信号。光电耦合器的输入电路和输出电路是绝缘的,是把“电的联系”转化为“光的传输”,再把“光的传输”转化为“电的联系”。即采用光耦合器件时,单片机用的是一组电源,外围器件用的是另一组电源,两者之间完全隔离了电气联系,而通过光的联系来传输信息。一路光耦合器可以完成一路开关量的隔离,如果将8路或16路一起使用,就能实现8位数据或16位数据的隔离。

光耦合器的输入侧都是发光二极管,但是输出侧则有多种结构,如光敏晶体管、达林顿晶体管、TTL逻辑电路以及光敏晶闸管等。光电耦合器的主要参数有:

(1)导通电流和截止电流:当发光二极管流过一电流时,光耦合器输出端处于导通状态;当流过发光二极管的电流小于某一值时,光耦合器输出端截止。不同的光耦合器通常有不同的导通电流,一般在10~20mA之间。

(2)频率响应:由于受发光二极和光敏晶体管响应时间的影响,开关信号传输速度受光耦合器频率特性的影响,普通光耦只能传输10kHz以内的脉冲信号。因此,高频信号传输中要考虑其频特性。在开关量I/O通道中,信号频率一般较低,不会受光耦合器频率特性的影响。(3)输出端工作电流I是指光耦合器导通时,通过光敏晶体管的客定电流以,它代表了光耦合器的驱动能力,与电流传输比Ic/If有关,如输出端是单个晶体管的光耦合器如4N25的电流传输比≥20%,输出端是达林顿晶体管的光耦合器如4N33的电流传输比≥500%。

(4)输出端暗电流:是指光耦合器处于截止状态时,流过光敏晶体管的额定电流。对光耦合器来说,此值越小越好,以防止输出端的误触发。

(5)输入/输出压降:分别指示发光二极管,一般在1.2~1.5V之间。

(6)隔离电压:是指光耦合器对电压的隔离能力。

光电耦合器二极管侧的驱动电路可采用门电路直接驱动。一般的门电路能力有限,常选用带OC门的电路(如7406反向驱动器、7407同向驱动器)进行驱动。根据受光源结构的不同,可以将光耦合器件分为晶体管输出型和晶闸管输出型。晶体管输出型光耦合器内部结构如图10-12所示。在晶体管输出的光耦合器件中,受光源为光敏晶体管。光敏晶体管可能有基极,如图10-12(a)所示的4N25,此外还有4N27、4N38等,如图10-12(b)所示的TLP521,此外还有TLP421,TLP621等。部分光耦合器输出回路的晶体管采用达林顿结构,用来提高电流传输比,如图10-12(c)所示的4N33,此外还有H11G1、H11G2、H11G3等。

晶闸管输出型光耦合器内部结构如图10-13所示晶闸管(俗称可控硅)输出的光耦合器件受光元件为光敏晶闸管。输入回路驱动电流是发光二极的工作电流,一般为10~30mA。输出回路中的光敏晶闸管可耐高压,4N40和MOC3041的耐压值高达400V,MOC3009~3012的输出耐压值电压为250V,工作电流为十到几百毫安,可直接控制小功率负载或作为大功率晶闸管的触发源。

2、开关量输入接口

(1)行程开关、继电器触点与MCS-51单片机的接口、行程开关、继电器触点输入与MCS-51单片机的接口如图10-14所示。当触点闭合时,光电耦合器件的发光二极管因有电流流过而发光,使得右侧光敏晶体管导通,从而单片机的一根I/O端口线送高电平;而当触点未闭合时,光敏晶体管不导通,送向单片机的I/O端品引脚为低电平。

如果用按钮一来代替行程开关、继电器触点,其原理是相同的。所以,可以用此接口电路的原理采集输入按钮开关、行程开关、继电器触点等的状态信息。对于类似上述输入的开关信号。(2)按键开关与M51系列单片机的接口,按键一或者钮子开关类器件,可将高电平(或低电平)经单片机的I/O引脚输入单片机。

如图10-15所示,根据8路开关的状态,当开关闭合时程序分别转移至KF1~KF8的程序。图中8路开关通过扩展输入接口74LS244与AT89S51的P0口相连,开关闭合时产生低电平,当P3.0和RD均为低电平时才能选通74LS244。ORG

0100H

START:CLR P3.0 ;准备选通74LS244读入开关状态

MOVX A,@DPTR ;读P0口数据(只需操作)

RRC A

JNC KF1 ;如果D0为低电平,转KF1

RRC A

JNC KF2 ;如果D1为高电平,转KF2

RRC A

JNC KF3 ;如果D2为低电平,转KF3

RRC A

JNC KF4 ;如果D3为低电平,转KF4

RRC A

JNC KF5 ;如果D4为低电平,转KF5

RRC AJNC KF6 ;如果D5为低电平,转KF6

RRC A

JNC KF7 ;如果D6为低电平,转KF7

RRC A

JNC KF8 ;如果D7为低电平,转KF8

SJMPSTART3、功率输出电路的控制

继电器常用于控制电路的导通和断开,包括电磁继电器、接触器和干簧管。其工作原理是利用线圈产生磁场,吸引内部的衔铁,使动片离开常闭结点,与常开结点连通,实现电路的通断。根据线圈所加电压类型分为直流继电器和交流继电器两大类,其中直流继电器常用于单片机系统的输出接口。在驱动大功率设备时,经常得用继电器作为中间驱动源,通过这个驱动源,可以完成从低压直流到高压交流的过渡。如图10-16所示。控制信号经光电隔离后,继电器控制线圈由直流部分控制,而其输出触点则可以直接控制220V基至更高的电压。

在设计时要考虑3个方面:

(1)驱动电压与继电器的额定电压相匹配。例如,额定吸合电压为12V的继电器,驱动电压应在12V左右。驱动电压太小,将引起继电器抖动,甚至不吸合;驱动电压太大,会因线圈过流而损坏。

(2)控制回路的工作电流要小于继电器的额定触点电流。

(3)由于电器的控制线圈有一定的电感,在关断瞬间能产生较大的反电势,因此在继电器的控

温馨提示

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

评论

0/150

提交评论