现在的位置: 首页 > 综合 > 正文

modbus4-232 485 单机 多机

2013年07月01日 ⁄ 综合 ⁄ 共 1296字 ⁄ 字号 评论关闭

http://www.mcuol.com/download/upfile/20090504091459_PL-2303HX.pdf

http://datasheets.maxim-ic.com/en/ds/MAX220-MAX249.pdf

http://datasheets.maxim-ic.com/en/ds/MAX1487-MAX491.pdf

①max232:占用mcu的2个引脚即用于串口的那2个,c51的是p3.1(tx)和p3.0(rx)。mcu使用tx发数据,rx接数据,二者独立所以在线路上满足全双工。并且在c51内部的串口电路也有独立的接受器和发送器。接收器由输入移位寄存器和接受SBUF构成,发送器由发送SBUF(不同于接受SBUF)构成。在接收的时候,RXD引脚数据自动按照波特率移位进输入移位寄存器,与此同时发送SBUF里德数据可以自动移位到引脚TXD。引脚与寄存器之间的移位由硬件电路完成,cpu不必参与。所以在电路上满足全双工。

②max485:需要多机互联的如要实现modbus通信的mcu需要加一个max485,而不是max232。如果是半双工的max485,则占用mcu的3个引脚即用于串口的那2个外加一个读or写控制的一个io口。当然如果已经用的是max232也没关系也可进行485通信,外部再加一个232-485转换器就ok.但是这样的话,在mcu侧的串口代码就需要按照max232的写即不必管控制引脚。另外,因为pc侧始终是232接口,所以pc与232设备通信则可以直接通信,与458设备通信需要一个232-485的转换器。所以不管以上那种通信途径,pc侧的代码始终按照232de.

③usb-232转换器,即一个同时含usb和uart接口的mcu设备,mcu一般使用pl-230hx进行串口和usb口之间的数据转发,和用8051f320去实现差不多。
由于232接口基本都是为连接pc而设计的,所以几乎所有的232串口设备都会配置一个max232芯片,也包括usb-232转换器。max232芯片进行电平转换,是在单片机侧使用的TTL与pc侧使用的RS-232C之间。这样串口设备就可以直接连接pc的232串口了。当然如果仅用于设备与设备之间的232连接,就没必要在每个设备侧都加一个max232,恩,加了也没关系(但要加就要每个设备都加)可以预留着以后方便跟pc通信。
并且貌似一般的usb-232转换器的23脚在转换器内部已经交叉过,所以使用usb-232转换器连接其他232设备时直连即可。

一.232单机

二.232多机
232多机通信在硬件线路部分会出问题,所以行不通。

三.485单机--假设mcu使用max232进行电平转换,则需要外部使用232-485 converter。
(如果设备内部使用max485进行电平转换的就不必在设备外部外加232-485 converter。)

比如(右键大图)

四.485多机--假设mcu使用max232进行电平转换。如下是pc作主机,stc51和micro2440作从机使用modbus通信的连线实物图。地址分别是1,2。

抱歉!评论已关闭.