日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

RS-485接口协议详解

發布時間:2023/12/14 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 RS-485接口协议详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

RS-485詳解

通信協議

? 通訊協議主要是實現兩個設備之間的數據交換功能,通訊協議分硬件層協議軟件層協議硬件層協議決定數據如何傳輸問題,比如要在設備1向設備2發送0x63,0x63的二進制數為0110 0011,這8個二進制數從設備1傳輸到設備2,涉及到1怎么傳,0怎么傳的問題,這就是硬件層要解決的問題。

? 硬件層協議目前比較多見的有RS-232、RS-485、SPI、IIC等。RS-232規定,線上的電壓為x伏都表示傳輸的是0,y伏傳輸的則是1。再者,比如要選擇多少條線傳輸數據,選擇什么材質的線傳輸輸入,這些也屬于硬件層協議約束的。硬件層協議也叫接口協議

? 軟件層協議就指的是通訊雙方在軟件編碼方面約定的通訊規則,就比如說一個人說中文,另一個人也要說中文,兩人才能進行交流;常見的軟件層協議有Modbus協議、TCP/IP協議、GPRS等;而Modbus協議可以通過串口、RS-485、以太網等來傳輸;

形象理解為:兩個用中文(軟件協議)交流的人,可以通過面對面、打電話、發短信等不同的方式(硬件協議)來通信

RS-485通訊協議

? MCU管腳輸出TTL電平,TTL電平的意思是,當MCU管腳輸出0電平時,一般情況下電壓是0V,當MCU管腳輸出1電平時,電壓是5V。因TTL電平的是由一條信號線,一條地線產生,信號線上的干擾信號會跟隨有效信號傳送到接收端,使得有效信號受到干擾,485通訊實際上是把MCU出來的TTL電平通過硬件層的一個轉換器芯片進行轉換:

? 把MCU出來的一條的TTL信號經過芯片轉換為兩根線(線A、線B)上的信號。當MCU給轉換器輸入低TTL電平時,轉換器會使得B的電壓比A的電壓高,反之,A的電壓比B的電壓高。

? 485協議規約兩條電平線上差值為多少表示0或者1,電壓是通過儀表可以測量得到的,所以說RS-485是硬件層協議

? 485協議的接收端可能是另一個MCU,MCU管腳也只接受TTL電平,轉換芯片過來的是兩條線的電壓,所以需要對此兩條線差分電壓轉換為TTL電平。

? 把TTL轉為485,實質是一個集成芯片,其間無任何程序代碼,純粹硬件邏輯。同理,將485電平轉為TTL也是如此。現在很多芯片把接收和轉換都集成到一塊IC,注意,轉換器和接收器依舊是沒有同時工作的,常見的轉換芯片是MAX485。

可以這樣理解,硬件層協議是公路,路的目的是為了讓車輛能夠過去。

半雙工通訊

? 首先了解什么是單工通訊,單工通訊是指數據只能朝著一個方向傳輸的通訊方式。而半雙工通訊則是指對于通訊兩端,不能同時相對方法發送數據,必須錯開時間段發送。

? RS-485的通訊線只有2條,且這兩條通訊線在一次傳輸中都需要用到,因此485只可實現半雙工通訊。485實現半雙工通訊,會遇到一個問題,MCU1向MCU2發數據時,并不知道線上是否正傳來MCU2數據,因為沒有其他線可用來判斷對方的收發狀態,那么可能也會導致數據沖突。因此,RS-485要實現半雙工通訊,就需要上層的軟件協議加以規約,也就是做到”不能你想發數據就發數據”。可以理解,軟件層協議就好像交通規則,它能讓數據有序傳輸。

RS-485介紹

