小编先讲一讲串口通信的一些基本概念,术语。如果对串口通信比较熟悉的,就当复习复习,如果哪里讲错或不到位,也可以及时指出,当作一块交流交流。
这里并不对串口的编程作讲解,主要是从应用的角度去讲一讲。因为更多的时候,都是产品做好了,比如触摸屏需要和控制器,PLC通信。理想的情况下,一般只要一上电,不需要太多的操作和配置,就可以通信上。
在这里罗列了一些问题,待会对这些问题讲一讲,看是否有类似的情况,也许可以一起交流分享。
1 电脑使用USB转串口可以和设备通信上,换成屏与设备就通信不上了。
2 这A家的屏可以和设备通信,换成B家的屏就通信不上了。
3 以前不接地线可以通信,换个设备为什么需要接地线了。
4 一个设备是232,另一个设备是422,没有转换设备,怎么办。(232与422互转的简单方法)
5 用232通信没问题,用485通信没问题,使用232转485之后就通信不稳定。
6 485单独接每个设备都通信正常,多个从站接一块通信就不稳定。
7 要想实现两个屏或两个主站通过485访问modbus设备,有什么好的办法。
8 针对串口通信的弱点,在使用上应该要注意哪些地方。
当然有可能实际遇到的还不只是这些问题,可能还有一些意想不到的问题,如果你还遇到过什么奇葩奇怪的问题,也可以留言,一块交流探讨,一定会知无不言,言而无尽。
要回答和解决以上这些问题,还需要先了解一下什么是串口通信,232,485,422等。
什么是串口通信
常见的串口通信一般是指异步串行通信。
这里就要说一下同步和异步的区别了。
算了,还是先讲一下串行通信的概念。那么,与串行通信相对的是什么呢。
与串行通信相对的是并行通信。数据传输一般都是以字节传输的,一个字节8个位。拿一个并行通信举例来说,也就是会有8根线,每一根线代表一个位。一次传输就可以传一个字节,而串口通信,就是传数据只有一根线传输,一次只能传一个位,要传一个字节就需要传8次。
与异步通信相对的就是同步通信了。同步通信一般是指有一个时钟信号进行数据信号同步。同步通信对接收方来说就相对简单一些。因为有时钟信号在,每一个高低电平变化一下,就去取一下数据就行了。通信速率可以由发送方或者说是主站设备进行控制。通信速度也相对比串口通信快很多。但是为什么很多设备,屏和plc,控制器不采用这种方式,都使用串口呢。
那么,在很多设备上,不方便接太多线,比如接8根数据线,也不方便接同步时钟信号(这个后面再说),于是一种异步串行通信就诞生了。
相对来说,异步串口通信,就只需要一根线就可以发送数据了。在对速率要求不高的情况,使用一根线发送数据是带来大大的方便和实用价值的。