1、RS232串口通信详解(转载)_坦坦守护神_百度空 间http:/ (第 14 页)9芯 信号方向 来 自 缩 写 描述1 调 制解 调 器 CD 载 波 检测2 调 制解 调 器 RXD 接收 数 据3 PC TXD 发 送 数 据4 PC DTR 数 据 终 端准 备 好5 GND 信号地6 调 制解 调 器 DSR 通 讯设备 准 备 好7 PC RTS 请 求 发 送8 调 制解 调 器 CTS 允 许发 送9 调 制解 调 器 RI 响 铃 指示器串口是 计 算机上一 种 非常通用的 设备 通信 协议 。-串口的引脚定 义 :两个串口 连 接 时 ,接收 数 据 针 脚与 发 送 数
2、 据 针 脚相 连 ,彼此交叉,信号地 对应 相接即可。-串口的 电 气特性:1) RS-232串口通信最 远 距离是 50英尺2) RS232可做到双向 传输 ,全双工通 讯 ,最高 传输 速率 20kbps3) RS-232C上 传 送的 数 字量采用 负逻辑 ,且与地 对 称 逻辑1: -3 -15V逻辑 0: +3+15V所以与 单 片机 连 接 时 常常需要加入 电 平 转换 芯片:RS232串口通信详解(转载)_坦坦守护神_百度空 间http:/ (第 24 页)-串口通信参 数 :a)波特率: RS-232-C标 准 规 定的 数 据 传输 速率 为每 秒 50、 75、 100
3、、 150、 300、 600、 1200、 2400、4800、 9600、 19200波特。 b) 数 据位: 标 准的 值 是 5、 7和 8位,如何 设 置取决于你想 传 送的信息。比如, 标 准的ASCII码 是 0127( 7位); 扩 展的 ASCII码 是 0255( 8位)。c)停止位:用于表示 单 个包的最后一位,典型的 值为 1, 1.5和 2位。由于 数 是在 传输线 上定 时 的,并且 每 一个 设备 有其自己的 时钟 ,很可能在通信中两台 设备间 出 现 了小小的不同 步 。因此停止位不 仅仅 是表示 传输 的 结 束,并且提 供 计 算机校正 时钟 同 步 的机会
4、。 d)奇偶校 验 位:在串口通信中一 种简单 的 检错 方式。 对 于偶和奇校 验 的情况,串口会 设 置校 验 位( 数 据位后面的 一位),用一个 值 确 保 传输 的 数 据有偶个或者奇个 逻辑 高位。例如,如果 数 据是011,那 么对 于偶校 验 ,校 验 位 为0,保 证逻辑 高的位 数 是偶 数 个。如果是奇校 验 ,校 验 位位 1, 这样 就有 3个 逻辑 高位。- 串口通信的 传输 格式: 串行通信中, 线 路空 闲时 , 线 路的 TTL电 平 总 是高, 经 反向RS232的 电 平 总 是低。一个 数 据的 开 始 RS232线 路 为 高 电 平, 结 束 时 R
5、s232为 低 电 平。 数 据 总 是从低位向高位一位一位的 传输 。示波器 读 数 时 ,左 边 是 数 据的高位。例如, 对 于 16进 制 数 据 55aaH, 当 采用 8位 数 据位、 1位停止位 传输时 ,它在信号 线 上的波形如 图 1(TTL电 平 )和 图2(RS-232电 平 )所示。55H=01010101B ,取反后 10101010B,加入一个起始位 1,一个停止位 0, 55H的 数 据格式 为 1010101010B ;aaH=10101010B ,取反后 01010101B,加入一个起始位 1,一个停止位 0, 55H的 数 据格式 为 1101010100B
6、 ;RS232串口通信详解(转载)_坦坦守护神_百度空 间http:/ (第 34 页)-串口通信的接收 过 程:(异 步 通信:接收器和 发 送器有各自的 时钟 ;同 步 通信: 发 送器和接收器由同一个 时钟 源控制。 RS232是异 步 通信)( 1) 开 始通信 时 ,信号 线为 空 闲 ( 逻辑 1) ,当 检测 到由 1到 0的跳 变时 , 开 始 对 “接收 时钟 ”计 数 。 ( 2) 当 计 到 8个 时钟时 , 对输 入信号 进 行 检测 ,若仍 为 低 电 平, 则 确 认这 是 “起始位 ”,而不是干 扰 信号。( 3)接收端 检测 到起始位后,隔 16个接收 时钟 ,
7、 对输 入信号 检测 一次,把 对应 的 值 作 为 D0位 数 据。若 为逻辑 1, 作为 数 据位 1;若 为逻辑 0,作 为 数 据位 0。( 4)再隔 16个接收 时钟 , 对输 入信号 检测 一次,把 对应 的 值 作 为 D1位 数 据。 .,直到全部 数 据位都 输 入。( 5) 检测 校 验 位 P(如果有的 话 )。( 6)接收到 规 定的 数 据位个 数 和校 验 位后 ,通信接口 电 路希望收到停止位 S(逻辑 1),若此 时 未收到 逻辑 1, 说 明出 现 了 错误 ,在 状 态 寄存器中置 “帧错误 ”标 志。若 没 有 错误 , 对 全部 数 据位 进 行奇偶校
8、验 ,无校 验错时 ,把 数 据位从移 位寄存器中送 数 据 输 入寄存器。若校 验错 ,在 状 态 寄存器中置奇偶 错标 志。( 7)本幀信息全部接收完,把 线 路上出 现 的高 电 平作 为 空 闲 位。( 8) 当 信号再次 变为 低 时 , 开 始 进 入下一幀的 检测 。RS232串口通信详解(转载)_坦坦守护神_百度空 间http:/ (第 44 页)- 单 片机常用 11.0592M的的晶振,这 个奇怪 数 字是有 来 历 的: 波特率 为 9600BPS每 位位 宽t1=1/9600s 晶振周期 t2=1/11.0592/1000000S单 片机机器周期 t3=12*t2 t1
9、/t3=96即 对 于 9600BPS的串口, 单 片机 对 其以 96倍的速率 进 行采 样 。如果 单 片机晶振用的不正确,会 对 串口接受 产 生 误码 。-RS485和 RS422RS485总线 ,在要求通信距离 为 几十米到上千米 时 ,广泛采用 RS-485 串行 总线标 准。 RS485采用平衡 发 送和差分接 收,因此具有抑制共模干 扰 的能力。加上 总线 收 发 器具有高灵敏度,能 检测 低至 200mV的 电压 ,故 传输 信号能在千 米以外得到恢 复 。 RS485采用半双工工作方式,任何 时 候只能有一点 处 于 发 送 状 态 ,因此, 发 送 电 路 须 由使能信号
10、 加以控制。 RS485用于多点互 连时 非常方便,可以省掉 许 多信号 线 。 应 用 RS485可以 联 网构成分布式系 统 ,其允 许 最多并 联 32台 驱动 器和 32台接收器。RS422总线 ,RS485和 RS422电 路原理基本相同,都是以差 动 方式 发 送和接受,不需要 数 字地 线 。差 动 工作是同速率 条件下 传输 距离 远 的根本原因, 这 正是二者与 RS232的根本 区 别 ,因 为 RS232是 单 端 输 入 输 出,双工工作 时 至少需 要 数 字地 线发 送 线 和接受 线 三条 线 (异 步传输 ), 还 可以加其它控制 线 完成同 步 等功能。 RS422通 过 两 对 双 绞线 可 以全双工工作收 发 互不影响,而 RS485只能半双工工作, 发 收不能同 时进 行,但它只需要一 对 双 绞线 。 RS422 和RS485在 19kpbs下能 传输 1200米。用新型收 发 器 线 路上可 连 接台 设备 。