? 電子工業協會(EIA)于1983年制訂并發布RS-485標準,并經通訊工業協會(TIA) 修訂后命名為TIA/EIA-485-A,所以TIA/EIA-485-A才是真正的名字,因為人們已經叫習慣RS-485了,所以后續也一直沿用RS-485這個叫法。
? RS-485標準是為彌補RS-232通信距離短、速率低等缺點而產生的。RS-485標準只規定了平衡發送器和接收器的電特性,而沒有規定接插件、傳輸電纜和應用層通信協議。
? RS-485標準與RS-232不一樣,數據信號采用差分傳輸方式(Differential Driver Modc),也稱作平衡傳輸,它使用一對雙絞線,將其中一線定義為A,另一線定義為 B,如圖所示。

傳輸方式以及電平邏輯

RS-485傳輸方式:半雙工通信、==(邏輯1:+2V ~ +6V 邏輯0:-6V ~ -2V)==這里的電平指AB 兩線間的電壓差

節點連接示意圖

因為大多數MCU的信號都是TTL信號,且數據是通過串口發送和接收,是不符合RS-485標準的,所以要將數據放在485通信線上傳輸的話,就要將TTL信號轉為RS-485的差分信號,然后在AB線上傳輸,到達節點后再將RS-485的差分信號轉換為TTL信號,給節點的MCU進行數據處理

RS-485數據鏈路示意圖

拓撲結構

RS485有兩線制和四線制兩種接線,四線制只能實現點對點的通信方式,現很少采用,多采用的是兩線制接線方式,這種接線方式為總線拓撲結構,在同一總線上最多可以掛接32個節點。

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

電路原理圖

該原理圖是一個基本的RS-485電路,采用的是Sipex公司的SP3485芯片,是一款低功耗的,工作電壓為3.3V的芯片,該芯片的一些特性后面會介紹到

微處理器的標準串行口通過RXD直接連接SP3485芯片的RO引腳,通過TXD直接連接SP485R芯片的DI引腳。

讓該芯片處于發送模式還是接收模式的選擇位是DE/!RE,一般情況下把這兩個引腳接在一起,只用微處理器的一個引腳控制

U9是TVS管,環境惡劣時可加,做保護作用,平時實驗可以不加

R25是上拉電阻,R27下拉,默認狀態下將A拉高,B拉低,如果不加電阻,那默認情況下是不穩定的,會對單片機的引腳造成干擾

芯片內部圖

收發器內部是一個接收器(上半部分)加一個發送器(下半部分),然后就是引腳功能

RO:接收器輸出

RE:接收器輸出使能(低電平有效)

DE:發送器輸出使能(高電平有效)

DI:發送器輸入

GND:接地連接

A:發送器輸出/接收器輸入反相

B:發送器輸出/接收器輸入反相

Vcc:正極電源(+3.3V<VCC<+3.60V)

發送功能真值表

如果微處理器輸出的信號DE_nRE為高電平,則芯片處于發送模式(發送器/驅動器),差分輸出A和B遵循數據輸入DI處的邏輯狀態;

當DI為高電平時,導致A轉為高,B轉為低。在這種情況下,定義為VOD=VA-VB的差分輸出電壓為正,也就是邏輯1(AB間的電壓差為+2V ~ +6V);

當DI為低電平時,輸出狀態反轉,B變高,A變低,VOD為負 ,為邏輯0(AB間的電壓差為 -6V ~ -2V);

當DE低時,兩個輸出都變成高阻抗。在這種情況下,與D處的邏輯狀態是不相關的。

接收功能真值表

如果微處理器輸出的信號DE_nRE為低電平,則芯片處于接收模式(接收器),如果為高電平,則關閉接收模式;

AB間的電平大于+200mv時,RO引腳輸出邏輯1;

AB間的電平小于-200mv時,RO引腳輸出邏輯0;

當AB間的電平處于-200mv ~ +200mv之間時,則表示不穩定

