[工具下载] 在制定通讯协议时候,一定加入容错和重发机制

[复制链接]
568|1
1988020566 发表于 2025-9-26 10:58 | 显示全部楼层 |阅读模式
一、TTL电平
全双工(逻辑1: 2.4V--5V逻辑0: 0V--0.5V)

1、硬件框图如下,TTL用于两个MCU间通信


v2-5671288d6c69c856ef2339172c4428a9_1440w.jpg
2、‘0’和‘1’表示

v2-b350768186ee2b69ad6fb4760e2f740d_1440w.jpg
二、RS-232电平
全双工(逻辑1:-15V--5V逻辑0:+3V--+15V)
1、硬件框图如下,RS-232用于MCU与PC机之间通信

v2-e8de8f485cef5fef43988b69d15554ae_1440w.jpg
2、‘0’和‘1’表示

v2-70cfc7436472040078820dd97210e908_1440w.jpg
三、RS-485
半双工、(逻辑1:+2V--+6V逻辑0: -6V---2V)这里的电平指AB两线间的电压差。

1、硬件框图如下

v2-83fe7231db96f59436cc84cce270925b_1440w.jpg

2、‘0’和‘1’表示

v2-ef19cf1192e8d73ac4623ccf96d4bd0e_1440w.jpg
3.终端匹配和485使用时候要注意的事情
1,485布线时候,要注意AB极性,不能接反。
2,要单独供电,并且千万不能把485的AB线接入电源,485的通讯电压是5V。接入电源可能会烧毁整个总线设备。
3,485通讯只能菊花链布线,不能分叉。也就是不支持树形,星形,混合型。
4,在一些长线场合,还要加终端电阻,为了吸收总线上的驻波与反射。

v2-9f93e6fd489fcbfafac7be20e2b2d295_1440w.jpg
这些问题在施工布线时候一定要注意,在制定通讯协议时候,也一定加入容错和重发机制。
相比而言,二总线系统在现场则比485方便的多,例如POWERBUS,MBUS,KNX。这些问题全没有,额外还提供了供电,通讯协议也好指定一些。如果用于大规模或者稳定性要求高的现场布线,可以了解一下二总线。
四、CAN总线
逻辑1:-1.5V--0V逻辑0:+1.5V--+3V)这里的电平指CAN_High、CAN_Low两线间的电压差。
1、硬件框图如下

v2-92343aa730e424fc7b20958517c2c28d_1440w.jpg
2、‘0’和‘1’表示

v2-fd04b6b7abdc5da0ec9504655fe967ba_1440w.jpg

以上总结:
1、从单片机软件编程角度来说,RS232、RS-485最终结果都是转换为TTL电平方式与单片机通信(CAN收发器把差分信号转化为TTL-->CAN控制器(MCU))。其目的都是提高通信质量,提高抗干扰能力。
2、TTL、RS232是逻辑电平信号。RS-485、CAN为差分信号。
五、I2C
5.1 I2C物理层

v2-14b82f103335838c6bb2acdda83a3551_1440w.jpg
5.2 I2C协议层


v2-035fa17c2d119f0e3a6aa018d8457dbe_1440w.jpg
5.3数据的起始信号与停止信号

v2-85a90b2ddd09d2df55ad8d833c831e00_1440w.jpg

5.4数据有效性


v2-af6e70cbb85b6381a277c8f7007e62c8_1440w.jpg

I2C协议在 SCL高电平时对 SDA信号采样, SCL低电平时 SDA准备下一个数据。

桃乐丝 发表于 2025-10-2 18:08 | 显示全部楼层
制定通讯协议时加入容错和重发机制十分必要。容错可通过校验位(如 CRC、奇偶校验)检测数据错误,避免错传;重发机制在检测到丢包或错误时,触发重传请求,保障数据完整。尤其在工业控制、无线通信等干扰多、链路不稳定场景,能大幅提升协议可靠性,防止因数据异常导致设备故障或功能失效。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

423

主题

11029

帖子

7

粉丝
快速回复 在线客服 返回列表 返回顶部