最新日志

发表于:2007-12-30 1:48:29
标签:无标签

0

计算机的并行接口(3)

3.   IEEE1284信号及脚序

IEEE-1284定义了一对一的异步双向并行接口。其中PC机使用A型接头,DB-25孔型插座,包括17条信号线和8条地线,信号线又分为3组,控制线4条,状态线5条,数据线8条。

打印机使用B型接头,为36PIN 0.085inch间距的Champ连接器,称Centronics连接器

 36PIN Centronics连接器的各脚信号的含义

C型:新的Mini-Centronics 36PIN连接器,0.050inch间距,既可用于主机,也可用于外设

D型25针和36针Centronics的针脚定义对照:

A型、B型、C型连接器的针脚定义对照:

4.   IEEE1284接口的对接:

PC机DB-25与打印机Centronics 36PIN连接器的信号对应关系:

PC机边A型(DB-25)与打印机边B 型(Centronics 36PIN)连接器的对接:

PC机边A型(DB-25)与打印机边C 型(Mini-Centronics 36PIN)连接器的对接:

PC机边C型(Mini-Centronics 36PIN)与打印机边B 型(Centronics 36PIN)连接器的对接:

5.   IEEE1284硬件接口

IEEE-1284定义了2种级别的接口兼容性,Level I 用于产品不需要高速模式,但需要利用反向通道能力的场合;Level II用于长电缆和高速传输率场合。

并行接口输出的是TTL标准的逻辑电平,输入信号也要符合TTL标准。这种特性可以使接口容易应用在电子设计中。大部分的PC并行接口能吸收和输出12mA左右的电流,如应用时小于或大于这个值,应使用缓冲电路。

为了保持与早期的Centronics 接口兼容,使用OC(open collector)驱动器,使用上拉电阻(pull-up resistor)标准电阻值为2.2k欧或4.7k欧。控制线与状态线仅要求上拉电阻Rp,数据线和Strobe线还要求串联电阻Rs来匹配线路阻抗,调整串联电阻值使其与驱动器的输出阻抗之和等于45欧到55欧的线路阻抗。比如驱动IC输出阻抗为15欧,则需要33欧的串联电阻。

IEEE-1284接口芯片:

因为最小输出驱动电压为2.4V, 标准TTL的+5V或低压TTL 的+3.3V的芯片都可以使用。

Fairchild、ST、TI公司都有类似芯片,如74ACT1284、74LVC161284、74LV161284等,还有专用的ESD芯片74F1071等。

6.    IEEE1284信号规格表

 

本文参考了以下资料,表示感谢:

温正伟原载电子报的资料

http://www.interfacebus.com/Design_Connector_1284.html

http://ckp.made-it.com/ieee1284.html

http://www.fapo.com/1284int.htm

http://zone.ni.com/devzone/cda/tut/p/id/3466

http://www.homestead.co.uk/

点击此处查看原文 >>

系统分类: 接口电路   |    用户分类: 无分类    |    来源: 整理

评论(0) | 阅读(1052)
发表于:2007-12-30 1:45:50
标签:无标签

0

计算机的并行接口(2)

2.  IEEE1284定义的5种工作模式

为了提高Centronics接口的性能,也要兼容过去的标准,IEEE1284定义了5种工作模式:

SPP模式:Standard Parallel Port标准并行接口,也称为Compatibility mode兼容模式, Nibble模式:从PC机到外设8-bit数据线,反向4-bit数据线

Byte模式:8-bit双向传输,速率在50KB/s 到150KB/s之间

EPP模式:Enhanced Parallel Port增强并行接口,允许任一方向的高速字节传输

ECP模式:Extended Capabilities Port扩展功能并行接口,允许PC机发送数据块

符合IEEE 1284标准的并口,使用设备ID(Device identification sequence)来实现即插即用(Plug and Play)配置,使并口更易于使用。各种模式都可以使用相同的连接器和电缆连接方式,因硬件和编程方式的不同,传输速度可以从50K Bits/秒到2MB/秒不等。

2.1SPP模式:即传统的Centronics并行接口,所以也称Centronics mode

提供基本的信号,包括8-bit数据线,4条控制线(Strobe、Initialize Printer、Select Printer、Auto Feed line)和5条状态线(Busy、Acknowledge、Select、Paper Empty、Fault),需要三个不同的寄存器来进行数据的读写操作。

SPP模式是最基本的工作模式,异步、字节单向传输,数据率在50KB/s 到150KB/s之间。使用AB-cable 电缆可传6米,而使用新的CC-cable 电缆可达10米。

基本的SPP 模式的时序如图:

当打印机准备好接收数据,设BUSY为低,主机发出有效的数据到数据线,等待至少500ns然后发出STROBE负脉冲持续至少500ns,有效的数据在STROBE上升沿后至少要维持500 ns 。打印机接收数据并设BUSY有效以指示处理数据,当打印机完成数据接收,发出ACK脉冲至少500ns,然后清除BUSY以指示准备好接收下一个字节数据。

Centronics标准的握手信号略有不同,nStrobe为最小宽度大于1us的负脉冲,nAck为宽度大于5us的响应负脉冲,由于nAck信号的负脉冲较短,一般不会查询它,而是查询Busy。

主机软件通过4步来完成1字节数据通过并口的传输:

1.    把有效数据写入数据寄存器

2.    检查BUSY状态线,等待其无效(0)

3.    写控制寄存器,使STROBE有效(0)

4.    写控制寄存器,使STROBE失效(1)

SPP模式要求的最小的建立时间、保持时间和脉冲宽度限制了其性能,考虑到软件的等待时间,IEEE1284最大的数据传输率为150 kbytes/s,而Centronics典型为10 kbytes/s,这对于点阵行式打印机已经足够了,但对于高速的激光打印机就显露出不足。

SPP模式下的信号定义:

为操作并行口,SPP定义了寄存器,并映射到PC机的I/O空间。寄存器包括了以并口地址为基址的3块连续的寄存器,并口地址常见为3BCH、378H和278H,其中都包括数据、状态和控制寄存器,分别对应数据、状态和控制信号线操作,通常称为数据端口、状态端口和控制端口。打印机卡1的地址常为378H,其中数据口0378H、状态口0379H、控制口037AH;打印机卡2的地址常为278H,其中数据口0278H、状态口0279H、控制口027AH。支持新的IEEE 1284标准的并口,使用8到16个寄存器,地址为378H or 278H,即插即用(Plug and Play)兼容的的并口适配器也可以重新加载。

并口的寄存器定义:

数据寄存器:所占用的地址是并行接口的基地址,对应于于接口的2-9针

状态寄存器 :占用的地址是基地址加1,对应于接口的10,11,12,13,15针,是只读寄存器,其中包含一个IRQ中断位(由Ack相反后形成),当有中断发生这个数据位为“0”。 Bit7(引脚11)在输入+5V电平时,数据值为”0”,有反转的特性。

