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

RS485協(xié)議簡(jiǎn)介,rs485通訊總線協(xié)議應(yīng)用及缺點(diǎn)分析

工業(yè)通訊RS232如何轉(zhuǎn)RS485通訊接頭

評(píng)論