modbus4-232 485 单机 多机
生活随笔
收集整理的這篇文章主要介紹了
modbus4-232 485 单机 多机
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
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發(fā)數據,rx接數據,二者獨立所以在線路上滿足全雙工。并且在c51內部的串口電路也有獨立的接受器和發(fā)送器。接收器由輸入移位寄存器和接受SBUF構成,發(fā)送器由發(fā)送SBUF(不同于接受SBUF)構成。在接收的時候,RXD引腳數據自動按照波特率移位進輸入移位寄存器,與此同時發(fā)送SBUF里德數據可以自動移位到引腳TXD。引腳與寄存器之間的移位由硬件電路完成,cpu不必參與。所以在電路上滿足全雙工。
②max485:需要多機互聯(lián)的如要實現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口之間的數據轉發(fā),和用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。
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發(fā)數據,rx接數據,二者獨立所以在線路上滿足全雙工。并且在c51內部的串口電路也有獨立的接受器和發(fā)送器。接收器由輸入移位寄存器和接受SBUF構成,發(fā)送器由發(fā)送SBUF(不同于接受SBUF)構成。在接收的時候,RXD引腳數據自動按照波特率移位進輸入移位寄存器,與此同時發(fā)送SBUF里德數據可以自動移位到引腳TXD。引腳與寄存器之間的移位由硬件電路完成,cpu不必參與。所以在電路上滿足全雙工。
②max485:需要多機互聯(lián)的如要實現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口之間的數據轉發(fā),和用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。
轉載于:https://www.cnblogs.com/-song/archive/2011/11/05/3331934.html
總結
以上是生活随笔為你收集整理的modbus4-232 485 单机 多机的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: modbus3-关于Modicon Mo
- 下一篇: osgEarth用户手册