控制寄存器 :占用的地址是基地址加2,对应于接口的1,14,16,17针,其中Bit0,Bit1,Bit3有反转的特性。Bit4为IRQ应用,当向Bit4写入“1”时,将使ACK(引脚10)信号反相后成为中断请求IRQ信号,通常为IRQ5或IRQ7。

 并口使用的3BCH、378H和278H三个基地址几乎都支持SPP、ECP和EPP模式(3BCH这个地址在早期的并口打印机适配器上不支持EPP和ECP模式)。三个不同基地址的地址段如下:

一些集成的1284 I/O控制器使用FIFO buffer传输数据称为Fast Centronics或Parallel Port FIFO Mode,也使用SPP协议,但用硬件产生strobe信号来实现控制信号握手,使数据率能超过500KB/s。然而,这不是IEEE 1284定义的标准模式。

2.2Nibble模式:用于从打印机或外部设备得到反向数据的常用方式,

Nibble模式利用4条状态线把数据从外设传回电脑。标准的并行口提供5条外设到PC机的信号线,用于指示外设的状态,利用这些信号线,外设可以分2次发送1字节(8-bit)数据,每次发半字节(nibble:4-bit)信息。因为nACK信号一般用来提供外设中断,所以难以把传输的nibble(半字节)信息通过状态寄存器(Status register)合成1字节,需要软件读状态信号并作相应操作来得到正确的字节信息。Nibble模式的数据率为50kbps(6米电缆),使用新型10米CC-cable电缆的数据率为150 kbps。Nibble模式的优势在于具有并口的PC机都可以执行这种方式,但只能用于反向通道为低速率的场合。

下表定义了Nibble模式的信号:

下图描述了Nibble模式的基本时序

Nibble模式数据传输步骤:

1.  主机通过设置HostBusy为低表明可以接收数据

2.  外设把第一个半字节(nibble)输出到状态线

3.  外设设置PtrClk为低指示nibble数据有效

4.  主机设置HostBusy为高指示接收到nibble数据,而正在处理

5.  外设设置PtrClk为高应答主机

6.  重复步骤1到5来接收第二个半字节(nibble)

Nibble模式与SPP模式相似,需要软件通过设置和读取并口的控制信号线来实现协议。Nibble模式与SPP模式结合建立完整的双向通道,形成最简单的双向传输方式。从PC机到外设8-bit数据线,反向4-bit数据线,支持单向打印机接口,提供了全速率的前向传输和半速率的反向传输,速率在50KB/s 到150KB/s之间。

2.3Byte模式:在数据线上实现反向传输的方式

Byte模式利用数据线把8-bit数据从外设传输到主机。标准并行口的8-bit数据线只能从主机向外设单向传输,需要抑制住控制数据线的驱动器,使数据可以从打印机传到电脑。Byte模式数据传送,一次传送一个字节,与nibble模式下需要的两数据周期不同,速度和由电脑到打印机的一样,在50KB/s 到150KB/s之间,使用新型CC-cable可在10米电缆上达到500kbps。

下表定义了Byte模式的信号:

Byte模式数据传输步骤:

1.  主机通过设置HostBusy为低表明可以接收数据

2.  外设把第一个字节(byte)数据输出到数据线

3.  外设设置PtrClk为低指示byte数据有效

4.  主机设置HostBusy为高指示接收到byte数据,而正在处理

5.  外设设置PtrClk为高应答主机

6.  重复步骤1到5来接收其他字节(byte)数据

下图描述了Byte模式的基本时序

制造商首先在IBM  PS/2并口上增加了对8-bit数据线的读取能力,实现Byte模式,使之成为双向口,称为扩展并口的Type 1。此外,还提供了Type 2和Type 3,使用DMA方式。在Type 2 和 3的DMA 写数据时,DMA控制器向数据寄存器写数据,而STROBE脉冲自动产生,当从外设收到ACK,发出DMA请求,下一个字节发出。外设可以设置BUSY 来延迟传输。在Type 2 和 3的DMA 读数据时,ACK脉冲产生DMA请求,发起对系统存储器的传输, DMA 控制器读取数据寄存器,STROBE脉冲自动产生。Type 2 和3的 DMA传输依照SPP模式时序进行。

虽然IBM定义了Type 2和3方式提高了并口的性能,但只有IBM计算机实现这种功能,缺乏软件来支持这种DMA特性。相比较,EPP和ECP 是种工业标准,为更广泛的硬件和软件制造商支持。

2.4EPP模式:Enhanced Parallel Port增强型并行端口,可实现高速双向数据传输

EPP模式由Intel、Xircom, and Zenith Data Systems设计,提供了一个高性能的并行接口,是IEEE1284标准中的一部分,可以和标准并行接口通用,有相同的寄存器映射关系,协议首先由Intel 386SL芯片组(82360 I/O chip)实现。

EPP模式的信号定义

EPP模式有一个数据周期和一个地址周期,提供了4种传输周期时序:

1.  数据写周期时序

2.  数据读周期时序

3.  地址写周期时序

4.  地址读周期时序

数据周期时序用于在主机和外设间传输数据,地址周期时序用于分配地址、通道、命令和控制信息。

EPP 地址写周期:主机首先设置WRITE*,并把地址信号发到数据线上,设置ASTROBE*;外设取消WAIT*,指示已准备接收地址字节;主机然后取消ASTROBE* ;外设在ASTROBE* 上升沿锁存地址数据,然后设置WAIT*,指示准备开始下一周期。

EPP 地址读周期:主机取消WRITE*,使数据线处于高阻状态,设置ASTROBE*;外设发地址字节到数据线,取消WAIT*指示地址有效;主机检测到WAIT*取消,读地址,然后取消ASTROBE;外设然后使数据线处于高阻状态,设置WAIT*,指示准备开始下一周期。

EPP 数据写周期:主机设置WRITE*,把数据字节发到数据线,设置DSTROBE*;外设取消WAIT*,指示准备接收数据;主机然后取消DSTROBE* ;外设在DSTROBE*上升沿锁存数据,然后设置WAIT*,指示准备开始下一周期。

EPP 数据读周期:主机取消WRITE*,使数据线处于高阻状态,设置DSTROBE* ;外设把数据字节发往数据线,取消WAIT*,指示数据有效;主机检测到WAIT*取消,读数据,然后取消DSTROBE*;外设外设然后使数据线处于高阻状态,设置WAIT*,指示准备开始下一周期。

EPP模式在3个SPP模式并口寄存器外又定义了5个寄存器, 用于把地址或数据自动发到并口数据线上,然后自动产生地址和数据的选通(strobe)信号。EPP模式的数据、状态和控制寄存器与SPP模式的配置相同。

把数据写入Auto Address Strobe寄存器,将把数据发到并口数据线,并伴随自动产生的ASTROBE*低脉冲信号;把数据写入任一Auto Data Strobe寄存器,将把数据发到并口数据线,并伴随自动产生的DSTROBE*低脉冲信号;当一个Auto Data Strobe寄存器在读取, DSTROBE*信号受脉冲控制,返回电平值。

