【发布时间】:2009-04-26 03:42:10
【问题描述】:
使用半双工串行连接与全双工串行连接有何不同?如果双方同时尝试发送数据会发生什么?您最终会收到损坏的数据吗?流量控制对您有帮助吗?
【问题讨论】:
标签: serial-port duplex
使用半双工串行连接与全双工串行连接有何不同?如果双方同时尝试发送数据会发生什么?您最终会收到损坏的数据吗?流量控制对您有帮助吗?
【问题讨论】:
标签: serial-port duplex
在线数据会出现乱码,这可能会也可能不会导致设备接收到乱码数据。有时这将用于检测由于冲突而导致传输失败。
通常,您不会以与全双工相同的方式使用半双工以异步模式发送单个字符。相反,您会使用一些数据包协议来确定谁有权在何时发送,并包含一些校验和(通常是 CRC)来检测损坏。
流控制对此没有多大帮助。其目的是确保接收器不会被太多数据溢出。有使用 ASCII 字符 XON 和 XOFF 来启动和停止传输的软件流控制,以及使用 RTS(请求发送)和 CTS(清除发送)控制线的硬件流控制。 XON/XOFF 风格的软件流控制不适用于半双工。
现在你看不到使用普通 RS-232 和调制解调器的半双工(我在 80 年代将它与声耦合器一起使用,即使在那时也很少见)。但 RS-485 很常见,用于各种协议的工业控制。还有许多其他以半双工方式运行的数据传输标准,主要是当有两个以上的设备连接到同一条线路时(古老的 10base2 以太网、CAN、LIN、FlexRay、I2C ......)。
【讨论】:
天哪,你在这个时代从哪里找到半双工线?
不管怎样,答案是,如果两端都驱动线路,它就会变得混乱。出于这个原因,有指定的 ASCII 字符位于 Clear to Send 和 Data Terminal Ready (CTS and DTR) 用于进行握手。请参阅this tutorial 了解更多信息。
哎呀,我应该去睡觉了。教程对了,我笨。
【讨论】: