RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

原來RS-485這么簡單?

QuTG_CloudBrain ? 來源:記得誠 ? 2023-03-22 09:20 ? 次閱讀

RS-485概述

RS-485和RS-232一樣,都是串行通信標(biāo)準(zhǔn),現(xiàn)在的標(biāo)準(zhǔn)名稱是TIA485/EIA-485-A,但是人們會習(xí)慣稱為RS-485標(biāo)準(zhǔn),RS-485常用在工業(yè)、自動化、汽車和建筑物管理等領(lǐng)域。

RS-485總線彌補了RS-232通信距離短,速率低的缺點,RS-485的速率可高達(dá)10Mbit/s,理論通訊距離可達(dá)1200米;RS-485和RS-232的單端傳輸不一樣,是差分傳輸,使用一對雙絞線,其中一根線定義為A,另一個定義為B

RS-485物理層

RS-485的物理層負(fù)責(zé)在設(shè)備和物理傳輸介質(zhì)之間傳輸原始數(shù)據(jù)。它處理電信號到數(shù)字?jǐn)?shù)據(jù)的轉(zhuǎn)換,同時定義電壓、時序、數(shù)據(jù)速率等。

① 差分信號

長距離布線會有信號衰減,而且引入噪聲和干擾的可能性更大,在線纜A和B上的表現(xiàn)就是電壓幅度的變化,但是,采用差分線的好處就是,差值相減就會忽略掉干擾依舊能輸出正常的信號,把這種差分接收器忽略兩條信號線上相同電壓的能力稱為共模抑制。

02f4c218-c803-11ed-bfe3-dac502259ad0.png

標(biāo)準(zhǔn)規(guī)定了,邏輯1:+2V to +6V;邏輯0:-6V to -2V。

RS-485不需要使用特定的總線電壓,只看最小差分電壓,在較長的電纜長度上,接收器接收到的電壓可能會降低到+/- 200 mV,這對于RS-485仍然是完全可以接受的,這也是RS-485的優(yōu)點之一。

031047e0-c803-11ed-bfe3-dac502259ad0.png

很多收發(fā)器的標(biāo)準(zhǔn)達(dá)到甚至超過TIA/EIA-485A規(guī)范,在實際使用中,以器件的SPEC參數(shù)為主,如下某收發(fā)器的負(fù)輸入閾值最小也是-200mV。

03301b4c-c803-11ed-bfe3-dac502259ad0.png

② 信號定義

現(xiàn)在很多的RS-485轉(zhuǎn)換器都是兼容RS-422的,所以看到很多轉(zhuǎn)換器上面的信號都是T/R+、T/R-,即對應(yīng)RS-485的A+和B-。

03445314-c803-11ed-bfe3-dac502259ad0.png

對于DB9針型的母頭,RS-485有如下的接線定義示意,Pin6~Pin9為N/A不接。

DB9 輸出信號 RS-422全雙工接線 RS-485半雙工接線
1 T/R+ 發(fā)(A+) RS-485(A+)
2 T/R- 發(fā)(B-) RS-485(B-)
3 RXD+ 收(A+)
4 RXD- 收(B-)
5 GND 地線 地線

③拓?fù)浣Y(jié)構(gòu)

RS485有兩線制和四線制兩種接線,四線制只能實現(xiàn)點對點的通信方式,現(xiàn)很少采用,多采用的是兩線制接線方式,這種接線方式為總線拓?fù)浣Y(jié)構(gòu),在同一總線上最多可以掛接32個節(jié)點。

RS-485總線同I2C,也是主從模式,支持點對點單從機模式,也支持多從機模式,不支持多主機模式。

035cfae0-c803-11ed-bfe3-dac502259ad0.jpg

RS-485收發(fā)器

RS-485是差分傳輸,如果用單片機控制RS-485接口的設(shè)備,需要用到收發(fā)器,這一點和CAN總線是類似的,如下是一個MCU控制一個RS-485的圖示。

037c5d54-c803-11ed-bfe3-dac502259ad0.jpg

收發(fā)器內(nèi)部是一個接收器(上半部分)加一個發(fā)送器(下半部分),下面簡單說說收發(fā)器的原理,便于理解MCU是如何和485設(shè)備通信的。

0396d684-c803-11ed-bfe3-dac502259ad0.png

RS-485收發(fā)器內(nèi)部結(jié)構(gòu)

其中:

A和B為總線;

R為接收器輸入;

RE為接收器使能信號;

DE為發(fā)送器使能信號;

D為發(fā)送器輸出;

對于使能信號,字母上面加一橫的為低電平有效(如上圖RE),不加的為高電平有效(如DE)。

對于發(fā)送器,有如下的真值表:

1、當(dāng)驅(qū)動器使能引腳DE為邏輯高時,差分輸出A和B遵循數(shù)據(jù)輸入D處的邏輯狀態(tài)。D處的邏輯高導(dǎo)致A轉(zhuǎn)為高,B轉(zhuǎn)為低。在這種情況下,定義為VOD=VA-VB的差分輸出電壓為正。當(dāng)D為低時,輸出狀態(tài)反轉(zhuǎn),B變高,A變低,VOD為負(fù)。

2、當(dāng)DE低時,兩個輸出都變成高阻抗。在這種情況下,與D處的邏輯狀態(tài)是不相關(guān)的。

03acba6c-c803-11ed-bfe3-dac502259ad0.png

發(fā)送器真值表

對于接收器,有如下的真值表:

1、當(dāng)接收器使能引腳RE邏輯低時,接收器被激活。當(dāng)定義為VID=VA–VB的差分輸入電壓為正且高于正輸入閾值VIT+時,接收機輸出R變高。當(dāng)VID為負(fù)且低于負(fù)輸入閾值VIT-,接收機輸出R變低。如果VID在VIT+和VIT-之間,則輸出不確定。

2、當(dāng)RE為邏輯高或懸空時,接收機輸出為高阻抗,VID的大小和極性無關(guān)。

03c45672-c803-11ed-bfe3-dac502259ad0.png

接收器真值表

RS-485數(shù)據(jù)鏈路

上面講到的RS-485收發(fā)器的工作原理,下面簡單描述RS-485的數(shù)據(jù)鏈路,可以先看一下通俗易懂的UART協(xié)議幀格式

03dd2350-c803-11ed-bfe3-dac502259ad0.jpg

主機發(fā)送給從機或者從機發(fā)送給主機,都會占用到A和B線,所以RS-485多用在半雙工模式。

主機的GPIO會控制RS-485收發(fā)器的DE管腳,設(shè)置發(fā)送模式,從UART TXD線向RS-485收發(fā)器的數(shù)據(jù)(D或DI)線發(fā)送一個字節(jié),收發(fā)器將在A和B線上將單端UART位流轉(zhuǎn)換為差分位流,數(shù)據(jù)離開收發(fā)器后,主機立即將收發(fā)器的模式切換為接收模式。

從機和主機是類似的,從機控制RS-485收發(fā)器的/RE管腳,設(shè)置為接收模式,接收主機發(fā)送的比特流,將其轉(zhuǎn)換為單端信號,通過從機的UART RXD線接收,當(dāng)從機準(zhǔn)備好響應(yīng)時,它按主機原來的方式進行發(fā)送,而主機變?yōu)榻邮铡?/p>

RS-232和RS-485轉(zhuǎn)換

RS-232和RS-485之間可以轉(zhuǎn)換,一個方法是RS-232轉(zhuǎn)換成TTL,再由TTL轉(zhuǎn)換為RS-485,當(dāng)然也有芯片支持將RS-232直接轉(zhuǎn)換成RS-485,網(wǎng)上有很多模塊。

RS-232和RS-485轉(zhuǎn)換模塊

RS-485和CAN的區(qū)別

雖說RS-485沒有標(biāo)準(zhǔn)的數(shù)據(jù)協(xié)議格式,但和CAN總線在很多地方是有相似的,比如A&B和CANH&CANL都是差分信號,通信都需要收發(fā)器,都需要120歐姆的匹配電阻等等。