EPP寄存器接口:

从软件角度看,EPP模式是扩展了SPP的并口寄存器。SPP的并口包括数据Data、状态Status和控制Control 3个寄存器,地址为并口基址(base address)的偏移(offset)。

EPP寄存器定义如下:

通过产生一个对“base_address+4”的 I/O 写指令,EPP控制器产生需要的数据写(Data_Write)周期的handshake信号和strobes用来传输数据。而对基址(ports 0到 2)的I/O 指令将实现标准并行口的操作,以保证与标准并口的兼容。而对"base_address + 3"的I/O 操作,会产生地址读写周期。Ports 5到7 的作用在不同硬件中有差别,可用作实现16-bit或32-bit的软件接口,或用作配置寄存器,也可能不使用。

标准并口的数据传输需要7个软件步骤,EPP增加了其他的硬件和寄存器,通过单I/O 指令自动产生控制strobes和数据传输的handshaking信号,保证以ISA 总线速度传输,最大数据率为2 Mbytes/s,在其他平台上可能达到10 Mbytes/s 。EPP的微处理器的总线结构使之易于直接与外设硬件通讯。EPP模式还有进一步的块传输能力,使用REP_IO指令,依靠主机适配器的支持。

EPP模式数据写时序的步骤:

1.    程序对PORT4 (EPP Data Port)执行I/O写周期

2.    nWrite信号有效,数据发送到并口

3.    设datastrobe有效,然后nWAIT 设置为低

4.    等待外设的响应 (nWAIT变为无效)

5.    设置datastrobe无效,结束EPP周期

6.    ISA 的I/O 周期结束

7.    nWAIT 设置为低,指示下一个周期开始

下图是EPP数据写时序的实例,CPU信号nIOW是用来强调全部的handshake在一次I/O中完成

注意,全部数据传输发生在一次ISA 的I/O 周期中,这表明使用EPP协议,数据传输率可为500KB/s到2MB/s,这样外设在性能上接近ISA卡。

因为使用互锁握手信号协议,数据可在很低的速率下传输。Nibble、Byte、EPP和ECP 模式都使用互锁握手信号协议。所谓互锁握手信号,指每次控制信号的变化都需要另一边的响应。

EPP模式允许任一方向的高速字节传输,但不是同时,是半双工方式,为光盘机、磁带机、硬盘机和网络适配器设计,数据率从500KB/S到2MB/S,使用AB-cable 电缆可传6米,而使用新的CC-cable 电缆可达10米。

2.5ECP模式:Extended Capability Port 扩展功能并行接口,也可实现高速双向数据传输

ECP模式是由Microsoft and Hewlett Packard提出,是对标准并口的扩展,作为打印机和扫描仪类的外设的高级通讯模式,允许图象数据压缩、排队中的FIFO(先入先出)和高速双向通信。数据传送速度大约2—4MB/S。

ECP协议重新定义了SPP模式的信号,如下表:

ECP模式提供了2种数据传输周期时序,可用于2个方向:

1.    数据周期data cycle

2.    命令周期command cycle

命令周期又分为2种类型,RLE(Run-Length Count)和通道编址(Channel address)。

RLE方式实现数据的实时压缩,压缩率可达64:1,特别用于打印机和扫描仪传输大量光栅图像数据(含有大量的相同数据串)时,但必须主机和外设都支持才可以实现。通道编址与EPP的地址有不同,是用于一种物理设备包括多种逻辑设备的场合,比如FAX/Printer/Modem一体机。

ECP模式定义前向传输为主机到外设,有2种前向传输周期,当HostAck 为高,指示进行data周期;当HostAck为低,command 周期进行,数据描述用RLE count 或 Channel address,数据字节的Bit 8用来指示RLE或是Channel address,如果bit 8为0,则bit 1-7描述Run Length Count (0-127),如果bit 8为1,则bit 1-7描述Channel address (0-127),下图描述了一个data周期和一个command周期的时序。

ECP模式的前向传输时序:

1.    主机发送数据到数据线,并设置HostAck 为高来指示一个data cycle 的开始

2.    主机设置HostClk为低,指示数据有效

3.    外设设置PeriphAck 为高响应主机

4.    主机设置HostClk为高,这是边缘触发信号,用于使数据存入外设

5.    外设设置PeriphAck为低,指示准备好接收下一字节

6.    循环重复,但这次为command cycle,因为HostAck为低

注意:接口2侧都使用FIFO ,发出的数据都认为已被接收。在第4步,HostClk变为高,data 被触发进入外设,数据指针计数器更新。在有些情况下这有可能造成传输数据丢失。

ECP模式定义反向传输为从外设传输到主机,反向传输时,当并口线上数据有效,外设设置PeriphClk 为低,主机在接收数据后设置HostAck 为低。下图描述了反向通道的command周期紧随data周期的时序:

上图也显示出ECP和EPP协议的不同。在EPP模式,软件可以执行混合的读写操作,而不需要额外的协议;而在ECP模式,改变数据传输方向必须协商。主机要求反向传输通道需设置nReverseRequest并等待外设的nAckReverse的响应, 然后才可以进行反向数据传输。另外, 如果以前为DMA传输,软件必须等待DMA完成或中断DMA(要FIFO确定准确的已传输的数据量),然后要求反向通道。

ECP模式的反向Data和Command周期

1.    主机设置nReverseRequest 为低,要求反向传输通道

2.    外设设置nAckReverse 为低,响应主机

3.    外设发送数据到数据线,并设置PeriphAck 为高指示data 循环

4.    外设设置PeriphClk为低指示数据有效

5.    主机设置HostAck 为高确认

6.    外设设置PeriphClk为高,这是边沿触发信号,用于使数据存入主机

7.    主机设置HostAck为低,指示准备好接收下一个字节

8.    循环重复,但这次是command周期,因为PeriphAck为低

ECP FIFO的使用,无论DMA方式或可编程I/O方式,减弱了与ISA的关联,软件不会精确知道数据传输的状态,只关心传输是否完成。

在Microsoft 的规格书"The IEEE 1284 Extended Capabilities Port Protocol and ISA Interface Standard"中,定义了基于ISA的ECP模式的通用寄存器和适配器的工作模式。ECP寄存器利用了定义的6个寄存器,只需要3个I/O口操作,注意寄存器的定义与工作模式有关。

ECP寄存器描述:

ECP模式在3个SPP模式并口寄存器外又定义了6个寄存器, 用于把地址或数据自动发到并口数据线上,然后自动产生地址和数据的选通(strobe)信号。

ECP的Address和Data的FIFO包括至少16字节,可用于前向和反向传输,可以平滑数据流和提高数据率。向Address FIFO寄存器写数据,会自动发往并口。ECP的Data FIFO寄存器用于主机和外设间的数据传输。

