有用的是MODBUS-RTU和TCP,ASCII就不用要管它了,因为支持的很少,记忆中只遇到三菱变频器支持类似ASCII通信。以前的硬件,如FX2N、FX3U、51单片机、上位机运行C语言编写的监控工程,需要熟悉MODBUS-RTU和TCP通讯报文以及CRC校验码的算法程序。而S7-200走在了前面,它的MODBUS通讯功能块,使编程用户几乎不需要熟悉MODBUS报文。后来有了更先进的硬件FX5U、Q和IQ-R系列的MODBUS通信模块、S7-1200、STM32等及其配套的软件,上位机、触摸屏也有了功能更全的组态监控软件,大量地使用功能指令、功能块、C语言库函数等,使得编程变得简单了,到了现在,几乎不用熟悉通讯报文,只需要掌握输入端口、输出线圈、输入寄存器和保持寄存器的寻址即可。RTU和TCP的区别主要在于两者硬件不一样,RTU是基于RS232、RS485/422半双工通信,TCP是基于以太网的全双工通信。两者的通信报文格式不一样。RTU要CRC校验码,TCP不需要。其它没什么区别。