




已阅读5页,还剩78页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于 RS-232 的串行通信实验指导书 1 目目 录录 0 0 引引言言 2 2 1 1 理理论论背背景景3 3 1.11.1 串口通讯的概念及接口电路串口通讯的概念及接口电路3 3 1.21.2 传输速率与传输距离传输速率与传输距离5 5 1.2.11.2.1 波特率波特率5 5 1.2.21.2.2 发送接收时钟发送接收时钟6 6 1.2.31.2.3 波特率因子波特率因子7 7 1.2.41.2.4 传输距离传输距离7 7 1.31.3 奇偶校验奇偶校验8 8 1.41.4 网络通信的数据包(帧)网络通信的数据包(帧)9 9 1.4.11.4.1 HDLCHDLC 的帧结构的帧结构 1010 1.4.21.4.2 点对点协议点对点协议 PPPPPP 的帧结构的帧结构1111 1.51.5 调制解调器(调制解调器(MODEMMODEM)和流控制)和流控制1212 1.5.11.5.1 调制解调器(调制解调器(MODEMMODEM)1212 1.5.21.5.2 流控制流控制1414 2 2 技技术术背背景景1717 2.12.1 RS-232RS-2321717 2.1.12.1.1 电气特性电气特性1818 2.1.22.1.2 连接器的机械特性连接器的机械特性2020 2.1.32.1.3 RS-232RS-232 的接口信号的接口信号 2222 2.22.2 远距离通信远距离通信2626 2.2.12.2.1 采用采用 Modem(DCE)Modem(DCE)和电话网通信时的信号连接和电话网通信时的信号连接 2626 2.2.22.2.2 采用专用电话线通信采用专用电话线通信2828 2.32.3 近距离通信近距离通信2828 2.3.12.3.1 零零 ModemModem 的最简单连线(的最简单连线(3 3 线制)线制)2929 2.3.22.3.2 零零 ModemModem 标准连接标准连接3030 3 3 设设计计过过程程3232 3.13.1 串行通信材料串行通信材料3232 3.1.13.1.1 串行通信端口串行通信端口3232 3.1.23.1.2 串口通信线串口通信线3232 3.23.2 总体设计概念与功能描述总体设计概念与功能描述3434 3.2.13.2.1 总体设计概念总体设计概念3434 3.2.23.2.2 字节传输字节传输3535 3.2.33.2.3 文本文件传输文本文件传输3636 4 4 设设计计成成果果与与运运行行过过程程3838 4.14.1 实时信息交互功能实时信息交互功能3838 4.24.2 文本和文件的传输文本和文件的传输4747 5 5 总总结结 8282 基于 RS-232 的串行通信实验指导书 2 0 引引言言 在各种单片机应用系统设计中,如智能仪器仪表、各类手持设 备、 GPS 接收器等,都会遇到怎样与PC 机进行通讯的问题。在 数据量不大、传输速率要求不高的情况下,一般都采用串行通讯方 式,即通过与 PC 机配置的 RS-232 标准串行接口 COM1、COM2 等相连接来实现应用系统与PC 机之间的数据交 换。 例如 南天加密键盘 ,它 是南天自主开发的新产品,采用扫描 式 16 键金属键盘,用单片机与DES 芯片实现管理和控制,通过 RS232 通讯口与 PC 机相连。它是针对南天自助产品而研制的,可 对键盘敲入的键码加密,以密文形式送到PC 机,确保通信过程 中的数据加密,有效地保护键盘交易信息的安全。本课题以计算 机科学与技术专业的理论知识为基础,以计算机通信技术为支撑, 在全面掌握计算机通信基本理论和基本技术的基础上,利用 RS232 接口接口规范,设计与实现一个计算机通信系统。串 口通讯作为一种古老而又灵活的通讯方式,被广泛地应用于PC 间的通讯以及 PC 和单片机之间的通讯之中。 提到串口通讯的编 程,人们往往立刻想到C、汇编等对系统底层操作支持较好的编 程语言以及大串繁琐的代码。实际上1992 年 Crescent Software Inc.公司专为 VB 设计了 MSCOMM.VBX 用户通信控件,它提供 了通过串口发送和接收数据的串行通信能力,不但包括了全部 Windows API 中关于串行通信的16 个函数所完成的功能,而且开 拓了更多的使用户设计方便的对象属性来满足不同用户不同业务的 基于 RS-232 的串行通信实验指导书 3 需求。 所以 只要我们借助相关ActiveX 控件的帮助,即使是在 底层操作一向不被人看好的VB 中,一样能够实现串口通讯, 甚至其实现方法和C、汇编相比, 要更加快捷方便。 这也是为什 么我们这次设计所用的编程工具是VB6.0。通过这些控件能实现 两台计算机之间的串行通信其中包括字节,文本 ,文件等信息。 1 理理论论背背景景 1.1 串口通讯的概念及接口电路串口通讯的概念及接口电路 随着计算机系统的应用和微机网络的发展,通信功能越来越显 的重要。这里所说的通信是只计算机与外界的信息交换。因此,通 信即包括计算机与外部设备之间,也包括计算机和计算机之间的信 息交换。由于串行通信是在一根传输线上一位一位的传送信息,所 用的传输线少,并且可以借助现成的电话网进行信息传送,因此, 特别适合于远距离传输。对于那些与计算机相距不远的人机交换 设备和串行存储的外部设备如终端、打印机、逻辑分析仪、磁盘等, 采用串行方式交换数据也很普遍。在实时控制和管理方面,采用多 台微机处理机组成分级分布控制系统中,各CPU 之间的通信一 般都是串行方式。所以串行接口是微机应用系统常用的接口。许多 外设和计算机按串行方式进行通信,这里所说的串行方式,是指外 设与接口电路之间的信息传送方式,实际上,CPU 与接口之间 仍按并行方式工作。 图 1.1 串行通信传输位 基于 RS-232 的串行通信实验指导书 4 串行通信的概念 所谓 “串行通信 ”是指外设和计算机间使用一根数据信号线 (另外需要地线 ,可能还需要控制线 ),数据在一根数据信号线上一位 一位地进行传输,每一位数据都占据一个固定的时间长度。这种通 信方式使用的数据线少,在远距离通信中可以节约通信成本,当然, 其传输速度比并行传输慢。由于CPU 与接口之间按并行方式传 输,接口与外设之间按串行方式传输,因此,在串行接口中,必须 要有 “接收移位寄存器 ”(串 并)和 “发送移位寄存器 ”(并 串)。典型的串行接口的结构如图1.2 所示。 图 1.2 典型的串行接口的结构 在数据输入过程中,数据一位一位地从外设进入接口的 “接收移位寄存器 ”,当 “接收移位寄存器 ”中已接收完 1 个字 符的 各位后,数据就从 “接收移位寄存器 ”进入 “数据输入寄存 基于 RS-232 的串行通信实验指导书 5 器”。CPU 从“数据输入寄存器 ”中读取接收到的字符。(并行 读取, 即 D7D0 同时被读至累加器中)。“接收移位寄存器 ” 的移位 速度由 “接收时钟 ”确定。 在数据输出过程中, CPU 把要输出的字符(并行地)送入 “数据输出寄存器 ”,“数据输出寄存器 ”的内容传输到 “发送 移位寄存器 ”,然后由 “发送移位寄存器 ”移位,把数据一位一 位地送到外设。 “发送移位寄存器 ”的移位速度由 “发送时钟 ” 确定。接口中的 “控制寄存器 ”用来容纳 CPU 送给此接口的各 种控制信息,这些控制信息决定接口的工作方式。“状态寄存器 ” 的各位称为 “状态位 ”,每一个状态位都可以用来指示数据传输 过程中的状态或某种错误。例如,用状态寄存器的D5 位为 “1”表示 “数据输出寄存器 ”空,用 D0 位表示 “数据输入寄存 器满 ”,用 D2 位表示 “奇偶检验错 ”等。 能够完成上述 “串并”转换功能的电路,通常称为 “通用异步收发器 ”(UART:Universal Asynchronous Receiver and Transmitter),典型的芯片有: Intel 8250/8251,16550。 1.2 传输速率与传输距离传输速率与传输距离 1.2.1 波特率波特率 在串行通信中,用 “波特率 ”来描述数据的传输速率。所谓 波特率,即每秒钟传送的二进制位数,其单位为bps(bits per second)。它是衡量串行数据速度快慢的重要指标。有时也用 “位周期 ”来表示传输速率,位周期是波特率的倒数。国际上规定 基于 RS-232 的串行通信实验指导书 6 了一个标准波特率系列: 110、300、600、1200、1800、2400、4800、9600、14.4Kbps、 19.2Kbps、28.8Kbps、33.6Kbps、56Kbps。 例如: 9600bps,指 每秒传送 9600 位,包含字符的数位和其它必须的数位,如奇偶校 验位等。 大多数串行接口电路的接收波特率和发送波特率可以分 别设置,但接收方的接收波特率必须与发送方的发送波特率相同。 通信线上所传输的字符数据(代码)是逐为位传送的,1 个字符 由若干位组成,因此每秒钟所传输的字符数(字符速率)和波特率 是两种概念。在串行通信中,所说的传输速率是指波特率,而不是 指字符速率,它们两者的关系是:假如在异步串行通信中,传送一 个字符,包括 12 位(其中有一个起始位,8 个数据位, 2 个停 止位),其传输速率是1200b/s,每秒所能传送的字符数是 1200/(1+8+1+2)=100 个。 图 1.3 波特率 1.2.2 发送接收时钟发送接收时钟 在串行传输过程中,二进制数据序列是以数字信号波形的形式 出现的,如何对这些数字波形定时发送出去或接收进来,以及如何 对发收双方之间的数据传输进行同步控制的问题就引出了发送 基于 RS-232 的串行通信实验指导书 7 接收时钟的应用。在发送数据时,发送器在发送时钟(下降沿) 作用下将发送移位寄存器的数据按串行移位输出;在接收数据时, 接收器在接收时钟(上升盐)作用下对来自通信线上串行数据, 按位 串行移入移位寄存器。可见,发送接收时钟是对数字波形的 每一 位进行移位操作,因此,从这个意义上来讲,发送接收时钟 又可 叫做移位始终脉冲。另外,从数据传输过程中,收方进行同步 检测 的角度来看,接收时钟成为收方保证正确接收数据的重要工具。 为此,接收器采用比波特率更高频率的时钟来提高定位采样的分辨 能力和抗干扰能力。 1.2.3 波特率因子波特率因子 在波特率指定后,输入移位寄存器/输出移位寄存器在接收时 钟/发送时钟控制下,按指定的波特率速度进行移位。一般几个时钟 脉冲移位一次。要求:接收时钟/发送时钟是波特率的16、32 或 64 倍。波特率因子就是发送接收1 个数据( 1 个数据位) 所需要的时钟脉冲个数,其单位是个位。如波特率因子为 16,则 16 个时钟脉冲移位1 次。 例:波特率 =9600bps,波特 率因子 =32,则 接收时钟和发送时钟频率 =960032=297200Hz。 1.2.4 传输距离传输距离 串行通信中,数据位信号流在信号线上传输时,要引起畸变, 畸变的大小与以下因素有关: 波特率 信号线的特征(频带范围) 基于 RS-232 的串行通信实验指导书 8 传输距离 信号的性质及 大小(电平高低、电流大小) 当畸变较大时,接收方出现误码。 在规定的误码率下,当波特率、信号线、信号的性质及大小一 定时,串行通信的传输距离就一定。为了加大传输距离,必须加调 制解调器。 图 1.4 传输信号的频谱特性 1.3 奇偶校验奇偶校验 串行数据在传输过程中,由于干扰可能引起信息的出错,例如, 传输字符 E,其各位为: 0100,0101=45H D7 D0 由于干扰,可能使0 变为 1,这种情况,我们称为出现了 “误码 ”。我们把如何发现传输中的错误,叫“检错 ”。发现错 误后,如何消除错误,叫“纠错 ”。 最简单的检错方法是 “奇偶校验 ”,即在传送字符的各位之 基于 RS-232 的串行通信实验指导书 9 外,再传送 1 位奇 /偶校验位。 可采用奇校验或偶校验。 奇校验:所有传送的数位(含字符的各数位和校验位)中, “1”的个数为奇数,如: 1 0110,0101 0 0110,0001 偶校验:所有传送的数位(含字符的各数位和校验位)中, “1”的个数为偶数,如: 1 0100,0101 0 0100,0001 奇偶校验能够检测出信息传输过程中的部分误码(1 位误码 能检出, 2 位及 2 位以上误码不能检出),同时,它不能纠错。在 发现错误后,只能要求重发。但由于其实现简单,仍得到了广泛使 用。有些检错方法,具有自动纠错能力。如循环冗余码 (CRC)检错等。 1.4 网络通信的数据包(帧)网络通信的数据包(帧) 在网络通信中, “包”(Packet)和 “帧”(Frame)的概 念相同,均指通信中的一个数据块。对于具体某种通信网络,一般 使用术语 “帧”。一种网络的帧格式可能与另一种网络不同,通常 使用术语 “包”来指一般意义的帧。串行通信的数据格式有面向字 符型的数据格式,如单同步、双同步、外同步;也有面向比特型的 数据格式,这种以帧为单位传输,每帧由六个部分组成,分别是标 志区、地址区、控制区、信息区、帧校验区和标志区。 基于 RS-232 的串行通信实验指导书 10 串行通信协议属于ISO 国际参考标准的第三层,数据链路 层。 数据链路层必须使用物理层提供给它的服务。物理层所做的 工作是 接收个一个原始的比特流,并准备把它交给目的地。不能 保证这个 比特流无差错。所接收的比特的数量也许少于,也许等于 或多于所 传递的比特的数量,它们具有不同的值。一直要上到数据 链路层才 能进行检测,如果需要的话,纠正错误。对于数据层,通 常的方法 是把比特流分成离散的帧,并对每一帧计算出校验。当一 帧到达目 的地后重新计算校验和实,如果新算出的校验和不同于帧 中所包括 的值,数据链路层就知道出现差错了,从而会采取措施处 理差错 (即,丢弃坏帧,并发回一个差错报告)。 数据链路层的任务是在两个相邻接点间的线路上无差错地传送 以帧为单位的数据。每一帧包括数据和必要的控制信息。人们发现, 对于经常产生误码的实际链路,只要加上合适的控制规程,就可以 使通信变为比较可靠的。如IBM 公司推出了著名的体系结构 SNA,在 SNA 的数据链路规程采用了面向比特的规程SDLC,后 来 ISO 把它修改后称为HDLC,译为 高级数据链路控制 。在 INTERNET 中,用户与 ISP(INTERNET 服务提供者)之间的链 路上使用得最多的协议就是SLIP 和 PPP。 下面就简单介绍HDLC 帧结构以及 PPP 帧结构: 1.4.1 HDLC 的帧结构的帧结构 从网络层交下来的分组,变成为数据链路层的数据。这就是图1.5 中的信息字段。信息字段的长度没有具体规定。数据链路层在信息 基于 RS-232 的串行通信实验指导书 11 字段的头尾各加上24bit 的控制 信息,这样就构成了一个完整的 帧。 HDLC 规定了一个帧的开头 (即首部中的第一个字节)和结 尾(即 尾部中的最后一个字节)各放入一个特殊的标记,作为一 个帧的边 界。这个标记就叫做 标志字段 F。标志字段 F 为个连 续加上 两边各一个共位。 地址字段 A 也是个比特,它一 般被写入 次站的地址。 帧校验序列 FSC 字共占位,采用 CRC-CCITT 生成多项式。 控制字段 功位,是最复杂的字段, HDLC 的许多 重要功能都要靠控制字段来实现。根据其前面两个比 特的取值,可 将 HDLC 的许多帧划分为三大类,即信息帧 、监 督帧 和无编号 帧。 图 1.5 HDLC 的帧结构 1.4.2 点对点协议点对点协议 PPP 的帧结构的帧结构 PPP 帧格式和 HDLC 的相似, PPP 帧的前 3 个字段和最后两 个字段和 HDLC 的格式是一样的。 PPP 不是面向比特的,因而所 有的 PPP 帧的长度都是整数个字节。与HDLC 不同的是多了一 个 2 个字节的协议字段。当协议字段为0X0021 时,信息字段就 是 IIP 数据报。若为 0XC021,则信息字段是链路控制数据,而 0X8021 表示这是网络控制数据。其结构视图如图1.6 所示。 基于 RS-232 的串行通信实验指导书 12 图 1.6 点对点协议 PPP 的帧结构 1.5 调制解调器(调制解调器(MODEM)和流控制)和流控制 虽然这次设计只是为了通过串行通信实现双机互联,但提到串 行通信就不得不提一下调制解调器(MODEM)和流控制 1.5.1 调制解调器(调制解调器(MODEM) 计算机的通信是要求传送数字信号,而在进行远程数据通信时, 通信线路往往是借用现存的公用电话网,但是,电话网是为 3003400HZ 之间的音频信号设计的,这对二进制数据的传输不 适合。为此,在发送时,需要将二进制信号调制成相应的音频信号, 以适合在电话网上传输。在接收后时,需要对音频信号进行调解还 原成数字信号。因此,在发送端使用调制器(Modulator)把数 字信号转换为模拟信号,(该模拟信号携带了数据信号,称为载波 信号),模拟信号经通信线传送到接收方,接收方再以解调器 (Demodulator),把模拟信号变为数字信号。大多数情况下,调 基于 RS-232 的串行通信实验指导书 13 制器和解调器合在一个装置中,称为 “调制解调器 ”Modem。 在通信中, Modem 起着传输信号的作用,是一种数据通信设 备( Data Communication equipment),简称 DCE 或称数传机 (Dataset),接收设备和发送设备称为数据终端设备(data terminal equipment),简称 DTE。加入 Modem 后,通信系统的 结构如图 1.7 所示。 图 1.7 加入 Modem 后通信系统的结构 调制信号的方法有: 把采用调频方式的称为FSK对应频移键控 FSK 类型的 MODEM; 把采用调相方式的称为PSK对应移键控 PSK 类型的 MODEM; 把采用调幅方式的称为ASK对应振幅键控 ASK 类型的 MODEM。 当波特率小于 300 时,一般采用频移控键 (FSK)调制方式, 或者称为两态调频。它的基本原理是把“0”和“1”的两种数字 信号分别调制成不同频率的两个音频信号。其原理图如图1.8 基于 RS-232 的串行通信实验指导书 14 所示。 图 1.8 频移控键 (FSK)调制方式原理图 两个不同频率的模拟信号f1 和 f2 ,分别经过电子开关 S1、S2 送到运算放大器A 的输入端相加点。电子开关的通断由 外部控制,并且当加高电平时,接通;加低电平时,断开。利用被 传输的数字信号(即数据)去控制开关。当数字信号为“1”时, 使电子开关 S1 接通,送出一串频率较高的模拟信号f1;当数字 信号为 “0”时,使电子开关S2 接通,送出一串频率较低的模拟 信号 f2。于是这两个不同频率的信号经运算放大器相加后,在运算 放大器的输出端,就得到了调制后的两种频率的音频信号。 1.5.2 流控制流控制 我们在串行通讯处理中,常常看到RTS/CTS 和 XON/XOFF 这两个选项,这就是两个流控制的选项,目前流控制主要应用于调 制解调器的数据通讯中,但对普通RS232 编程,了解一点这方面 的知识是有好处的。那么,流控制在串行通讯中有何作用,在编制 基于 RS-232 的串行通信实验指导书 15 串行通讯程序怎样应用呢? 1、流控制在串行通讯中的作用 这里讲到的 “流”,当然指的是数据流。数据在两个串口之间 传输时,常常会出现丢失数据的现象,或者两台计算机的处理速度 不同,如台式机与单片机之间的通讯,接收端数据缓冲区已满,则 此时继续发送来的数据就会丢失。现在我们在网络上通过 MODEM 进行数据传输,这个问题就尤为突出。流控制能解决这个 问题,当接收端数据处理不过来时,就发出“不再接收 ”的信 号,发送端就停止发送,直到收到“可以继续发送 ”的信号再发 送数据。因此流控制可以控制数据传输的进程,防止数据的丢失。 PC 机中常用的两种流控制是硬件流控制(包括 RTS/CTS、DTR/CTS 等)和软件流控制XON/XOFF(继续 /停止) ,下面分别说明。 2、硬件流控制 硬件流控制常用的有RTS/CTS 流控制和 DTR/DSR(数据终 端就绪 /数据设置就绪)流控制。 硬件流控制必须将相应的电缆线连上,用RTS/CTS(请求发 送/清除发送)流控制时,应将通讯两端的RTS、CTS 线对应相 连,数据终端设备(如计算机)使用RTS 来起始调制解调器或 其它数据通讯设备的数据流,而数据通讯设备(如调制解调器)则 用 CTS 来起动和暂停来自计算机的数据流。这种硬件握手方式的 过程为:我们在编程时根据接收端缓冲区大小设置一个高位标志 基于 RS-232 的串行通信实验指导书 16 (可为缓冲区大小的75)和 一个低位标志(可为缓冲区大小 的 25),当缓冲区内数据量达到高位时,我们在接收端将 CTS 线置低电平(送逻辑0),当 发送端的程序检测到CTS 为 低后, 就停止发送数据,直到接收端缓冲区的数据量低于低位而将 CTS 置高电平。 RTS 则用来标明接收设备有没有准备好接收数据。 常用的流控制还有DTR/DSR(数据终端就绪 /数据设置就绪) 。我们在此不再详述。由于流控制的多样性,我个人认为,当软件 里用了流控制时,应做详细的说明,如何接线,如何应用。 3、软件流控制 由于电缆线的限制,我们在普通的控制通讯中一般不用硬件流 控制,而用软件流控制。一般通过XON/XOFF 来实现软件流控 制。常用方法是:当接收端的输入缓冲区内数据量超过设定的高位 时,就向数据发送端发出XOFF 字符(十进制的19 或 Control- S,设备编程说明书应该有详细阐述),发送端收到XOFF 字符 后就立即停止发送数据;当接收端的输入缓冲区内数据量低于设定 的低位时,就向数据发送端发出XON 字符(十进制的17 或 Control-Q),发送端收到XON 字符后就立即开始发送数据。一 般可以从设备配套源程序中找到发送的是什么字符。 应该注意,若传输的是二进制数据,标志字符也有可能在数据 流中出现而引起误操作,这是软件流控制的缺陷,而硬件流控制不 会有这个问题。 基于 RS-232 的串行通信实验指导书 17 2 技技术术背背景景 在讨论 RS-232 接口标准的内容之前,先说明两点: 首先, RS-232 标准最初是远程通信连接数据终端设备 DTE(Data Terminal Equipment)与数据通信设备DCE(Data Communication Equipment)而制定的。因此这个标准的制定,并未 考虑计算机系统的应用要求。但目前它又广泛地被借来用于计算机 (更准确的说,是计算机接口)与终端或外设之间的近端连接标准。 显然,这个标准的有些规定及和计算机系统是不一致的,甚至是相 矛盾的。有了对这种背景的了解,我们对RS-232 标准与计算机 不兼容的地方就不难理解了。 其次, RS-232 标准中所提到的 “发送 ”和“接收 ”,都是站 在 DTE 立场上,而不是站在DCE 的立场来定义的。由于在计算 机系统中,往往是CPU 和 I/O 设备之间传送信息,两者都是 DTE,因此双方都能发送和接收。 2.1 RS-232 RS-232 标准(协议)的全称是EIA-RS-232 标准,其中 EIA(Electronic Industry Association)代表美国电子工业协会, RS(Recommended Standard)代表推荐标准, 232 是标识号,它 规定连接电缆和机械、电气特性、信号功能及传送过程。常用物理 标准还有 EIARS-232-C、EIARS-422-A、EIARS- 基于 RS-232 的串行通信实验指导书 18 423A、EIARS-485。 这里 只介绍 EIARS-232-C(简 称 232,RS232)。 例如,目前在 IBM PC 机上的 COM1、COM2 接口,就是 RS-232 接口。 2.1.1 电气特性电气特性 EIA-RS-232 对电器特性、逻辑电平和各种信号线功能都作了 规定。 在 TxD 和 RxD 上:逻辑 1(MARK)=-3V-15V 逻辑 0(SPACE)=+3V 15V 在 RTS、CTS、DSR、DTR 和 DCD 等控制线上: 信号有效(接通, ON 状态,正电压) +3V+15V 信号无效(断开, OFF 状态,负电压 )=-3V-15V 图 2.1 1488 和 1489 的内部结构和引脚 以上规定说明了RS-232 标准对逻辑电平的定义。对于数据 (信息码):逻辑 “1”(传号)的电平低于 -3V,逻辑 “0” (空号)的电平告语 +3V;对 基于 RS-232 的串行通信实验指导书 19 于控制信号;接通状态(ON)即信号有效的电平高于 +3V,断 开状态 (OFF)即信号无效的电平 低于 -3V,也就是当传输电平的绝 对值大于 3V 时,电路可以有 效地检 查出来,介于 -3V+3V 之 间的电压无意义,低于 -15V 或高于 +15V 的电压也认为无意义, 因此,实际工作时,应保证电平在(315)V 之间。 EIA-RS-232 与 TTL 转换: EIA-RS-232 是用正负电压来表示 逻辑状态,与 TTL 以高低电平表示逻辑状态的规定不同。因此, 为了能够同计算机接口或终端的TTL 器件连接,必须在EIA- RS-232 与 TTL 电路之间进行电平和逻辑关系的变换。实现这种变 换的方法可用分立元件,也可用集成电路芯片。目前较为广泛地使 用集成电路转换器件,如MC1488、SN75150 芯片可完成 TTL 电平到 EIA 电平的转换,而MC1489、SN75154 可实现 EIA 电 平到 TTL 电平的转换。 MAX232 芯片可完成 TTLEIA 双向 电平转换,图 2.1 显示了 1488 和 1489 的内部结构和引脚。 MC1488 的引脚 (2)、(4,5)、(9,10)和(12,13)接 TTL 输入。引脚 3、6、8、11 输出端接 EIA-RS-232。MC1498 的 14 的 1、4、10、13 脚接 EIA 输入,而 3、6、8、11 脚接 TTL 输出。 具体连接方法如图2.2 所示。图中的左边是微机串行接口电路中的 主芯片 UART,它是 TTL 器件,右边是 EIA-RS-232 连接器,要 求 EIA 高电压。因此, RS-232 所有的输出、输入信号都要分别经 过 MC1488 和 MC1498 转换器,进行电平转换后才能送到连接器 上去或从连接器上送进来。 基于 RS-232 的串行通信实验指导书 20 图 2.2 1488 和 1489 连接方法 2.1.2 连接器的机械特性连接器的机械特性 连接器:由于 RS-232 并未定义连接器的物理特性,因此,出 现了 DB-25、DB-15 和 DB-9 各种类型的连接器,其引脚的定义也 各不相同。下面分别介绍两种连接器。 (1)DB-25 PC 和 XT 机采用 DB-25 型连接器。 DB-25 连接器定义了 25 根信号线,分为4 组: 异步通信的 9 个电压信号(含信号地SG) 2,3,4,5,6,7,8,20,22 20mA 电流环信号 9 个 (12,13,14,15,16,17,19,23,24) 空 6 个(9,10,11,18,21,25) 基于 RS-232 的串行通信实验指导书 21 保护地( PE)1 个,作为设备接地端( 1 脚) DB-25 型连接器的外形及信号线分配如图2.3 所示。注意, 20mA 电流环信号仅 IBM PC 和 IBM PC/XT 机提供,至 AT 机及 以后,已不支持。 图 2.3 DB-25 DB-9 (2)DB-9 在 AT 机及以后,不支持20mA 电流环接口,使用DB-9 连 接器,作为提供多功能I/O 卡或主板上 COM1 和 COM2 两个串 行接口的连接器。它只提供异步通信的9 个信号。 DB-25 型连 接器的引脚分配与DB-25 型引脚信号完全不同。因此,若与配接 DB-25 型连接器的 DCE 设备连接,必须使用专门的电缆线。 电缆长度:在通信速率低于20kb/s 时, RS-232 所直接连接 的最大物理距离为15m(50 英尺)。 最大直接传输距离说明:RS-232 标准规定,若不使用 MODEM,在码元畸变小于4%的情况下, DTE 和 DCE 之间最大 传输距离为 15m(50 英尺)。可见这个最大的距离是在码元畸变 基于 RS-232 的串行通信实验指导书 22 小于 4%的前提下给出的。为了保证码元畸变小于4%的要求, 接口标准在电气特性中规定,驱动器的负载电容应小于 2500pF。 2.1.3 RS-232 的接口信号的接口信号 RS-232 规定标准接口有25 条线, 4 条数据线、 11 条控制线、 3 条定时线、 7 条备用和未定义线,常用的只有9 根,它们是: 1.联络控制信号线 数据装置准备好( Data set ready-DSR)有效时( ON)状 态,表明 MODEM 处于可以使用的状态。 数据终端准备好 (Data set ready-DTR)有效时( ON)状 态,表明数据终端可以使用。 这两个信号有时连到电源上,一上电就立即有效。这两个设备 状态信号有效,只表示设备本身可用,并不说明通信链路可以开始 进行通信了,能否开始进行通信要由下面的控制信号决定。 请求发送 (Request to send-RTS)用来表示 DTE 请求 DCE 发送数据,即当终端要发送数据时,使该信号有效(ON 状态), 向 MODEM 请求发送。它用来控制MODEM 是否要进入发送状 态。 允许发送( Clear to send-CTS)用来表示 DCE 准备好接 收 DTE 发来的数据,是对请求发送信号RTS 的响应信号。当 MODEM 已准备好接收终端传来的数据,并向前发送时,使该信号 有效,通知终端开始沿发送数据线TXD 发送数据。 基于 RS-232 的串行通信实验指导书 23 这对 RTS/CTS 请求应答联络信号是用于半双工MODEM 系 统中发送方式和接收方式之间的切换。在全双工系统中作发送方式 和接收方式之间的切换。在全双工系统中,因配置双向通道,故不 需要 RTS/CTS 联络信号,使其变高。 接收线信号检出 (Received Line detection-RLSD)用来表 示 DCE 已接通通信链路,告知DTE 准备接收数据。当本地的 MODEM 收到由通信链路另一端(远地)的MODEM 送来的载 波信号时,使 RLSD 信号有效,通知终端准备接收,并且由 MODEM 将接收下来的载波信号解调成数字形式的数据后,沿接收 数据线 RXD 送到终端。此线也叫做数据载波检出(Data Carrier detection-DCD)线。 振铃指示 (Ringing-RI)当 MODEM 收到交换台送来的振铃 呼叫信号时,使该信号有效(ON 状态),通知终端,已被呼叫。 2.数据发送与接收线 发送数据 (Transmitted data-TD)通过 TxD 终端将串行数 据发送到 MODEM,(DTEDCE)。 接收数据 (Received data-RxD)通过 RxD 线终端接收从 MODEM 发来的串行数据, (DCEDTE)。 3.地线 有两根线 SG、PG信号地和保护地信号线,无方向。 上述控制信号线何时有效,何时无效的顺序表示了接口信号的 基于 RS-232 的串行通信实验指导书 24 传送过 程。例如,只有当DSR 和 DTR 都处于有效( ON)状态时, 才能在 DTE 和 DCE 之间进行传送操作。若DTE 要发送数据, 则预先将 DTR 线置成有效 (ON)状态,等 CTS 线上收到有效 (ON)状 态的回答后,才能在TxD 线上发送串行数据。这种顺序的规定对 半双工的通信线路特别有用,因为半双工的通信才能确定DCE 已由接收方向改为发送方向,这时线路才能开始发送。 2 个数据信号:发送TxD;接收 RxD。 1 个信号地线: SG。 6 个控制信号: DSR数传机(即 modem)准备好, Data Set Ready. DTR数据终端( DTE,即微机接口电路,如 Intel8250/8251,16550)准备好, Data Terminal Ready。 RTSDTE 请求 DCE 发送 (Request To Send)。 CTSDCE 允许 DTE 发送( Clear To Send),该信号 是对 RTS 信号的回答。 DCD数据载波检出, Data Carrier Detection 当本地 DCE 设备( Modem)收到对方的 DCE 设备送来的载波信号时, 使 DCD 有效,通知 DTE 准备接收, 并且由 DCE 将接收到的载 波信号解调为数字信号, 经 RxD 线送给 DTE。 RI振铃信号 Ringing 当 DCE 收到交换机送来的振 铃呼叫信号时,使该信号有效,通知DTE 已被呼叫。 基于 RS-232 的串行通信实验指导书 25 表 2.1RS-232 标准接口 25 条线 用途 232 引脚CCITTModem名称说明 异步同步 1101AA保护地设备外壳接地PE PE 2103BA发送数据 数据送 ModemTXD 3104BB接收数据 从 Modem 接收 数据 RXD 4105CA请求发送 在半双工时控制 发送器的开和关 RTS 5106CB允许发送 Modem 允许发送CTS 6107CC 数据终端 准备好 Modem 准备好DSR 7102AB信号地信号公共地SG SG 8109CF 载波信号 检测 Modem 正在接收 另一端送来的信 号 DCD 9 空 10 空 11 空 12 接收信号 检测 (2) 在第二通道检测 到信号 13 允许发送 (2) 第二通道允许发 送 基于 RS-232 的串行通信实验指导书 26 14118 发送数据 (2) 第二通道发送数 据 15113DA 发送器定 时 为 Modem 提供 发送器定时信号 16119 接收数据 (2) 第二通道接收数 据 17115DD 接收器定 时 为接口和终端提 供定时 18 空 19 请求发送 (2) 连接第二通道的 发送器 20108CD 数据终端 准备好 数据终端准备好 DTR 21 空 22125 振铃振铃指示RI 23111CH 数据率选 择 选择两个同步数 据率 24114DB 发送器定 时 为接口和终端提 供定时 25 空 2.2 远距离通信远距离通信 第 1 和第 2 种情况是属于远距离通信(传输距离大于15m 的通信)的例子,故一般要加调制解调器MODEM,因此使用的 信号线较多。注意:在以下各图中,DTE 信号为 RS-232 信号。 2.2.1 采用采用 Modem(DCE)和电话网通信时的信号连接和电话网通信时的信号连接 若在双方 MODEM 之间采用普通电话交换线进行通信,除了 基于 RS-232 的串行通信实验指导书 27 需要 28 号信号线外还要增加RI(22 号)和 DTR(20 号)两个信 号线进行联络,如图2.4 所示。 图 2.4Modem(DCE)和电话网通信时的信号连接 DSR、DTR:数传机( DCE)准备好、数据终端( DTE)准 备好,只表示设备本身可用。 首先,通过电话机拔号呼叫对方,电话交换台向对方发出拔号 呼叫信号,当对方DCE 收到该信号后,使RI(振铃信号)有效, 通知 DTE,已被呼叫。当对方 “摘机 ”后,两方建立了通信链路。 若计算机要发送数据至对方,首先通过接口电路(DTE)发出 RTS(请求发送)信号。此时,若DCE(Modem)允许传送,则 向 DTE 回答 CTS(允许发送)信号。一般可直接将RTS/CTS 接高电平,即只要通信链路已建立,就可传送信号。 (RTS/CTS 可只用于半双工系统中作发送方式和接收方式的切换。 当 DTE 获得 CTS 信号后,通过 TXD 线向 DCE 发出串行信号, 基于 RS-232 的串行通信实验指导书 28 DCE(Modem)将这些数字信号 调制成模拟信号(又称载波信号) ,传向对方。计算机向DTE“数据输出寄存器 ”传送新的数据前, 应检查 Modem 状态 和数据输出寄存器为空。当对方的DCE 收 到载波信号后,向对方的DTE 发出 DCD 信号(数据载波检出), 通知其 DTE 准备接收,同时,将载波信号解调为数据信号,从 RXD 线上送给 DTE,DTE 通过串行接收移位寄存器对接收到的位 流进行移位,当收到1 个字符的全部位流后,把该字符的数据位 送到数据输入寄存器, CPU 可以从数据输入寄存器读取字符。 2.2.2 采用专用电话线通信采用专用电话线通信 在通信双方的 MODEM 之间采用电话线进行通信,则只要使 用 28 号信号线进行联络与控制。不需要电话机、振铃信号 RI 和 DTR 信号,其信号线的连接如图2.5 那样。 图 2.5 采用专用电话线通信 2.3 近距离通信近距离通信 当通信距离较近时,可不需要Modem,通信双方可以直接连 基于 RS-232 的串行通信实验指导书 29 接,这种情况下,只需使用少数几根信号线。最简单的情况,在 通信中根本不需要RS-232 的控 制联络信号,只需三根线(发送线、 接收线、信号地线)便可实现全双工异步串行通信,即是这里要 讨论的第一种情况。 无 Modem 时,最大通信距离按如下方式计算: RS-232 标准规定:当误码率小于4%时,要求导线的电容值 应小于 2500PF。对于普通导线,其电容值约为170PF/M。则允 许距离 L=2500PF/(170PF/M)=15M 这一距离的计算,是偏于保守的,实际应用中,当使用 9600bps,普通双绞屏蔽线时,距离可达3035 米。 2.3.1 零零 Modem 的最简单连线(的最简单连线(3 线制)线制) 图 2.6 是零 MODEM 方式的最简单连接(即三线连接),图中 的 2 号线与 3 号线交叉连接是因为在直连方式时,把通信双方都当 作数据终端设备看待,双方都可发也可收。在这种方式下,通信双 方的任何一方,只要请求发送RTS 有效和数据终端准备好DTR 有效就能开始发送和接收。这次设计也是通过这种方式实现的。 基于 RS-232 的串行通信实验指导书 30 图 2.6 零 MODEM 方式的最简单连接(即三线连接) (1)RTS 与 CTS 互联:只要请求发送,立即得到允许 (2)DTR 与 DSR 互联:只要本端准备好,就认为本端立即 可以接收( DSR、数传机准备好)。 2.3.2 零零 Modem 标准连接标准连接 如果想在直接连接时,而又考虑到RS-232 的联络控制信号, 则采用零 MODEM 方式的标准连接方法,其通信双方信号线安排 如下 1-2-3-4-5 顺序所演示的那样。 2.7 零 Modem 标准连接 1 2.8 零 Modem 标准连接 2 基于 RS-232 的串行通信实验指导书 31 2.9 零 Modem 标准连接 3 2.10 零 Modem 标准连接 4 2.11 零 Modem 标准连接 5 无 Modem 的标准联线( 7 线制)如图所示: 从中可以看出, RS-232 接口标准定义的所有信号线都用到了, 并且是按照 DTE 和 DCE 之间信息交换协议的要求进行连接的, 只不过是把 DTE 自己发出的信号线送过来,当作对方DCE 发 来的信号,因此,又把这种连接称为双叉环回接口。 双方的握手信号关系如下(注:甲方乙方并未在图中标出): (1)当甲方的 DTE 准备好,发出 DTR 信号,该信号直接连 至乙方的 RI(振铃信号)和DSR(数传机准备好)。即只要甲方 准备好,乙方立即产生呼叫 基于 RS-232 的串行通信实验指导书 32 (RI)有效,并同时准备好 (DSR)。尽管此时乙方并不存在 DCE(数传机)。 (2)甲方的 RTS 和 CTS 相连,并与乙方的DCD 互连。即: 一旦甲方请求发送( RTS),便立即得到允许( CTS),同时, 使乙方的 DCD 有效,即检测到载波信号。 (3)甲方的 TXD 与乙方的 RXD 相连,一发一收。 3 设设计计过过程程 3.1 串行通信材料串行通信材料 3.1.1 串行通信端口串行通信端口 RS-232 串行通行端口是每台计算机上的必要配备,通常有 COM1 与 COM2 两个端口。一般的计算机将 COM1 端口以 9 引脚的接头接出, 而以 25 引脚的接头将 COM2 端口接出。新一代的计算机均以 9 引脚接 头接出所有的 RS-232 通信端口。计算机上的 RS-232 通信端口均是公头, 即使是 25 引脚也是公头,千万不要与其他的设备弄混淆了(打印机连接 端口也是 25 引脚,不过他是母头) 。 计算机上的串行通信端口一定是公头,这点是不会改变的。如果所 使用的计算机比较旧时,上面还有 25 引脚的接头,肯定也是公头;这与 打印机的母头接口是不一样的。如果从操作系统上查看,则可选择我的 电脑|查看系统信息命令。在系统属性窗口,单击 硬件选项。打开 系统属性窗口,单击设备管理器标签,打开设备管理器对话框,查 基于 RS-232 的串行通信实验指导书 33 看计算机的连接端口。只要显示通信连接端口的名称,而且其左侧没有 黄色感叹号时,就表示这个 COM 端口是可以使用的。 3.1.2 串口通信线串口通信线 使用 RS-232 进行数据交换,首先必须了解传输双方的连接方式,才 能使数据顺利地进行交换。如果将 RS-232 用来和调制解调器连接,并以 连接上网为主,计算机端和调制解调器间的线路上不需要做跳线或其他 改变;但是当 RS-232 和其他的设备连接时有时就必须做必要的跳线,一 般常见的跳线方式如图 3.1 所示。 空调制解调器 9 PIN 9 PIN RXD TXD GND DTR DCD DSR RTS CTS RI TXD RXD GND DSR DCD DTR CTS RTS RI 图 3.1 空调制解调器接法 计算机设备上的 RS-232 引脚必定是公头,当然连接线就是母头了。 部分计算机上面也有 25 引脚的 RS-232,与打印机连接端口的 2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年学校体育馆体育赛事组织空间评估报告
- 地坪修整施工工程合同
- 恩施州2026届高三第一次质量监测暨9月起点考试 历史
- 煤矿职业病危害防治责任制度
- 四年级禁毒防艾教学计划
- 巡游出租车课件
- 岩石观察课件
- 输电线路安全培训课件
- 输液过敏反应课件
- 10.2.2 复数的乘法与除法
- 2025年广西林业局考试真题附答案
- 【《浅议我国中小企业行政管理面临的问题及其解决方案》8700字(论文)】
- 2024年安徽合肥市肥东县大学生乡村医生专项计划招聘真题
- 中小学教师中高级职称答辩备考试题及答案
- 2025-2026学年北京二十一中、二十二中联盟校九年级(上)开学数学试卷
- 业务员新人培训课件
- 2025年山东省青岛市中考英语试卷真题(含答案详解)
- 文学社教学课件
- 2025北京京剧院招聘工作人员10人备考题库及答案解析
- 完整版人教版六年级上册英语作文各单元范文及作文训练
- 水利水电工程单元工程施工质量验收标准第8部分:安全监测工程
评论
0/150
提交评论