ECP模式并口寄存器配置图:

ECP模式的目的是实现并口的即插即用(plug-and-play)性能和在Windows环境下进行高性能双向传输。ECP模式允许任一方向的高速字节传输,也是半双工方式,为打印机和扫描仪设计,数据率从500KB/S到1MB/S,使用AB-cable 电缆可传6米,而使用新的CC-cable 电缆可达10米。ECP主要使用DMA而不是直接的I/O操作,目的是传输大的数据块。

2.6)工作模式选择过程(Negotiation):

一个设备可能设计为有多种工作模式,但不能同时使用,每次只能选用一种。IEEE 1284发明了协商(negotiation)方式,主机必须要判断所连接的外设的能力以及使用的模式,决定出使用哪种IEEE1284模式,这种协商方式不会影响过去的设备,一个旧式设备不会响应协商的时序,但符合IEEE 1284标准的设备会响应这一时序,使主机获得设备的ID码(Device ID code) ,并通过对ECR寄存器的操作来选择一种较高的工作模式。

主机用Device ID序列来识别并口设备。Device ID是定义了外设特性和性能的ASCII字符串。因为没有一个授权中心来分派设备和制造商编码,在即插即用(Plug and Play)系统中,主机必须能够测定和识别加入的设备,并自动安装需要的设备驱动程序。

使用IEEE 1284的所有设备,上电时都为SPP模式。主机执行IEEE 1284工作模式选择的过程如下:

1. 把IEEE 1284的8-bit扩展码(extensibility code )发到数据线

2. 设置SelectIn信号线为高,并设置AUTOFD为低

3. 外设然后设PError为高、ACK为低、FAULT为高、Select为高表示为为IEEE1284标准设备(如果外设不设置这些信号,主机认为外设不是IEEE1284设备),然后做以下操作。

4. 使STROBE为低

5.使STROBE为高、AUTOFD为低

6. 如果extensibility code与提供的模式匹配,外设使PError为低、FAULT为低、Select为高

7. 外设使ACK为高,指示状态线可用

IEEE1284 扩展码:Extensibility Request Bytes

ECR寄存器用来设置当前工作模式,另外也用于软件确定安装于PC机的并口的性能。

ECR寄存器的模式:

如果要退出Nibble、Byte或ECP模式,设置SelectIn为低,而退出EPP模式主机要设置INIT信号有效,然后外设将恢复到SPP模式。

如果一个并口既支持SPP模式,也可实现其他双向模式,那么其前3个寄存器与标准并行口的寄存器完全一致,以便兼容过去的标准。

2.7)不同模式下25PIN D-sub连接器信号的不同定义:

点击此处查看原文 >>

系统分类: 接口电路   |    用户分类: 无分类    |    来源: 整理

评论(0) | 阅读(876)
发表于:2007-12-30 1:43:28
标签:无标签

0

计算机的并行接口(摘)

因为个人计算机(PC机)占有计算机市场的绝大部分份额,一般人能接触到的和认知中的计算机基本就是IBM PC计算机及兼容机,这种计算机使用INTEL X86硬件平台和MICROSOFT WINDOWS操作系统(早期为MS-DOS操作系统)的软件平台,并配有多种外部设备和输入输出接口,成为事实上的工业标准。并行接口就是其中常见的一种I/O接口。

并行接口一般称为Centronics接口,现在也称IEEE1284,最早由Centronics Data Computer Corporation公司在60年代中期制定。Centronics公司当初是为点阵行式打印机设计的并行接口,1981年被IBM公司采用,后来成为IBM PC计算机的标准配置。它采用了当时已成为主流的TTL电平,每次单向并行传输1字节(8-bit)数据,速度高于当时的串行接口(每次只能传输1bit),获得广泛应用,成为打印机的接口标准。1991年,Lexmark、 IBM、Texas instruments等公司为扩大其应用范围而与其他接口竞争,改进了Centronics接口,使它实现更高速的双向通信,以便能连接磁盘机、磁带机、光盘机、网络设备等计算机外部设备(简称外设),最终形成了IEEE1284-1994标准,全称为"Standard Signaling Method for a Bi-directional Parallel Peripheral Interface for Personal Computers",数据率从10KB/s提高到可达2MB/s(16Mbit/s)。但事实上这种双向并行通讯并没有获得广泛使用,并行接口仍主要用于打印机和绘图仪,其他方面只有的少量设备应用,这种接口一般被称为打印接口或LPT接口(目前新的打印机趋向使用USB或RJ-45 ETHERNET接口)。

1.    IEEE1284接口连接器与电缆

我们常见的并口,通常主机上是25针D型接口,打印机上是36针弹簧式接口(Centronics接口)。

IEEE1284标准规定了3种连接器,分别称为A、B、C型:

A型:25PIN DB-25连接器,只用于主机端。

DB-25孔型插座(也称FEMALE或母头),用于PC机上,外形如图:

 

 

25 pin D-SUB female connector at the PC

 

 

 

对应的针形电缆插头(也称MALE或公头)及序号如图:

 

 

 

 

 

这种A型的DB-25针型插座(也称MALE或公头),因为尺寸较小,也有少数小型打印机(如POS机打印机等)使用(非标准使用),但电缆要短:

 

 

B型:36PIN 0.085inch间距的Champ连接器,带卡紧装置,也称Centronics连接器,只用于外设

36PIN Centronics插座(SOCKET或FEMALE),用于打印机上,外形如图:

 

 

36 pin CENTRONICS female connector at the printer

 

 

 

 

 

对应的36PIN Centronics电缆插头(PLUG)及序号如图:

 

 

 

C型:新增加的Mini-Centronics 36PIN连接器,也称为half-pitch Centronics 36 connector (HPCN36),也有称MDR36,36PIN 0.050inch间距,带夹紧装置,既可用于主机,也可用于外设,目前还不够普遍,因有竞争力的新的接口标准的不断出现,估计将很难见到

Mini-Centronics 36PIN插座(socket)及序号如图:

 

 

 

 

 

 

 

 

 

36 pin MDR36 male connector

 

 

 

新接口还增加了两个信号线Peripheral Logic High和Host Logic High,用于通过电缆能检测到另一端是否打开电源

最早的Centronics并口电缆长度为2米,且只能支持10KB/s的数据率传输,对性能要求不高。为了把数据率提高到2MB/s以上,对IEEE1284电缆提出许多特殊要求:

1.   因为是并行数据,为避免传输时各BIT数据间的串扰,每条数据线都需要配合一条地线,形成双绞线结构

2.   每对信号和返回地线间的不平衡特性阻抗为62欧+/-6欧(在频带4M-16MHz上)

3.   线间串扰不超过10%

4.   电缆有屏蔽层,并与接头的屏蔽壳连接,使用360度包裹