總線特性 CAN總線 RS-485總線
硬件成本 稍高 低廉
總線利用率 優(yōu)先級自動仲裁,利用率高 采用輪詢,利用率低
數(shù)據(jù)傳輸率
錯誤檢測機制 控制器帶校驗機制,保證底層數(shù)據(jù)傳輸正確 只有物理層規(guī)范,無數(shù)據(jù)鏈路層規(guī)定
單節(jié)點故障影響 總線無影響 總線癱瘓
開發(fā)成本 軟件開發(fā)靈活,時間成本低 開發(fā)難度較大
系統(tǒng)成本 較低

RS-485常用電路

網(wǎng)上找的一個常用的RS-485電路,其中需要注意兩點:

041d65e6-c803-11ed-bfe3-dac502259ad0.png

1、使能信號RE和DE可采用一個GPIO控制,節(jié)省資源,GPIO25輸出高電平,RE=DE=0V,進入接收模式;GPIO25輸出低電平,RE=DE=3.3V,進入發(fā)送模式。

2、有一些電路中會在A上加上拉,B上加下拉電阻,主要原因是:RS-485總線在idle狀態(tài),電平是不固定的,即電平在-200mV~+200mV之間,收發(fā)器可能輸出高也可能輸出低,UART在空閑時需要保持高電平的,如果此時收發(fā)器輸出一個低電平,對UART來說是一個start bit,會導(dǎo)致通信異常,關(guān)于Ru和Rd的阻值在這里不作過多贅述,后面有機會會詳細(xì)寫一篇文章。

關(guān)于第二點,需要注意:

① A上加上拉,B上加下拉,接反數(shù)據(jù)通信也可能出錯。

② 某些收發(fā)器內(nèi)部集成上下拉電阻,則外部不需要再添加。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 收發(fā)器
    +關(guān)注

    關(guān)注

    10

    文章

    3424

    瀏覽量

    105959
  • 信號
    +關(guān)注

    關(guān)注

    11

    文章

    2789

    瀏覽量

    76730
  • 總線
    +關(guān)注

    關(guān)注

    10

    文章

    2878

    瀏覽量

    88051
  • 串行通信
    +關(guān)注

    關(guān)注

    4

    文章

    571

    瀏覽量

    35396
  • RS-485
    +關(guān)注

    關(guān)注

    11

    文章

    683

    瀏覽量

    84255
