串口通信三要素:波特率、数据位与校验位

串口看起来老,但在传感器、扫码器和部分控制器上仍然常见。通信不通时,多数问题出在参数不一致或接线方式搞错。
参数必须完全一致
波特率决定传输速度,两端不同会读到乱码;数据位通常为八位,表示一个字符的位数;停止位标示一个字符结束;校验位用于检出传输错误,分为奇校验、偶校验与无校验。四项中任何一项不一致,通信都无法正常建立。
接线先分清两种方式
- 三线制:发送、接收与地线交叉连接,发送接对方接收。
- 两线制:在半双工总线上收发共用一对线,需要方向控制。
- 屏蔽与接地:屏蔽层单端接地,避免两端接地形成环流。
排查顺序
先确认物理连接与线序,再用示波器或通信指示观察是否有数据发出,最后核对参数与协议帧格式。通信指示灯不闪说明发送侧就没工作,与参数无关;有发送无回复,重点查地址、站号与线序。
使用注意
长距离通信要降低波特率或改用差分方式;与变频器等强干扰设备共柜时,通信线远离动力线;连续通信要加超时与重试,重试次数有上限,避免通信异常时程序长时间卡住。