典型的IEEE1284 电缆有如下6种,标准长度为10、20、30英尺(约3、7、10米):

  AMAM :Type A Male to Type A Male(一般用于计算机间互联)

  AMAF :Type A Male to Type A Female(一般用于延长线或连接A型口并行打印机)

  AB :Type A Male to Type B Plug(一般用于连接计算机和普通B型口打印机)

  AC :Type A Male to Type C Plug

  BC :Type B Plug to Type C Plug

  CC :Type C Plug to Type C Plug

其中前3种为目前常用的电缆,后3种是与新增加的C型接口相关的电缆。

注意:PC机上的并口与串行接口的DB-25有差别

PC机上的RS-232串口一般使用DB-9针型插座(也称MALE或公头)

 

 

一些旧式PC机上也配DB-25针型插座(也称MALE或公头)为COM2使用

 

 

RS-232串口打印机上则使用DB-25孔型插座(也称FEMALE或母头)

 

 

链式连接:依照IEEE 1284链式连接规格书,一个并口最多可以连接8个设备,而每个链式连接设备拥有2个并口连接器,1个主连接器(host connector)和一个直通连接器(pass through connector)。主机连到第一个设备的主连接器,其直通连接器连接下一个设备的主连接器,依次连接。而不支持链式连接的设备可接在最后1个设备的直通连接器上。不过目前常见的都是一对一连接,很少能见到这种设备。

各种尺寸的Subminiature D连接器(也就是常称为D-Sub的连接器):

各种尺寸外壳尺寸:DA、DB、DC、DD和DE。

触点数量:9、15、25、37和50

触点数量HD:15、26、44、62、78和104

电源用:3W3、3WK3、5W5、8W8和3、5、8单排高容量电源触点

类型:Board Mount(Right Angle、Through-Hole、Surface Mount、Dual Port、 Press-fit、Wire Wrap)、Cable(IDC、Crimp Snap-in、Solder Cup)

D-Sub连接器术语:

HD: High Density高密度,3排脚放入2排的外壳中,如15PIN放入9PIN壳中

Filtered: 抑制EMI或RF干扰

PC机上常见的D-Sub的连接器:

9-pin DE D-Sub 连接器:用作RS-232串口

15-pin DA D-Sub连接器:用作VGA视频输出口

25-pin DB D-Sub连接器:用作并口/打印机口

(通常分别称为DB9、DB15、DB25)

点击此处查看原文 >>

系统分类: 接口电路   |    用户分类: 无分类    |    来源: 整理

评论(0) | 阅读(1194)
发表于:2007-12-22 14:22:17
标签:无标签

0

RS-232 接口(4)

3.   RS-232 的电缆长度限制

RS-232的最初标准建议将电缆长度限制在50 ft以内,对于≤20 000 b/s的数据传输速度,可以使用任何类型的电缆。

后来的标准是在接收器规定了一个最大的电容2500 pF。这个数值包括了接收器的电容、电缆中连接器之间的动态电容以及导线与电缆屏蔽之间,或者在非屏蔽电缆中,导线和地线之间的电容。电容限制了回转速度,或者在输出切换的时候的电压变化速度。一个较高的电容导致一个较低的回转速度和较慢的跃迁。一个较高的电容还意味着一个电压变化需要更大的电流来对电容充电,因此驱动器总的电能消耗要更大一些。在导线之间的电容还能导致干扰。如果想要使用一个超出了电容限制的连接,可能仍旧能够进行通信,但是以更低的波特率。利用短电缆及相应的更小的电容,如果发送和接收端硬件都支持更高的速度,则可以比20 000 b/s更快的速度进行通信。

5.1 非屏蔽电缆

对于非屏蔽电缆,计算非屏蔽电缆的电缆长度的公式如下:

电缆长度=(2500—接收器输入电容)/(电缆电容×1.5)

  电缆长度的单位是ft,输入电容的单位是pF,电缆电容的单位是pF/ft。

带状电缆的典型电容是15 pF/ft,假定接收器的输人电容是100 pF,电缆最长可以达到106 ft((2500—100)/(15×1.5) )。一个单根非屏蔽双绞线的典型电容是12 pF/ft。仍然假定输入电容为100 pF, 则最大电缆长度为133ft。

5.2 屏蔽电缆

为电缆增加屏蔽缩短了最大长度,但是屏蔽有时对于阻止噪声混入电缆或者从电缆中“溢出”是需要的。对于屏蔽的双绞线,建议将导线到导线电容乘以3以便把导线到屏蔽的电容考虑在内。

  因此计算屏蔽导线的电缆长度的公式如下:

  电缆长度=(2500—接受器输入电容)/(电缆电容×3)

  电缆长度的单位为ft,输入电容的单位是pF,电缆电容的单位是pF/ft。

这就将屏蔽双绞线电缆的最大长度削减到66 ft。

5.3 双绞线

为了减少干扰,可以对RS-232使用双绞线电缆和多个接地线。每一根信号线应和一个接地线绞在一起。

5.4 电缆测试结果

RS-232-C标准规定,在码元畸变小于4%的情况下,传输电缆长度应为50 英尺(约15米),其实这个4%的码元畸变是很保守的,在实际应用中往往按码元畸变10-20%的范围工作的,所以最大距离会远超过15米。

美国DEC公司曾在允许码元畸变为10%得出下面实验结果。其中1 号电缆为屏蔽电缆,型号为DECP. NO. 9107723,内有三对双绞线,每对由22# AWG 组成,其外覆以屏蔽网。2 号电缆为不带屏蔽的电缆。型号为DECP. NO. 9105856-04是22#AWG 的四芯电缆。DEC 公司的实验结果

波特率bps

1号电缆传输距离(米)

2号电缆传输距离(米)

110

  1500  

900

300

1500

900

1200

900

900

2400

 300 

150

4800

 300 

75

9600

75 

75

 

6. 串口通信功能的实现

单片机实现串口通讯一般使用UART接口或利用GPIO口模仿异步串行通讯数据格式,外加驱动芯片连接RS-232口。

在PC机上一般直接调用Window API中的一系列标准的串口通信函数,来实现异步串行通讯,控制RS-232口。一般常用VC++或VB来编程。常用的串口通信函数:

CreatFile()函数:实现串口初始化并打开串口;

ReadFile()函数:接收串口传递过来的二进制流并返回数据到接收缓冲区中

WriteFile()函数:把应用程序发出的指令送到发送缓冲区以供串口接收

1. 打开串口

以下程序用于以同步方式打开串口COM1;

HANDLE hCom;

DWORD dwErrorHcomm="CreateFile"(“COM1”,GENERIC_READ|GENERIC_WRITE

,0, NULL,OPEN_EXISTING, 0, NULL);

if (hComm==(HANDLE)0Xffff)

{

dwError=GetLastError();

MessageBox(dwError);

}

2. 配置串口

配置串口是通过改变设备控制块DCB(Device Control Block)的成员变量值来实现的,程序实现如下:

DCB dcb

dcb.BaudRate=9600;//波特率为9600bps

dcb.ByteSize=8;//数据位8位