收藏 人收藏

    評論

    相關(guān)推薦

    原來RS-485的通信距離幾乎是無盡的

    RS-232/RS-485中繼轉(zhuǎn)換器一邊轉(zhuǎn)換還一邊中繼,每接一個中繼轉(zhuǎn)換器那么RS-485的距離就再增加1200米,還無需外接電源。中繼轉(zhuǎn)換器將RS-232口轉(zhuǎn)換為相互中繼的2個
    發(fā)表于 09-17 15:46

    無極性RS-485簡單解決方法

    RS-485的2根信號線為A 和B,簡單的定義就是電平高的一根為A,低的為B。如果RS-485總線傳輸了很遠(yuǎn)之后,A和B搞混了,不是搞反了,那么有如下簡單的方法就可以將無極性的
    發(fā)表于 10-20 15:58

    RS-485的手拉手連接

    比較手拉手的方案與直接并聯(lián)方案,說明手拉手可以實現(xiàn)不限距離和節(jié)點數(shù)的連接。1、簡單RS-485直接并聯(lián)連接這種直接并聯(lián)連接也是RS-485的最簡單的連接方式。5個
    發(fā)表于 12-08 09:35

    RS-485通訊協(xié)議的介紹

    改進了物理層,因而保留了串口通訊協(xié)議應(yīng)用簡單的特點。二、RS-485物理層RS-485RS-232的差異只體現(xiàn)在物理層上,它們的協(xié)議層是相同的,也是使用串口數(shù)據(jù)包的形式傳輸數(shù)據(jù)。而由
    發(fā)表于 08-20 06:08

    RS-485的相關(guān)資料推薦

    前世今生RS-485,RS是什么意思呢?是Recommended Standard的縮寫,就是推薦標(biāo)準(zhǔn)的意思。485是標(biāo)準(zhǔn)標(biāo)識號,至于為什么定這個標(biāo)識號,則無需深究。RS-485又稱為
    發(fā)表于 01-26 07:41

    RS-485的相關(guān)資料分享

    RS-485概述RS-485RS-232一樣,都是串行通信標(biāo)準(zhǔn),現(xiàn)在的標(biāo)準(zhǔn)名稱是TIA485/EIA-485-A,但是人們會習(xí)慣稱為
    發(fā)表于 02-09 07:10

    iCoupler Isolation in RS-485 A

    iCoupler Isolation in RS-485 Applications:The RS-485 bus standard is one of the most widely used
    發(fā)表于 06-21 10:31 ?22次下載

    RS-485總線標(biāo)準(zhǔn)及幾種常見的RS-485接口電路介紹

    RS-485總線標(biāo)準(zhǔn)及幾種常見的RS-485接口電路介紹
    發(fā)表于 12-21 14:45 ?0次下載

    RS-485應(yīng)用設(shè)計參考

    幾乎所有的電子產(chǎn)品都帶有通信接口。從最初的數(shù)據(jù)模擬信號到后來的RS-232,在到我們今天要談到的RS-485接口,各種無線接口等。RS-485的標(biāo)準(zhǔn)全稱為TIAA/EIA-485串行通
    發(fā)表于 04-07 16:44 ?1546次閱讀

    RS-485是什么,RS-485它應(yīng)該如何進行布線

    RS-485是一個物理接口,簡單來說,也就是硬件。RS-485屬于有線傳輸,所以就需要硬件傳輸媒介,實際就是兩根線就可以了,這兩根線上傳輸?shù)膶嶋H上是同一個信號,只是發(fā)送端把這個信號一分為二,不過在
    發(fā)表于 08-10 16:36 ?1.9w次閱讀
    <b class='flag-5'>RS-485</b>是什么,<b class='flag-5'>RS-485</b>它應(yīng)該如何進行布線

    RS-485選型及應(yīng)用指南

    RS-485選型及應(yīng)用指南
    發(fā)表于 10-25 09:37 ?15次下載

    RS-485收發(fā)切換】使用RS-485要注意的一個問題

    RS-485收發(fā)切換】使用RS-485要注意的一個問題
    發(fā)表于 11-25 11:21 ?21次下載
    【<b class='flag-5'>RS-485</b>收發(fā)切換】使用<b class='flag-5'>RS-485</b>要注意的一個問題

    原來RS-485這么簡單?

    RS-485概述RS-485RS-232一樣,都是串行通信標(biāo)準(zhǔn),現(xiàn)在的標(biāo)準(zhǔn)名稱是TIA485/EIA-485-A,但是人們會習(xí)慣稱為
    發(fā)表于 12-05 16:51 ?31次下載
    <b class='flag-5'>原來</b><b class='flag-5'>RS-485</b><b class='flag-5'>這么</b><b class='flag-5'>簡單</b>?

    聊聊RS-485總線

    RS-485,RS是什么意思呢?是Recommended Standard的縮寫,就是推薦標(biāo)準(zhǔn)的意思。
    發(fā)表于 11-12 09:38 ?2150次閱讀

    RS-485總線】RS-485網(wǎng)絡(luò)該如何加終端電阻?

    RS-485總線具有結(jié)構(gòu)簡單、成本低等優(yōu)點,但各位工程師在組建RS-485總線網(wǎng)絡(luò)時,為提升整個網(wǎng)絡(luò)通信的可靠性,想必會經(jīng)常會遇到一個問題:需不需要加終端電阻呢?本文將為你解答。終端電阻的作用對于
    的頭像 發(fā)表于 09-14 08:05 ?508次閱讀
    【<b class='flag-5'>RS-485</b>總線】<b class='flag-5'>RS-485</b>網(wǎng)絡(luò)該如何加終端電阻?
    RM新时代网站-首页