串口通信文档

7.1 计算机串行通信基础 ? 随着多微机系统的广泛应用和计算机网络技术的普及,计算机的通信功能愈来愈显 得重要。计算机通信是指计算机与外部设备或计算机与计算机之间的信息交换。 ? 通信有并行通信和串行通信两种方式。在多微机系统以及现代测控系统中信息的交 换多采用串行通信方式。 ? 计算机通信是将计算机技术和通信技术的相结合,完成计算机与外部设备或计算机 与计算机之间的信息交换 。可以分为两大类:并行通信与串行通信。 ? 并行通信通常是将数据字节的各位用多条数据线同时进行传送 。 8位同时传送 1 0 接 1 发 0 收 设 1 送 1 0 设 备 0 备 询问 应答 并行通信控制简单、传输速度快;由于传输线较多,长距离传送时成本高且接收方的各位 同时接收存在困难。 串行通信是将数据字节分成一位一位的形式在一条传输线上逐个地传送。 接 发 收 D0 D7 送 设 备 8位顺次传送 设 备 串行通信的特点:传输线少,长距离传送时成本低,且可以利用电话网等现成的设备,但 数据的传送控制比并行通信复杂。 7.1.1 串行通信的基本概念 一、异步通信与同步通信 1、异步通信 异步通信是指通信的发送与接收设备使用各自的时钟控制数据的发送和接收过程。为 使双方的收发协调,要求发送和接收设备的时钟尽可能一致。 接 收 设10100100 1 备 0 10100100 1 间隙任意 发 送 0 11100110 1 0 1110011设0 备 异步通信是以字符(构成的帧)为单位进行传输,字符与字符之间的间隙(时间间隔)是 任意的,但每个字符中的各位是以固定的时间传送的,即字符之间不一定有“位间隔”的整 数倍的关系,但同一字符内的各位之间的距离均为“位间隔”的整数倍。 异步通信的数据格式 : 起 空始 闲位 一个字符帧 数据位 校停 验止 位位 空 下一字符 闲 起始位 LSB MSB 异步通信的特点:不要求收发双方时钟的严格一致,实现容易,设备开销较小,但每个字 符要附加 2~3 位用于起止位,各帧之间还有间隔,因此传输效率不高。 2、同步通信 同步通信时要建立发送方时钟对接收方时钟的直接控制,使双方达到完全同步。此时,传 输数据的位之间的距离均为“位间隔”的整数倍,同时传送的字符间不留间隙,即保持位同 步关系,也保持字符同步关系。发送方对接收方的同步可以通过两种方法实现。 01101 计 数据 计 算 算 机 机 甲 时钟 乙 时钟 计 数据 0 1 1 0 1 计 算 算 机 数据+时钟 机 甲 乙 面向字符的同步格式 : SYN SYN SOH 标题 STX 数据块 ETB/ETX 块校验 此时,传送的数据和控制信息都必须由规定的字符集(如 ASCII 码)中的字符所组成。图 中帧头为 1 个或 2 个同步字符 SYN(ASCII 码为 16H)。SOH 为序始字符(ASCII 码为 01H), 表示标题的开始,标题中包含源地址、目标地址和路由指示等信息。STX 为文始字符(ASCII 码为 02H),表示传送的数据块开始。数据块是传送的正文内容,由多个字符组成。数据块 后面是组终字符 ETB(ASCII 码为 17H)或文终字符 ETX(ASCII 码为 03H)。然后是校 验码。典型的面向字符的同步规程如 IBM 的二进制同步规程 BSC。 面向位的8同位步格式 : 8位 8位 ≥0位 16位 8位 01111110 地址场 控制场 信息场 校验场 01111110 此时,将数据块看作数据流,并用序列 01111110 作为开始和结束标志。为了避免在数据流 中出现序列 01111110 时引起的混乱,发送方总是在其发送的数据流中每出现 5 个连续的 1 就插入一个附加的 0;接收方则每检测到 5 个连续的 1 并且其后有一个 0 时,就删除该 0。 典型的面向位的同步协议如 ISO 的高级数据链路控制规程 HDLC 和 IBM 的同步数据 链路控制规程 SDLC。 同步通信的特点是以特定的位组合“01111110”作为帧的开始和结束标志,所传输的一 帧数据可以是任意位。所以传输的效率较高,但实现的硬件设备比异步通信复杂。 二、串行通信的传输方向 1、单工 单工是指数据传输仅能沿一个方向,不能实现反向传输。 2、半双工 半双工是指数据传输可以沿两个方向,但需要分时进行。 3、全双工 全双工是指数据可以同时进行双向传输。 发送 时间1 接收 发送 接收 发送 接收 接收 时间2 发送 接收 发送 单工 半双工 全双工 三、信号的调制与解调 利用调制器(Modulator)把数字信号转换成模拟信号,然后送到通信线路上去,再由 解调器(Demodulator)把从通信线路上收到的模拟信号转换成数字信号。由于通信是双向 的,调制器和解调器合并在一个装置中,这就是调制解调器 MODEM。 RS-232C RS-232C 电话网 DCE DTE DCE DTE 四、串行通信的错误校验 1、奇偶校验 在发送数据时,数据位尾随的 1 位为奇偶校验位(1 或 0)。奇校验时,数据中“1”的个数与 校验位“1”的个数之和应为奇数;偶校验时,数据中“1”的个数与校验位“1”的个数之和应为 偶数。接收字符时,对“1”的个数进行校验,若发现不一致,则说明传输数据过程中出现了 差错。 2、代码和校验 代码和校验是发送方将所发数据块求和(或各字节异或),产生一个字节的校验字符(校验 和)附加到数据块末尾。接收方接收数据同时对数据块(除校验字节外)求和(或各字节 异或),将所得的结果与发送方的“校验和”进行比较,相符则无差错,否则即认为传送过程 中出现了差错。 3、循环冗余校验 这种校验是通过某种数学运算实现有效信息与校验位之间的循环校验,常

相关文档

IO模拟串口通信文档
51单片机串口通信-文档资料
单片机串口通信页PPT文档
常用串口通讯技术-文档资料
串口通信实验(word文档良心出品)
最新-51的UART串口通信详细-PPT文档资料
最新文档-51的UART串口通信详细-PPT精品文档
VC6.0MFC串口通信编写全过程(推荐文档)
第9章串行通讯口-文档资料
第3章串行通信接口技术-文档资料
电脑版