dcb.Parity=EVENPARTTY;//有校验

dcb.StopBits=ONESTOPRTT; //一个停止位

SetCommState(hCom,&dcb);

3. 数据读写

对串口进行读写与对文件进行读写所用的函数相同,具体为可采用查询、同步、异步或事件驱动等方法对串口进行读写所用函数如下所示:

bReadStatus=ReadFile(hCom,buffer,length,&length &m_lpOverlapped);

if(!bReadStatus)

{

if(GetLastError()=ERROR_IO_PENDING)

{

WaitForSingleObject(m_lpOverlapped,hEvent,1000);

return((char)length);

}

return 0;

}

//写入函数程序为:

bWriteStatus=WriteFile(hCom,buffer,length,&length,&m_lpOverlapped)

if(!bWriteStatus)

{

if(GetLastError()=ERROR_IO_PENDING)

{

WaitForSingleObject(m_lpOverlapped, hEvent,1000);

return((char)length);

}

return 0;

}

4. 程序的编制

用VC++进行程序的编制首先要对串口进行初始化,设定端口,通信速率和校验方式,并在使用前打开串口,程序部分如下:

{

Cdialog::OnInitDialog();//TODO: Add extra initialization here

m_comm.SetCommPort(1);//选择串口1

if(! m_comm.GetPortOpen())

m_comm.SetPortOpen(TRUE);//打开串口1

m_comm.SetSettings(“9600,n,8,1”); //设置串口参数

m_comm.SetRThreshold(1);

m_comm.SetInputMode(1);//设置二进制模式

return TRUE;

}

除了串口的位置和基本串口参数(数据传输速率9600bps,1位开始位,8位数据位,1位停止位,一位奇偶校验)设置外,为了实现实时数据采集功能,接受数据的读写要尽可能的快速,则设置RTHreshold=1即接收缓冲区收到一个字节产生OnComm事件InputLen=1每次读取一个字节。如果PC上位机在一定时间内不能将数据处理完,接收缓冲区会滞留数据,数据会产生丢失现象,我们必须对接受缓冲区进行适当的设置。RS-232 的缺陷及改进

由于RS-232标准开发较早,使用的是当时流行的DTL技术,随着技术的进步,越老越显露出其局限。

7.1)RS-232 的缺陷

1) 接口的信号为DTL电平,电压值较高,易损坏接口电路的芯片,又因为与TTL 电平不兼容故需使用电平转换电路方能与TTL电路连接。    

2) 传输速率较低,在异步传输时,波特率为20Kbps(现在已发展到超过115.2 Kbps)。 
3) 接口使用一根信号线和一根信号返回线而构成共地的传输形式,这种共地传输容易产生共模干扰,所以抗噪声干扰性弱。
4)传输距离有限,最大传输距离标准值为50英尺(约15米),实际上也只能 用在50米左右。     
5)接口为一对一连接

7.2)RS-422/485接口

为弥补其技术缺陷,后来又在其基础上发展了其他一些串行接口标准,最常见的是422/485:

RS-422(EIA-422):

标准全称是“平衡电压数字接口电路的电气特性”,收发都使用差分信号,为四线接口,还有一根信号地线(一定要接地,要求通信双方的地电位差小于1V),共5根线(+发、-发、+收、-收、地),一般使用双绞线传输差分信号,因此有良好的抗共模干扰能力。采用单独的发送和接收通道,为全双工方式,支持点对多的双向通信,允许在相同传输线上连接多个接收节点,最多可接10个节点,即一个主设备(Master),其余为从设备(Salve),从设备之间不能通信。

RS-422多节点构成网络。网络拓扑一般采用终端匹配的总线型结构,不支持环形或星形网络。发送驱动器A、B之间的正电平在+2~+6V,是一个逻辑状态,负电平在-2~-6V,是另一个逻辑状态。接收端A比B高200mV以上即认为是逻辑"1",A 比B 低200mV 以上即认为是逻辑"0"。

接收器输入阻抗为4k。RS-422需要一终接电阻,终接电阻接在传输电缆的最远端,要求其阻值约等于传输电缆的特性阻抗。在矩距离传输时(一般在300米以下)可不需终接电阻。

RS-422的最大传输距离为4000英尺(约1200米),最大传输速率为10Mb/s,其平衡双绞线的长度与传输速率成反比。在100kb/s速率以下,才可能达到最大传输距离;只有在很短的距离下才能获得最高速率传输,一般100米长的双绞线上所能获得的最大传输速率仅为1Mb/s。  

RS-485(EIA-485):

RS-485是从RS-422基础上发展而来的,许多电气规定与RS-422相仿,但一般采用二线方式,使用屏蔽双绞线,共有三条信号线(+A、-B、地),是半双工多点双向通信,总线上可接到32个设备。  

RS-485接收器最小输入阻抗为12k。需要2个终接电阻,在传输线的两端,其阻值要求等于传输电缆的特性阻抗。

为了安全起见,建议通信机器的外壳接大地。RS-422/485光隔转换器的所有外接电源的“地”必须全部连在一起但不要与计算机外壳地相连,因为电源“地”同时也是RS-485或 RS-422的信号“地”。当通信距离超过100米时建议最好使用光电隔离的通信接口转换器。RS-485 的国际标准并没有规定RS485 的接口连接器标准。

7.3)RS-422/485的电缆长度:

在使用RS422/485接口时,对于特定的传输线径,从发生器到负载其数据信号传输所允许的最大电缆长度是数据信号速率的函数,这个长度数据主要是受信号失真及噪声等影响所限制。

下图所示的最大电缆长度与信号速率的关系曲线是使用24AWG铜芯双绞电话电缆(线 径为0。51mm),线间旁路电容为52.5pF/m,终端负载电阻为100欧 时所得出。(曲线引自GB11014-89附录A)。

由图中可知,当数据信 号速率降低到90Kbit/S以下时,假定最大允许的信号损失为6dBV时, 则电缆长度被限制在1200M。实际上,图中的曲线是很保守的,在实 用时是完全可以取得比它大的电缆长度。 当使用不同线径的电缆。则取得的最大电缆长度是不相同的。例 如: 当数据信号速率为600Kbit/S时,采用24AWG电缆,由图可知最 大电缆长度是200m,若采用19AWG电缆(线径为0.91mm)则电缆长 度将可以大于200m; 若采用28AWG 电缆(线径为0.32mm)则电缆 长度只能小于200m。RS-485的远距离通信建议采用屏蔽电缆,并且将屏蔽层作为地线。
7.4)RS-422/485接口与RS-232对比的优势:

1) 逻辑“1”以两线A、B间的电压差为+2~+6 V表示,逻辑“0”以两线间的电压差为-2~-6V 表示,电平与TTL电平兼容,可方便与TTL 电路连接。
2)数据最高传输速率为10Mbps 
3) 接口是采用平衡驱动器和差分接收器的组合,抗共模干能力增强,即抗噪声干扰性好。     
4)接口的最大传输距离标准值为1200米(9600bps时),实际上可达 3000米

