一、RS485通信接口特點
作為工業領域上較常用的通信方式,RS485總線具有以下諸多特點:
收發器輸出A、B之間的電平為+2V~+6V,是邏輯“1”;為-6V~-2V,是邏輯“0”。信號電平比RS232降低了,不易損壞接口芯片。另有“使能”控制信號,可使收發器處于高阻狀態,切斷與傳輸線的連接。
接收器的輸入靈敏度為200mV。即在當接收端A、B之間的電平相差200mV時即可輸出邏輯。
傳輸速率高(10Mbps),傳輸距離達到1200m)。
具有多站點傳輸能力,即總線上允許掛接多達128個收發器,可建立設備網絡。
(5)RS485收發器共模電壓范圍為-7V~+12V,只有滿足該條件,整個網絡才能正常工作。當網絡線路中共模電壓超出此范圍時就會影響通信的穩定,甚至損壞接口。
二、RS485收發控制方法
RS485屬于半雙工總線,在實際使用時一般采用主機輪詢或令牌傳遞的方法來分配總線控制權,RS485設備需要進行發送和接收的方向轉換。比較通用的做法是,每個RS485設備在平時均處于接收狀態,只有在自己有數據要發送時才轉換到發送狀態,數據發送完畢后再次切換回接收狀態。
1、第一種:程序換向控制
最常用的RS485收發換向方法是程序換向,即由MCU的一個I/O端口控制RS485收發器件的收發使能引腳,在平時使RS485收發器件處于接收狀態,如下圖,這里485芯片用TI的SN65LBC184,最大速率達到250Kbps,當有數據需要發送時,MCU將RS485收發器件引腳(網絡RS485_EN2)置于發送狀態,完成數據發送后,再把RS485收發器件切回接收狀態。
這種方式簡單易行,不需增加額外成本,這種方法很多人都會知道并且基本上都用的方法。
2、第二種:自動換向
但是,當我們采用某種硬件平臺的工控主板或核心板進行二次開發時,由于工控主板或核心板上沒有預留出足夠的I/O端口,使得RS485收發的程序換向方法無法實現。在某些特定的情況下,開發平臺的底層驅動未對外開放,難以對底層進行二次開發,這種情況下即便有足夠的I/O端口也無法實現程序換向。為此,我們需要采用另外一種換向技術,即自動換向技術。自動換向其實就是對使能引腳不需要單獨的I/O口來控制,而是由發送引腳發送數據時候順便控制了。
要實現這種方法可以使能那里加一個反相器,如下圖,在空閑狀態下,串口的發送信號TXD2為高電平,經過反相器后輸出低電平,使SN65LBC184處于接收狀態,而RS485總線由于上下拉電阻的作用處于A高B低的狀態。當發送數據時,TXD2信號線上的低電平比特位控制SN65LBC184進入發送狀態,將該比特發送出去。而高電平比特位則使SN65LBC184處于接收狀態,由RS485總線上下拉電阻把總線置于A高B低的狀態,即表示發送了高電平。
反相器也可以用三極管代替,如下圖所示,工作原理和加反相器一樣。
但是這種方法在發送高電平時的驅動能力有限,因此會限制通訊距離,一般適用于距離不遠場合。
其實,為了省去控制的麻煩,也可以采用專門的、帶有AutoDirection功能的485芯片,比如MAX13487E,它省去了常用的485使能信號,從而簡化了設計電路。
審核編輯 :李倩
-
收發器
+關注
關注
10文章
3454瀏覽量
106170 -
通信
+關注
關注
18文章
6069瀏覽量
136285 -
RS485
+關注
關注
39文章
1165瀏覽量
82495
原文標題:RS485通訊是如何實現收發控制的?
文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論