優點

  • 半雙工通信

  • 差分信號傳輸,更加穩定

  • RS485內部的物理結構,采用的是平衡驅動器和查分接收器的組合,抗干擾能力大大增加。

  • 可以在總線上進行聯網實現多機通信,總線上允許掛多個收發器,從現有的RS485芯片來看,有可以掛32、64、128、256等不同個設備的驅動器。

  • 通信速度快,數據最高傳輸速率在10Mbps以上

  • 傳輸速率最遠可達到1200米左右,但是傳輸速率和傳輸距離是成反比的,只有在100KB/s以下的傳輸速率,才能達到最大的通信距離,如果需要傳輸更遠距離可以使用中繼。

  • 系統運行穩定。利用專用通信總線把集中器和主站安全、可靠的連接起來。除非設備接口硬件損壞,或者總線線路斷開,總線抄表系統會一直保持很好的通信效果和抄收成功率。

  • 通信速率高。由于是專用的有線通信線路連接,線路上除了通信信號外,再無其他信號。外來的干擾信號耦合到線路衰減很大,所以集中器可以以較高的速率與主站通信。

  • 缺點

  • 不支持全雙工

  • 敷設困難。比如總線抄表系統需要在集中器與主站之間敷設通信線路。尤其是電能表比較分散時,通信線路敷設的工程量很大,而且架設在外的通信線路影響美觀。

  • 維護成本高。比如通信線路的損傷直接影響總線抄表方式的通信效果。所以需要定時的檢查線路,保證其正常運行。特別是架設在外面的線路,一旦斷裂或被腐蝕,要重新敷線。對于新增加的用戶,也要及時敷線,使其進入通信網內

  • 常用芯片

    增強型低功耗半雙工RS-485收發器一SP481E/SP485E

    特點:
    單一的+5V電源
    低功耗BiCMOS工藝制造
    發送器/接收器可使能多分支結構(Mutli-Drop)配置低功耗關斷模式(SP481E)

    描述(SP481E,SP485E)
    SP481E 和SP485E是半雙工差分收發器,完全滿足RS-485和 RS-422的要求。它們由Sipex特有的 BiCMOS工藝制造而成。
    RS-485標準理想地用于多分支(multi-drop)應用和遠程接口中。它允許在一條數據線上連接32個發送器和接收器,非常適合于多分支應用。由于允許使用4000英尺長的電纜,RS-485收發器可以使用一個寬(一7V~+12V)共模方式范圍來調整零電位偏差。因為RS-485是一個差分接口,所以傳輸數據時完全可以抑制來自發送線的干擾。


    1/10單位負載RS-485收發器一SP481R/SP485R

    特點
    單一的+5V電源
    允許超過400個收發器連接到同一條傳輸線上(1/10單位負載)接收器輸入高阻抗(標準值RIN=150kQ)
    半雙工配置與工業標準管腳一致

    共模輸入電壓范圍為-7V~+12V
    包含關斷模式(ICC<10uA)(適用于SP481R)低功耗(250mW)
    獨立發送器和接收器使能

    SP485R芯片是由業內專業的通訊接口器件廠商Sipex 公司設計生產的高性能RS-485收發器,能夠替換通用的RS-485收發器,并在許多方面有所增強。
    SP481R和SP485R與現有的SP485產品管腳對應相同,而且包含更高的ESD保護和高接收器輸入阻抗等性能。接收器輸入高阻抗可以使400個收發器接到同一條傳輸線上又不會引起RS-485發送器信號的衰減。各器件封裝為8腳塑料DIP或8腳窄SOIC。SP481R通過使能管腳來提供關斷功能,可將電源電流(Icc)降低到0.5uA 以下。


    +3.3V低功耗半雙工 RS-485收發器一SP3481/SP3485

    特點
    RS-485和 RS-422收發器工作電源為+3.3V
    可與+0.5V的邏輯電路共同工作發送器/接收器使能
    低功耗關斷模式(SP3481)-7V~+12V的共模輸入電壓范圍
    允許在同一串行總線上連接32個收發器與工業標準75176管腳配置兼容
    發送器輸出短路保護

    描述(SP3481,SP3485)
    SP3481和SP3485是+3.3V低功耗半雙工收發器家族的成員,它們完全滿足RS-485和RS-422串行協議的要求。這兩個器件與Sipex 的SP481、SP483和SP485的管腳互相兼容,同時兼容工業標準規范。SP3481和 SP3485由 Sipex特有的BiCMOS工藝制造而成,但性能不受影響。


    增強型低功耗全雙工RS-422收發器一SP490E/SP491E

    特點
    單一的+5V電源
    低功耗BiCMOS工藝制造發送器/接收器使能(SP491E)RS-485和 RS-422發送器/接收器
    管腳兼容LTC490和 SN75179(SP490E)管腳兼容LTC491和 SN75180 (SP491E)增強型ESD規范:
    正負15kV人體放電模式(Human Body Model)

    SP490E是一個低功耗差分收發器,滿足RS-485和RS-422標準規范,數據傳輸速率高達10Mbps。除了增加了發送器和接收器三態使能線外,SP491E和SP490E完全相同。在共模模式的限制范圍內,兩者的接收器輸入的靈敏度為士200mV.
    SP490E包含8腳塑料 DIP和8腳 NSOIC兩種封裝形式,可工作在商業級和工業級溫度范圍內。SP491E包含14腳DIP和14腳 NSOIC兩種封裝,也可工作在商業級和工業級溫度范圍內。


    上訴列舉了幾款常用芯片,引腳都是兼容的,只是性能上有所差異

    注意要點

    (1)共模干擾問題:RS-485接口采用差分方式傳輸信號方式,并不需要相對于某個參照點來檢測信號,系統只需檢測兩線之間的電位差就可以。

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

    通俗來說,就是如果在傳輸過程中遇到干擾,那A、B兩根線的電壓都會發生變化,可能本來A是5V,B是2V,被干擾成了A是8V,B是5V,但由于485通信檢測的是兩根線之間的電壓差,所以AB間的電壓差并沒有發生改變,仍然是3V,所以接收器檢測到的仍然是正確的信號

    相反,像串口和RS232這些單端的通信方式,因為只有一根信號線和一根地線,并會規定某個電平狀態表示一種邏輯,如5V表示1,0V表示0,當在傳輸過程中發生干擾時,5V可能變成了2V,這時候就沒法判斷到底是1還是0了,導致傳輸的數據不正確

    此外人們往往忽視了收發器有一定的共模電壓范圍,RS-485收發器共模電壓范圍為==-7~+12V==,只有滿足上述條件,整個網絡才能正常工作。當網絡線路中共模電壓超出此范圍時就會影響通信的穩定可靠,甚至損壞接口。

    (2)EMI問題:發送驅動器輸出信號中的共模部分需要一個返回通路,如沒有一個低阻的返回通道(信號地),就會以輻射的形式返回源端。整個總線就會像一個巨大的天線向外輻射電磁波。又因為共模電壓范圍是-7V ~ +12V,所以通信的兩邊也需要一根地線來做標準,不能讓共模電壓超出范圍,防止損壞端口

    由于上述原因,RS-485網絡盡管采用差分平衡傳輸方式,但對整個RS-485網絡,必須有一條低阻的信號地。一條低阻的信號地將兩個接口的工作地連接起來,使共模干擾電壓被短路。這條信號地可以是額外的一條線(非屏蔽雙絞線),或者是屏蔽雙絞線的屏蔽層。這是最通常的接地方法。

    (3)終端匹配電阻

    為了匹配網絡的通訊阻抗,減少由于不匹配而引起的反射、吸收噪聲,有效抑制噪聲干擾,提高RS-485通訊的可靠性,需要在RS-485網絡的2個端點各安裝1個終端匹配電阻。終端匹配電阻的大小由傳輸電纜的特性阻抗所決定。例如,RS-485網絡通常采用雙絞線或屏蔽雙絞線作為傳輸介質,其特性阻抗為120歐,因此,RS-485總線上的兩個端點也應各安裝1個120歐的終端匹配電阻
    匹配電阻要消耗較大電流,不適用于功耗限制嚴格的系統。在特殊的場合,可以考慮比較省電的并聯“RC”匹配方案,可以節省大部分功率,但電容C的取值是個難點,需要在功耗和匹配質量間進行折衷。

    總結

    以上是生活随笔為你收集整理的RS-485接口协议详解的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。