5)接口可为总线方式,允许连接多达128个收发器,具有多站能力,可方便地建立起设备网络。

虽然RS-422/485接口有如此对的优势,但RS-232仍是最普遍使用的串行通讯接口标准,这可能与PC机的普遍使用分不开,而RS-422/485往往只局限在一些特殊场合,主要是工业控制方面,比如需要总线式连接多个设备或需要长距离、高速度传输的地方,而且也往往使用RS-232转RS-422/485接口实现。

点击此处查看原文 >>

系统分类: 接口电路   |    用户分类: 无分类    |    来源: 整理

评论(0) | 阅读(1078)
发表于:2007-12-22 14:20:46
标签:无标签

0

RS-232 接口(3)

3.   RS-232的互连

如果需要连接不同类型的连接器,可以使用不同配置的适配器和电缆,或者自己制作适配器和电缆。所有的RS-232输出和输入必须能够承受任何其他RS-232信号,包括接地信号的短路而不受损坏。

4.1) 直连

在连接的两端都有相同类型的连接器的时候,要连接DTE和DCE,电缆可直接连接对应的每一根导线,引脚1到引脚1,引脚2到引脚2等等。

4.2925直连

如果连接一个9针和一个25针的连接器,使用如图所示的9到25针(或相反)的适配器。

 

 

 

 

 

 

 

 

 

4.3全握手连接(交互连接)

DTE与DTE之间连接,允许硬件握手,常用于计算机之间的互连。数据和握手信号输出连接到它们在另一台设备上的相应的输入 。

4.4循环回送连接

在一个循环回送连接中,握手信号输出循环回送给自身设备的相应输入,这在一台设备要求有握手信号而另一台不提供握手信号的时候就很有用处。如图所示:

数据线正常连接,但是握手信号输出循环回送到它们相应的输入,RTS、CTS、DSR和CD连接到一起。在这种方式下,无论什么时候只要DTE声明了RTS,也会出现DCE声明CTS、DSR和CD。一个变化是连接RTS和CTS,以及将DTR连接到DSR和CD。但是,使用这种类型的连接如果接收设备不能跟上发送速度就会导致数据错误。

4.5不使用硬件握手连接

3根导线连接。连接交换RD和TD线,因此每个TD连接到对应的RD。如图所示。

4.6串行打印机连接

串行打印机通常配置成DTE,因此TD和RD 必须在连接到一台PC机的时候交换。另外,很多打印机使用DTR作为握手信号,而有的PC软件假定CTS为握手信号。出现这种情况,电缆或者一个适配器必须将这台打印机的DTR,而不是RTS,连接到PC机的CTS。

4.7串口测试常用的环回方式

 

点击此处查看原文 >>

系统分类: 接口电路   |    用户分类: 无分类    |    来源: 整理

评论(0) | 阅读(894)
发表于:2007-12-22 14:18:56
标签:无标签

0

RS-232 接口(2)

3.       RS-232 接口的信号 

现在的RS-232接口常用于异步(Asynchronous)串行通讯,实际上也可以用于同步(Synchronous)串行通讯。

3.1RS-232 接口信号引脚及定义

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

数据传输分别使用PIN2和PIN3,DSR指示DCE(如MODEM)已启动,而DTR指示DTE(如计算机)已启动,DCD指示远端MODEM已接收到良好的载波信号。

DTE发出的RTS和DCE发出的CTS 用于控制。在多数异步传输方式下,RTS和CTS 在通讯过程中保持不变。然而在DTE连接在多点传输线上时,RTS用来打开和关闭MODEM的载波,因为多点传输线上在某个时间只能有一个发送者,以使多终端共用一对电话线。 每当一个DTE要发送数据,就使RTS有效, MODEM于是发出载波,一般要等待几毫秒使载波稳定,然后使CTS有效。DTE在收到CTS后开始发送数据。当DTE完成发送数据,就使RTS无效,MODEM于是使CTS无效并关闭载波。

时钟信号(PIN15、17和24) 仅用于同步通讯(synchronous communications)。MODEM从数据码流中取出稳定的时钟信号并发给DTE。注意,即使波特率相同时,发送和接收的时钟信号也不一定相同。

RS232 DB25

3.2PC机常用的RS-232 接口信号引脚及定义

IBM制造PC 机时将RS-232 简化成了DB-9连接器,后来成为事实标准。

 

 

 

 

 

 

 

 

 

 

旧式的PC 机有些带有DB-25针插座的串口连接器(一般为COM2),为公头插座(或称MALE),这与常见的DB-25的并口连接器不同,DB-25的并口使用25 芯孔插座(也称为母头或FEMALE)。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3.3)信号电平及电平转换

在RS-232-C中任何一条信号线的电压均为负逻辑关系。即:逻 辑“1” 为-5— -15V;逻辑“0”为 +5— +15V。噪声容限为2V,即 要求接收器能识别低至+3V的信号作为逻辑“0”,高到-3V的信号 作为逻辑“1” 。+3V到-3V之间称为死区,为抵抗线路噪声的干扰。但不同的设备有可能使用不同的电平门限,比如CCITT V.10 定义死区为+0.3V to -0.3V。也有的接收机把门限设为1V或更低。

逻 辑“1”表示 "idle" 状态(也称OFF或MARK),逻辑“0”表示"active"状态(也称ON或SPACE)。

这种信号方式源于当时主要使用的DTL电平,与现在数字电路常用的TTL电平不同,不能直接相连,中间需要加电平转换电路。

RS-232-C规定了25条引线,实际中有许多是很少使用的,如PC 机一般只有9条引线,3条输出5条输入,因PC 机有+12V和 -12V电源,常用的电平转换芯片为SN75185、GD75232等芯片,也有单独的驱动芯片MC1488、SN75188和接收芯片MC1489、SN75189。而DCE(数据通信设备)方有3条输入5条输出线,需使用对应驱动芯片SN75196、GD75323,但往往DCE只有5V单电源,这时一般使用内带电荷泵的芯片MAX207、SN65C3238、SN65C3243等, 甚至也有使用3.3V单电源的芯片。

一些情况下,设备与PC 机连接的RS-232 接口,不使用控制信号,仅使用三条接口线RXD、TXD、GND(如单片机通过UART连接PC 机),也只有单电源,使用内带电荷泵的单路收发芯片,MAXIM、TI、SIPEX、ST等公司都有这种芯片。

3.4)信号格式

RS-232最常使用异步串行传输,每个数据包含有7 或 8 bit数据位和起始位start,停止位stop, 校验位parity (可选用,也可用于指示位)。 传输数据的样值如图所示:起始位(低有效,通常在+3v到+15v之间),紧接着数据位(7或8 bit),校验位(根据协议选用),由停止位结束(通常返回逻辑高,电压在-3v到-15v之间)。注意:RS-232使用负逻辑。

