物与物相连,需有“桥梁”,计算机与计算机,或者计算机与终端相连仍需介质,它们之间的数据传送可以采用串行通讯和并行通讯两种方式。串行通讯方式因其使用线路少、成本低,特别是在远程传输时,线路多样性而被广泛采用。
随着科技的发展,通讯接口也越来越丰富,常见的是RS232、RS422、RS485等,RS是英文“推荐标准”的缩写。在中国市场,连接计算机的端口,目前最常使用的通讯接口有两种类型:RS232、RS485。
同为串口,那么RS232、RS485有什么区别呢?
RS232是使用得三芯线通讯,RS485使用的是两芯线通讯,他们都可以使用DB9接口。具体使用中,RS232传输距离较近,RS485传输距离比较远。
RS232使用3根线(RX、tx、GND),收发同时进行,效率比RS485高,但是3根线不方便扩展组网,适合短距离两个设备单点快速通讯。
RS485使用2根线(D+、D-),收发交替进行,2根线方便多个设备串接组成网络,适合多设备中远距离通讯。
RS232是1:1的通讯,即一对一。
RS485是1:n的通讯方式,即一对多。RS485接口在总线上是允许连接多达128个收发器,其中有一台作为主机,其它作为从机,多态从机是通过地址码来区分的。
从单片机编程角度来看,RS232和RS485只是驱动芯片不同。 RS485是半双工,RS232是全双工,在编程的时候是有区别的。
RS485芯片接收和发送不能同时进行,所以作为主机的单片机在发出指令后,要延时后再接收数据。RS485在发送时,需要转换成发送状态,发送结束,再转换在接收状态。
半双工方式:通信双方设备既是发送器,也是接收器,两台设备可以相互传送数据,但某一时刻则只能向一个方向传送数据。例如,步话机是半双工设备,因为在一个时刻只能有一方说话。
全双工方式:通信双方设备既是发送器,也是接收器,两台设备可以同时在两个方向上传送数据。例如,电话是全双工设备,因为双方可同时说话。