RS232、USB、RS485转TTL,MODBUS协议 20170611 周日

来源:互联网 发布:怎么彻底卸载360 知乎 编辑:程序博客网 时间:2024/06/05 06:45

1.RS232转UART:RS232标准是一个负逻辑,-3V~-15V电压代表1,+3V~+15V电压代表0,所以称为负逻辑。因此标准的RS232串口是不能和单片机直接连接,必须通过电平转换芯片MAX232进行电平转换。RS232串口和UART串口的协议类型是一样的,只是电平标准不同而已。

2.USB转UART:随着技术的发展,USB转UART取代了RS232串口。要实现电脑和单片机串口通信,我们需要用USB转UART芯片实现USB通信协议和标准UART通信协议的转换,比如CH340。

3.RS485转UART:RS485采用差分传输,两个通信线,通常用A和B或D+和D-来表示。逻辑“1”以两线间的电压差+(0.2~6)V表示,逻辑“0”以两线间的电压差-(0.2~6)V表示。最大传输速度可以达到10Mb/s以上 ,最远可以达到1200米左右,但是它的传输速率和传输距离是成反比的,只有在100Kb/s以下的传输速度,才能达到最大的通信距离。可以在总线上进行联网实现多机通信,总线上允许挂多个收发器,从现有的RS485芯片来看,有可以挂3264128256等不同个设备的驱动器。与单片机通信只需要RS485转UART芯片,比如MAX485。 


总结:

RS232 接口只能实现点对点通信,不具备联网功能,最大传输距离也只能达到十几米,不能满足远距离通信要求。而RS485则解决了这些问题,数据信号采用差分传输方式,可以有效的解决共模干扰问题,最大距离可达1200米,并且允许多个收发设备接到同一条总线上。

4.MODBUS是数据传输是指定的一种协议,有ASCII码模式和RTU模式,常用RTU模式。

RTU模式:每个字节位:1 个起始位 、8数据位、1停止位、1奇偶校验位,没有则无,与串口通信字节数据格式一致。下面是RTU消息帧格式:


T1-T2-T3-T4:消息发送至少要以3.5个字符时间间隔以上。

每个消息帧主要包括四部分:1字节设置地址、1字节功能代码、n字节数据、2字节CRC校验。我们经常操作主要是读寄存器、写寄存器。具体编程操作可参考MODBUS协议中文版。

MODBUS协议主要用在多机通信上常和RS485配合使用。





原创粉丝点击