3.5)串口鼠标

早期PC机使用串口鼠标,以标准的RS-232-C 输出信号 (+-12V) 作为输入。鼠标取用RS-232-C的输出线的电流(大约10mA),并发送计算机RS-232-C接收芯片可以识别的电平信号。鼠标一般输出信号为+-5V或0-5V ,有些输出+-12V。鼠标电路一般使用+5V电压,一般从DTR和RTS线产生MCU使用的正电源,而负电源一般取自TD,典型的机械鼠标需要4只红外LED做移动检测,一般使用二极管从DTR和RTS线取电,然后通过电阻加到4只LED上。鼠标总体需要10 mA 电流,工作电压6-15V。

 

 

 

 

 

 

鼠标能够正常工作,RTS和DTR线必须为正电压, DTR-DSR和RTS-CTS之间不要连接。当DTR正常,鼠标要发一个包含字母"M" (ascii 77) 的字节来识别自身。而冷启动后,RTS 一般设为负电压,这时需要把RTS转换为正,称为反转RTS。要完成RTS电压的反转,负脉冲宽度至少为100ms。

串口鼠标使用格式为1200bps, 7 data bits, 1 stop-bit,发送的数据包为3字节长度,每次鼠标状态改变(移动或按键的按压与释放) 都要向计算机发送数据。数据格式如下:

 

bit7

bit6

bit5

bit4

bit3

bit2

bit1

bit0

byte1

X

1

LB

RB

Y7

Y6

X7

X6

byte2

X

0

X5

X4

X3

X2

X1

X0

byte3

X

0

Y5

Y4

Y3

Y2

Y1

Y0

字节1(byte1)首先发出,然后是其他2个字节。字节1的bit6用做同步数据包。

LB是左键的状态(1表示按下),RB是右键的状态(1表示按下);X7-X0表示从上次数据包发出后沿X方向移动的距离,Y7-Y0表示从上次数据包发出后沿Y方向移动的距离。

用X表示的位,在使用7 bits数据和2 bits停止位格式时为0;而使用8 bits数据和1 bits停止位格式时为1 。最安全的方式是使用7 bits数据和1 bits停止位的接收格式。

3.6)信号规格表

 

 

 

 

 

 

点击此处查看原文 >>

系统分类: 接口电路   |    用户分类: 无分类    |    来源: 整理

评论(0) | 阅读(678)
发表于:2007-12-22 14:06:38
标签:无标签

0

RS-232 接口(摘)

计算机与计算机或计算机与设备之间的数据传送可以采用串行通讯和并行通讯二种方式。由于串行通讯方式具有使用线路少、成本低,特别是在远程传输时,避免了多条线路特性的不一致而被广泛采用。

RS-232是在1970 年由美国电子工业协会(EIA: Electronics Industry Association)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。它的全名是"数据终端设备(DTE)和数据通讯设备(DCE)之间串行二进制数据交换接口技术标准"。该标准规定采用一个25个脚的DB-25连接器,对连接器的每个引脚的信号内容加以规定,还对各种信号的电平加以规定。后来IBM的PC 机将RS-232 简化成了DB-9连接器,并随着IBM PC的普及,从而成为事实标准。

RS-232历史悠久,因为当时技术和认识的局限,有很多缺陷,后来针对这些缺陷提出了其他许多串行接口标准,如422、485等等,但因为各种原因都只局限在部分特殊场合,RS-232-C接口(又称EIA RS-232-C)仍是最常用的一种串行通讯接口,其中的“-C”表示RS-232的版本,现在已发展到-D版本。

1.  DTEDCE的定义

RS-232-C,是RS-232-B的修改版,规定了OSI基本参考模型物理层部分的规格,制定的目的是用于DCE和DTE之间进行串行二进制数据交换。有如下特点:DCE-DTE采用直通方式,全双工通信,基本频带,电流环方式,串行传输方式。

数据通信,就是数据终端设备(DTE)和数据终端设备之间的通讯,二者之间需通过传输介质(如铜线、同轴电缆、光纤、微波中继、卫星等)组成的传输网络,在此之间就需要加网络接口设备,即数据线路设备(DCE),这样就组成一条数据通讯链路。

DTE(数据终端设备):数据链路两端的端末设备。DTE通过DCE连接到一个数据网络上,并且通常使用DCE产生的时钟信号。数据终端设备包括计算机、协议翻译器以及多路分解器等设备。如计算机、终端、通信控制器等。

DCE(数据通信设备或者数据电路终端设备):处于数据终端设备(DTE)和传输电路或信道之间,提供了到网络的一条物理连接、转发业务量、信号变换器,并且提供了一个用于同步DCE设备和DTE设备之间数据传输的时钟信号。如调制解调器、接口卡、数传机、基带传输器、波形变换器等设备。

RS-232-C在ITU建议的V.24/V.28 和X.20bis/X.21bis、ISO IS2110规定的25引脚连接器在功能上具有互换性。

后来RS-232已不只应用于DCE和DTE设备,还有其他更多的应用,如鼠标、键盘、打印机、计算机间通讯、设备监控、EPROM编程器等,现在嵌入式系统常用的UART接口也来源与此。

2.  RS-232 接口的接插件和电缆

RS-232-C标准中规定的连接器为25引脚插入式连接器,一般称为25引脚D-SUB(DB-25),这个连接器的外壳和一个大写字母D的外形相似,它可以确定插接连接器时的方向,导线在两个错开的行上,每行导线相距0.109英寸。DTE应该使用针输出(也称为MALE或公头),DCE使用孔输出(也称为FEMALE或母头)。RS-232-C所用电缆的形状并不固定,但大多使用带屏蔽的24芯电缆,电缆端为DB-25-F对DB-25-M,直通方式,电缆的最大长度为15m,在200K位/秒以下的任何速率都能进行数据传输。

图示为RS-232接口中常用的DB-25连接器结构:

连接器的引脚或者插座的号码都印在引脚或者插座孔附近。

25 pin D-SUB male connector at the DTE (Computer)

实际中RS-232-C 接口连接器一般使用DB-9 插头座,PC 机的RS-232 口为9芯针插座(也称为MALE或公头),而相应的MODEM则使用9芯孔插座(也称为FEMALE或母头),用DB-9-F对DB-9-M的电缆连接,直通方式。而两台计算机如果用RS-232-C 接口连接,则要使用DB-9-F对DB-9-F的电缆,且部分信号线要交叉连接。一些设备与PC 机连接的RS-232 接口,因为不使用对方的传送控制信号,只需三条接口线,即"发送数据TXD"、"接收数据RXD"和"信号地GND"。

图示为RS-232接口中常用的DB-9连接器结构:

连接器的引脚或者插座的号码都印在引脚或者插座孔附近。

9 pin D-SUB male connector at the computer

特殊情况下,也有使用RJ-458PIN连接器用作RS232接口,其定义如下:

脚序 <