什么是RS485?
RS485 是一種通用的通信標準,廣泛用于數(shù)據(jù)采集和控制應用中。它的主要優(yōu)點之一是它允許將多個 RS485 設備放在同一條總線上,這使得多個節(jié)點可以相互連接。
RS-485(目前稱為EIA/TIA-485)是通信物理層的標準接口,一種信號傳輸方式。
串行 EIA-485 連接是使用兩根或三根電線的電纜完成的:一根數(shù)據(jù)線、一根帶反轉數(shù)據(jù)的電線,通常還有一根零線(接地,0 V)。這樣,發(fā)射器和接收器通過 22 或 24 AWG 實心線的雙絞線電纜交換數(shù)據(jù)。
這里的主要思想是通過兩根電線傳輸一個信號。
當一根電線傳輸原始信號時,另一根電線傳輸其反向副本。這種傳輸方法提供了對共模干擾的高抵抗力。用作傳輸線的雙絞線可以是屏蔽或非屏蔽的。
RS485能跑多遠?
建立在 RS-485 接口上的通信網(wǎng)絡由通過雙絞線(兩條雙絞線)連接的收發(fā)器組成。
RS-485接口的基本原理是差分(平衡)數(shù)據(jù)傳輸。這意味著一個信號通過兩根電線傳輸。這樣,一對中的一根線傳輸原始信號,另一根傳輸其反向副本。
作為差分信號傳輸?shù)慕Y果,導線之間總是存在電位差。 這確保了對共模干擾的高抵抗力。 另外,雙絞線可以屏蔽,保證傳輸數(shù)據(jù)的保護。所有這些都允許以相對較高的速度遠距離發(fā)送數(shù)據(jù),在 4000 英尺處可以達到 100 kbits/s。
4000 英尺或大約 1200 米是 RS-485 通信中的最大電纜長度。但是,一般準則是線路長度(以米為單位)和數(shù)據(jù)速率(以每秒比特數(shù)為單位)的乘積不應超過 108。例如,20 米長的電纜允許的最大數(shù)據(jù)速率為 5 Mbits /秒。
RS485通訊協(xié)議是什么?
當 RS485 通信線路在物理層準備好運行時,是時候考慮數(shù)據(jù)傳輸協(xié)議——系統(tǒng)設備之間關于數(shù)據(jù)包傳輸格式的協(xié)議。
由于 RS-485 接口的性質,RS-485 設備不能同時發(fā)送和接收數(shù)據(jù),因為這會導致發(fā)送器的沖突。因此,確定性行為是強制性的,以避免數(shù)據(jù)包的沖突。
在 RS485 通信協(xié)議中,命令由定義為主站的節(jié)點發(fā)送。連接到主站的所有其他節(jié)點都通過 RS485 端口接收數(shù)據(jù)。根據(jù)發(fā)送的信息,線路上的零個或多個節(jié)點響應主站。
話雖如此,這種類型的通信并不是通過 RS485 協(xié)議交換數(shù)據(jù)的唯一可能方式。RS485 網(wǎng)絡還有其他一些實現(xiàn)方式,其中每個節(jié)點都可以自行啟動數(shù)據(jù)傳輸。但是,在此類網(wǎng)絡中可能丟失數(shù)據(jù)的風險更高。
RS-485通訊主要特點
盡管有各種各樣的現(xiàn)代替代解決方案,但今天 RS-485 技術仍然是許多通信網(wǎng)絡的基礎。RS-485接口的主要優(yōu)點是:
- 通過一對雙絞線進行雙向數(shù)據(jù)交換;
- 支持連接到同一條線路的多個收發(fā)器,即創(chuàng)建網(wǎng)絡的能力;
- 通訊線長;
- 高傳輸速度。
雙向半雙工數(shù)據(jù)傳輸
串行數(shù)據(jù)流可以在一個方向傳輸,數(shù)據(jù)傳輸?shù)搅硪粋刃枰褂檬瞻l(fā)器。收發(fā)器(通常稱為“驅動器”)是在發(fā)射器側形成物理信號的設備或電路。
對稱通信通道
接收或傳輸數(shù)據(jù)需要兩條等效的信號線。電線用于在兩個方向(交替)交換數(shù)據(jù)。在雙絞線電纜的幫助下,對稱通道顯著提高了信號的穩(wěn)定性并抑制了有用信號產生的電磁輻射。
多點
RS-485通訊線可以連接多個接收器和收發(fā)器。同時,一個發(fā)送器和多個接收器一次可以連接到一根通信線路上。所有其他需要連接的發(fā)送器應等待通信線路空閑以進行數(shù)據(jù)傳輸。
實戰(zhàn)之后的理解
其實不管是485還是232都屬于板間通訊的一種,其本質就是把板上微弱的TTL電平,通過485或者232芯片(也就是電平轉換芯片),轉成更高的電平。
所以對于主MCU而言,和485芯片之間還是通過TX、RX相連的。
咱們可以簡單找一個485收發(fā)器的芯片數(shù)據(jù)手冊看一下
8個引腳,A、B、電源和地不用說。
其中
RO為接收器的輸出引腳,和MCU的RX引腳連
- If A > B by 200mV, RO will be high
- If A < B by 200mV, RO will be low
DI為接收器的輸入引腳,和MCU的TX引腳連
DE Driver Output Enable 驅動器的輸出使能
RE(加杠) Receiver Output Enable 接收器使能
我們只需要一個GPIO引腳來控制
,這個GPIO引腳我們經常叫它DIR。
當DIR=0時,接收電路使能REˉ=0(上加橫杠,代表低電平有效),發(fā)送電路禁止DE=0,對于總線而言相當于高阻,發(fā)不了消息,只能接收;
當DIR=1時,接收電路禁止REˉ=1,發(fā)送電路使能DE=1,對總線A/B信號取決于DI的信號。
DE、RE設計成相反的邏輯,也就是為了方便用一個GPIO口同時控制收發(fā)電路。
-
收發(fā)器
+關注
關注
10文章
3428瀏覽量
106002 -
接口
+關注
關注
33文章
8598瀏覽量
151153 -
RS485
+關注
關注
39文章
1159瀏覽量
82326 -
通訊協(xié)議
+關注
關注
10文章
274瀏覽量
20354 -
通信網(wǎng)絡
+關注
關注
21文章
2039瀏覽量
52041
發(fā)布評論請先 登錄
相關推薦
評論