对于软件来说,485通信和串口通信是一回事,都是操作串口。这两者只是硬件上的区别而已,跟软件没关系的。所谓的485通信,只是在串口上加了一个转换器而已。
RS485与RS232的区别其实并不大,转输方式是一样的。
区别在于:RS485是差分(差分信号)传输,RS232是非差分(同分信号)传输的。
因此,RS485传输信号扰干扰能力强于RS232,故传输距离较RS232远。
就编程上来看,与RS232并没有区别。对于计算机来说如果在232串口上进行485通讯的话,要加入一个RS232/RS485转换模块才行。
一般的485卡,实际上是一个RS-232接口卡,不过该RS-232接口卡,直接带有RS-232电平转RS-485电平功能。
PC机主板上,一般有Com1和Com2,插上485卡后,就会有Com3、Com4……。
所以编程完全和Com1\Com2一样。
485是半双工通信,为什么用485?
因为232只能是点对点,而485可以一对多(一主多从),还有485用的电流环方式,搞干扰强,传输距离远(232是电压型信号,一般10来米就差不多了,485理论上可以到1000米,不过我实际上最好不要超过600米,速率在9600以下)。232最少是3线,收发地,485是2线方式(所谓A/B线)。
物理接口和通信协议是两回事,虽有些协议要一定的物理接口支持,比如工业上常用的MODBUS/HART等,可以在232/485上用,也可以在TCP/IP接口上运用。
台式机的串口都是RS232的,232和485的串口用针脚来定义的话有两种,一种是9针的,一种是25针的,常见的是九针,232和485的差别是两个通讯距离的差别,232的串口界面只能支持15米的范围,485可以拓展到1200米。