優(yōu)質文檔串行通信接口標準詳解_第1頁
優(yōu)質文檔串行通信接口標準詳解_第2頁
優(yōu)質文檔串行通信接口標準詳解_第3頁
優(yōu)質文檔串行通信接口標準詳解_第4頁
優(yōu)質文檔串行通信接口標準詳解_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

幾種串行通信接口標準詳解在數據通信、計算機網絡以及分布式工業(yè)控制系統中,經常采用串行通信來交換數據和信息。1969年,美國電子工業(yè)協會(EIA)公布了RS-232C作為串行通信接口的電氣標準,該標準定義了數據終端設備(DTE)和數據通信設備(DCE)間按位串行傳輸的接口信息,合理安排了接口的電氣信號和機械要求,在世界范圍內得到了廣泛的應用。但它采用單端驅動非差分接收電路,因而存在著傳輸距離不太遠(最大傳輸距離15m)和傳送速率不太高(最大位速率為20Kb/s)的問題。遠距離串行通信必須使用Modem,增加了成本。在分布式控制系統和工業(yè)局部網絡中,傳輸距離常介于近距離(<20m=和遠距離(>2km)之間的情況,這時RS-232C(25腳連接器)不能采用,用Modem又不經濟,因而需要制定新的串行通信接口標準。1977年EIA制定了RS-449。它除了保留與RS-232C兼容的特點外,還在提高傳輸速率,增加傳輸距離及改進電氣特性等方面作了很大努力,并增加了10個控制信號。與RS-449同時推出的還有RS-422和RS-423,它們是RS-449的標準子集。另外,還有RS-485,它是RS-422的變形。RS-422、RS-423是全雙工的,而RS-485是半雙工的。RS-422標準規(guī)定采用平衡驅動差分接收電路,提高了數據傳輸速率(最大位速率為10Mb/s),增加了傳輸距離(最大傳輸距離1200m)。RS-423標準規(guī)定采用單端驅動差分接收電路,其電氣性能與RS-232C幾乎相同,并設計成可連接RS-232C和RS-422。它一端可與RS-422連接,另一端則可與RS-232C連接,提供了一種從舊技術到新技術過渡的手段。同時又提高位速率(最大為300Kb/s)和傳輸距離(最大為600m)。因RS-485為半雙工的,當用于多站互連時可節(jié)省信號線,便于高速、遠距離傳送。許多智能儀器設備均配有RS-485總線接口,將它們聯網也十分方便。串行通信由于接線少、成本低,在數據采集和控制系統中得到了廣泛的應用,產品也多種多樣一.RS-232-C詳解串行通信接口標準經過使用和發(fā)展,目前已經有幾種。但都是在RS-232標準的基礎上經過改進而形成的。所以,以RS-232C為主來討論。RS-323C標準是美國EIA(電子工業(yè)聯合會)與BELL等公司一起開發(fā)的1969年公布的通信協議。它適合于數據傳輸速率在0~20000b/s范圍內的通信。這個標準對串行通信接口的有關問題,如信號線功能、電器特性都作了明確規(guī)定。由于通行設備廠商都生產與RS-232C制式兼容的通信設備,因此,它作為一種標準,目前已在微機通信接口中廣泛采用。在討論RS-232C接口標準的內容之前,先說明兩點:首先,RS-232-C標準最初是遠程通信連接數據終端設備DTE(DataTerminalEquipment)與數據通信設備DCE(DataCommunicationEquipment)而制定的。因此這個標準的制定,并未考慮計算機系統的應用要求。但目前它又廣泛地被借來用于計算機(更準確的說,是計算機接口)與終端或外設之間的近端連接標準。顯然,這個標準的有些規(guī)定及和計算機系統是不一致的,甚至是相矛盾的。有了對這種背景的了解,我們對RS-232C標準與計算機不兼容的地方就不難理解了。其次,RS-232C標準中所提到的“發(fā)送”和“接收”,都是站在DTE立場上,而不是站在DCE的立場來定義的。由于在計算機系統中,往往是CPU和I/O設備之間傳送信息,兩者都是DTE,因此雙方都能發(fā)送和接收。1.RS-232-CRS-232C標準(協議)的全稱是EIA-RS-232C標準,其中EIA(ElectronicIndustryAssociation)代表美國電子工業(yè)協會,RS(ecommededstandard)代表推薦標準,232是標識號,C代表RS232的最新一次修改(1969),在這之前,有RS232B、RS232A。。它規(guī)定連接電纜和機械、電氣特性、信號功能及傳送過程。常用物理標準還有有EIA�RS-232-C、EIA�RS-422-A、EIA�RS-423A、EIA�RS-485。這里只介紹EIA�RS-232-C(簡稱232,RS232)。例如,目前在IBMPC機上的COM1、COM2接口,就是RS-232C接口。1)電氣特性EIA-RS-232C對電器特性、邏輯電平和各種信號線功能都作了規(guī)定。在TxD和RxD上:邏輯1(MARK)=-3V~-15V邏輯0(SPACE)=+3~+15V在RTS、CTS、DSR、DTR和DCD等控制線上:信號有效(接通,ON狀態(tài),正電壓)=+3V~+15V信號無效(斷開,OFF狀態(tài),負電壓)=-3V~-15V以上規(guī)定說明了RS-323C標準對邏輯電平的定義。對于數據(信息碼):邏輯“1”(傳號)的電平低于-3V,邏輯“0”(空號)的電平告語+3V;對于控制信號;接通狀態(tài)(ON)即信號有效的電平高于+3V,斷開狀態(tài)(OFF)即信號無效的電平低于-3V,也就是當傳輸電平的絕對值大于3V時,電路可以有效地檢查出來,介于-3~+3V之間的電壓無意義,低于-15V或高于+15V的電壓也認為無意義,因此,實際工作時,應保證電平在±(3~15)V之間。圖1EIA-RS-232C與TTL轉換:EIA-RS-232C是用正負電壓來表示邏輯狀態(tài),與TTL以高低電平表示邏輯狀態(tài)的規(guī)定不同。因此,為了能夠同計算機接口或終端的TTL器件連接,必須在EIA-RS-232C與TTL電路之間進行電平和邏輯關系的變換。實現這種變換的方法可用分立元件,也可用集成電路芯片。目前較為廣泛地使用集成電路轉換器件,如MC1488、SN75150芯片可完成TTL電平到EIA電平的轉換,而MC1489、SN75154可實現EIA電平到TTL電平的轉換。MAX232芯片可完成TTL←→EIA雙向電平轉換,圖1顯示了1488和1489的內部結構和引腳。MC1488的引腳(2)、(4,5)、(9,10)和(12,13)接TTL輸入。引腳3、6、8、11輸出端接EIA-RS-232C。MC1498的14的1、4、10、13腳接EIA輸入,而3、6、8、11腳接TTL輸出。具體連接方法如圖2所示。圖中的左邊是微機串行接口電路中的主芯片UART,它是TTL器件,右邊是EIA-RS-232C連接器,要求EIA高電壓。因此,RS-232C所有的輸出、輸入信號都要分別經過MC1488和MC1498轉換器,進行電平轉換后才能送到連接器上去或從連接器上送進來。2)連接器的機械特性:連接器:由于RS-232C并未定義連接器的物理特性,因此,出現了DB-25、DB-15和DB-9各種類型的連接器,其引腳的定義也各不相同。下面分別介紹兩種連接器。a.DB-25:PC和XT機采用DB-25型連接器。DB-25連接器定義了25根信號線,分為4組:異步通信的9個電壓信號(含信號地SG)2,3,4,5,6,7,8,20,2220mA電流環(huán)信號9個(12,13,14,15,16,17,19,23,24)空6個(9,10,11,18,21,25)保護地(PE)1個,作為設備接地端(1腳)DB-25型連接器的外形及信號線分配如圖3所示。注意,20mA電流環(huán)信號僅IBMPC和IBMPC/XT機提供,至AT機及以后,已不支持。圖2圖3電纜長度:在通信速率低于20kb/s時,RS-232C所直接連接的最大物理距離為15m(50英尺)。最大直接傳輸距離說明:RS-232C標準規(guī)定,若不使用MODEM,在碼元畸變小于4%的情況下,DTE和DCE之間最大傳輸距離為15m(50英尺)??梢娺@個最大的距離是在碼元畸變小于4%的前提下給出的。為了保證碼元畸變小于4%的要求,接口標準在電氣特性中規(guī)定,驅動器的負載電容應小于2500pF。3)RS-232C的接口信號RS-232C規(guī)標準接口有25條線,4條數據線、11條控制線、3條定時線、7條備用和未定義線,常用的只有9根,它們是:a.聯絡控制信號線:數據裝置準備好(Datasetready-DSR)——有效時(ON)狀態(tài),表明MODEM處于可以使用的狀態(tài)。數據終端準備好(Datasetready-DTR)——有效時(ON)狀態(tài),表明數據終端可以使用。這兩個信號有時連到電源上,一上電就立即有效。這兩個設備狀態(tài)信號有效,只表示設備本身可用,并不說明通信鏈路可以開始進行通信了,能否開始進行通信要由下面的控制信號決定。請求發(fā)送(Requesttosend-RTS)——用來表示DTE請求DCE發(fā)送數據,即當終端要發(fā)送數據時,使該信號有效(ON狀態(tài)),向MODEM請求發(fā)送。它用來控制MODEM是否要進入發(fā)送狀態(tài)。允許發(fā)送(Cleartosend-CTS)——用來表示DCE準備好接收DTE發(fā)來的數據,是對請求發(fā)送信號RTS的響應信號。當MODEM已準備好接收終端傳來的數據,并向前發(fā)送時,使該信號有效,通知終端開始沿發(fā)送數據線TxD發(fā)送數據。這對RTS/CTS請求應答聯絡信號是用于半雙工MODEM系統中發(fā)送方式和接收方式之間的切換。在全雙工系統中作發(fā)送方式和接收方式之間的切換。在全雙工系統中,因配置雙向通道,故不需要RTS/CTS聯絡信號,使其變高。接收線信號檢出(ReceivedLinedetection-RLSD)——用來表示DCE已接通通信鏈路,告知DTE準備接收數據。當本地的MODEM收到由通信鏈路另一端(遠地)的MODEM送來的載波信號時,使RLSD信號有效,通知終端準備接收,并且由MODEM將接收下來的載波信號解調成數字兩數據后,沿接收數據線RxD送到終端。此線也叫做數據載波檢出(DataCarrierdectection-DCD)線。振鈴指示(Ringing-RI)——當MODEM收到交換臺送來的振鈴呼叫信號時,使該信號有效(ON狀態(tài)),通知終端,已被呼叫。b.數據發(fā)送與接收線:發(fā)送數據(Transmitteddata-TxD)——通過TxD終端將串行數據發(fā)送到MODEM,(DTE→DCE)。接收數據(Receiveddata-RxD)——通過RxD線終端接收從MODEM發(fā)來的串行數據,(DCE→DTE)。c.地線有兩根線SG、PG——信號地和保護地信號線,無方向。上述控制信號線何時有效,何時無效的順序表示了接口信號的傳送過程。例如,只有當DSR和DTR都處于有效(ON)狀態(tài)時,才能在DTE和DCE之間進行傳送操作。若DTE要發(fā)送數據,則預先將DTR線置成有效(ON)狀態(tài),等CTS線上收到有效(ON)狀態(tài)的回答后,才能在TxD線上發(fā)送串行數據。這種順序的規(guī)定對半雙工的通信線路特別有用,因為半雙工的通信才能確定DCE已由接收方向改為發(fā)送方向,這時線路才能開始發(fā)送。2個數據信號:發(fā)送TXD;接收RXD。1個信號地線:SG。6個控制信號:I)DSR��:數傳機(即modem)準備好,DataSetReady.II)DTR��:數據終端(DTE,即微機接口電路,如Intel8250/8251,16550)準備好,DataTerminalReady。III)RTS��:DTE請求DCE發(fā)送(RequestToSend)。IV)CTS��:DCE允許DTE發(fā)送(ClearToSend),該信號是對RTS信號的回答。V)DCD��:數據載波檢出,DataCarrierDetection當本地DCE設備(Modem)收到對方的DCE設備送來的載波信號時,使DCD有效,通知DTE準備接收,并且由DCE將接收到的載波信號解調為數字信號,經RXD線送給DTE。VI)RI��:振鈴信號Ringing當DCE收到交換機送來的振鈴呼叫信號時,使該信號有效,通知DTE已被呼叫。2.遠距離通信第1和第2中情況是屬于遠距離通信(傳輸距離大于15m的通信)的例子,故一般要加調制解調器MODEM,因此使用的信號線較多。注意:在以下各圖中,DTE信號為RS-232-C信號,DTE與計算機間的電平轉換電路未畫出。采用Modem(DCE)和電話網通信時的信號連接:若在雙方MODEM之間采用普通電話交換線進行通信,除了需要2~8號信號線外還要增加RI(22號)和DTR(20號)兩個信號線進行聯絡,如圖4所示。圖4DSR、DTR:數傳機(DCE)準備好、數據終端(DTE)準備好,只表示設備本身可用。首先,通過電話機拔號呼叫對方,電話交換臺向對方發(fā)出拔號呼叫信號,當對方DCE收到該信號后,使RI(振鈴信號)有效,通知DTE,已被呼叫。當對方“摘機”后,兩方建立了通信鏈路。若計算機要發(fā)送數據至對方,首先通過接口電路(DTE)發(fā)出RTS(請求發(fā)送)信號。此時,若DCE(Modem)允許傳送,則向DTE回答CTS(允許發(fā)送)信號。一般可直接將RTS/CTS接高電平,即只要通信鏈路已建立,就可傳送信號。(RTS/CTS可只用于半雙工系統中作發(fā)送方式和接收方式的切換。當DTE獲得CTS信號后,通過TXD線向DCE發(fā)出串行信號,DCE(Modem)將這些數字信號調制成模擬信號(又稱載波信號),傳向對方。計算機向DTE“數據輸出寄存器”傳送新的數據前,應檢查Modem狀態(tài)和數據輸出寄存器為空。當對方的DCE收到載波信號后,向對方的DTE發(fā)出DCD信號(數據載波檢出),通知其DTE準備接收,同時,將載波信號解調為數據信號,從RXD線上送給DTE,DTE通過串行接收移位寄存器對接收到的位流進行移位,當收到1個字符的全部位流后,把該字符的數據位送到數據輸入寄存器,CPU可以從數據輸入寄存器讀取字符。3.近距離通信當通信距離較近時,可不需要Modem,通信雙方可以直接連接,這種情況下,只需使用少數幾根信號線。最簡單的情況,在通信中根本不需要RS-232C的控制聯絡信號,只需三根線(發(fā)送線、接收線、信號地線)便可實現全雙工異步串行通信,即是這里要討論的第一種情況。無Modem時,最大通信距離按如下方式計算:RS-232C標準規(guī)定:當誤碼率小于4%時,要求導線的電容值應小于2500PF。對于普通導線,其電容值約為170PF/M。則允許距離L=2500PF/(170PF/M)=15M這一距離的計算,是偏于保守的,實際應用中,當使用9600bps,普通雙絞屏蔽線時,距離可達30~35米。4.串口通信應用說明1)串口通信基本接線方法目前較為常用的串口有9針串口(DB9)和25針串口(DB25),通信距離較近時(<12m),可以用電纜線直接連接標準RS232端口(RS422,RS485較遠),若距離較遠,需附加調制解調器(MODEM)。最為簡單且常用的是三線制接法,即地、接收數據和發(fā)送數據三腳相連,本文只涉及到最為基本的接法,且直接用RS232相連。a.DB9和DB25的常用信號腳說明9針串口(DB9)25針串口(DB25)針號功能說明縮寫針號功能說明縮寫1數據載波檢測DCD8數據載波檢測DCD2接收數據RXD3接收數據RXD3發(fā)送數據TXD2發(fā)送數據TXD4數據終端準備DTR20數據終端準備DTR5信號地GND7信號地GND6數據設備準備好DSR6數據準備好DSR7請求發(fā)送RTS4請求發(fā)送RTS8清除發(fā)送CTS5清除發(fā)送CTS9振鈴指示DELL22振鈴指示DELLb.RS232C串口通信接線方法(三線制)首先,串口傳輸數據只要有接收數據針腳和發(fā)送針腳就能實現:同一個串口的接收腳和發(fā)送腳直接用線相連,兩個串口相連或一個串口和多個串口相連。同一個串口的接收腳和發(fā)送腳直接用線相連對9針串口和25針串口,均是2與3直接相連;兩個不同串口(不論是同一臺計算機的兩個串口或分別是不同計算機的串口)9針-9針25針-25針9針-25針233222322333557757上面表格是對微機標準串行口而言的,還有許多非標準設備,如接收GPS數據或電子羅盤數據,只要記住一個原則:接收數據針腳(或線)與發(fā)送數據針腳(或線)相連,彼此交叉,信號地對應相接,就能百戰(zhàn)百勝。2)串口調試中要注意的幾點:串口調試時,準備一個好用的調試工具,如串口調試助手、串口精靈等,有事半功倍之效果;強烈建議不要帶電插撥串口,插撥時至少有一端是斷電的,否則串口易損壞。3)單工、半雙工和全雙工的定義如果在通信過程的任意時刻,信息只能由一方A傳到另一方B,則稱為單工。如果在任意時刻,信息既可由A傳到B,又能由B傳A,但只能由一個方向上的傳輸存在,稱為半雙工傳輸。如果在任意時刻,線路上存在A到B和B到A的雙向信號傳輸,則稱為全雙工。電話線就是二線全雙工信道。由于采用了回波抵消技術,雙向的傳輸信號不致混淆不清。雙工信道有時也將收、發(fā)信道分開,采用分離的線路或頻帶傳輸相反方向的信號,如回線傳輸。--------><-------->-------->A---------BA----------BA---------B<--------單工半雙工全雙工4)奇偶校驗串行數據在傳輸過程中,由于干擾可能引起信息的出錯,例如,傳輸字符‘E’,其各位為:0100,0101=45HD7D0由于干擾,可能使位變?yōu)?,這種情況,我們稱為出現了“誤碼”。我們把如何發(fā)現傳輸中的錯誤,叫“檢錯”。發(fā)現錯誤后,如何消除錯誤,叫“糾錯”。最簡單的檢錯方法是“奇偶校驗”,即在傳送字符的各位之外,再傳送1位奇/偶校驗位??刹捎闷嫘r灮蚺夹r?。奇校驗:所有傳送的數位(含字符的各數位和校驗位)中,“1”的個數為奇數,如:10110,010100110,0001偶校驗:所有傳送的數位(含字符的各數位和校驗位)中,“1”的個數為偶數,如:10100,010100100,0001奇偶校驗能夠檢測出信息傳輸過程中的部分誤碼(1位誤碼能檢出,2位及2位以上誤碼不能檢出),同時,它不能糾錯。在發(fā)現錯誤后,只能要求重發(fā)。但由于其實現簡單,仍得到了廣泛使用。有些檢錯方法,具有自動糾錯能力。如循環(huán)冗余碼(CRC)檢錯等。5)串口通訊流控制我們在串行通訊處理中,常??吹絉TS/CTS和XON/XOFF這兩個選項,這就是兩個流控制的選項,目前流控制主要應用于調制解調器的數據通訊中,但對普通RS232編程,了解一點這方面的知識是有好處的。那么,流控制在串行通訊中有何作用,在編制串行通訊程序怎樣應用呢?這里我們就來談談這個問題。a.流控制在串行通訊中的作用這里講到的“流”,當然指的是數據流。數據在兩個串口之間傳輸時,常常會出現丟失數據的現象,或者兩臺計算機的處理速度不同,如臺式機與單片機之間的通訊,接收端數據緩沖區(qū)已滿,則此時繼續(xù)發(fā)送來的數據就會丟失?,F在我們在網絡上通過MODEM進行數據傳輸,這個問題就尤為突出。流控制能解決這個問題,當接收端數據處理不過來時,就發(fā)出“不再接收”的信號,發(fā)送端就停止發(fā)送,直到收到“可以繼續(xù)發(fā)送”的信號再發(fā)送數據。因此流控制可以控制數據傳輸的進程,防止數據的丟失。PC機中常用的兩種流控制是硬件流控制(包括RTS/CTS、DTR/CTS等)和軟件流控制XON/XOFF(繼續(xù)/停止),下面分別說明。b.硬件流控制硬件流控制常用的有RTS/CTS流控制和DTR/DSR(數據終端就緒/數據設置就緒)流控制。硬件流控制必須將相應的電纜線連上,用RTS/CTS(請求發(fā)送/清除發(fā)送)流控制時,應將通訊兩端的RTS、CTS線對應相連,數據終端設備(如計算機)使用RTS來起始調制解調器或其它數據通訊設備的數據流,而數據通訊設備(如調制解調器)則用CTS來起動和暫停來自計算機的數據流。這種硬件握手方式的過程為:我們在編程時根據接收端緩沖區(qū)大小設置一個高位標志(可為緩沖區(qū)大小的75%)和一個低位標志(可為緩沖區(qū)大小的25%),當緩沖區(qū)內數據量達到高位時,我們在接收端將CTS線置低電平(送邏輯0),當發(fā)送端的程序檢測到CTS為低后,就停止發(fā)送數據,直到接收端緩沖區(qū)的數據量低于低位而將CTS置高電平。RTS則用來標明接收設備有沒有準備好接收數據。常用的流控制還有還有DTR/DSR(數據終端就緒/數據設置就緒)。我們在此不再詳述。由于流控制的多樣性,我個人認為,當軟件里用了流控制時,應做詳細的說明,如何接線,如何應用。c.軟件流控制由于電纜線的限制,我們在普通的控制通訊中一般不用硬件流控制,而用軟件流控制。一般通過XON/XOFF來實現軟件流控制。常用方法是:當接收端的輸入緩沖區(qū)內數據量超過設定的高位時,就向數據發(fā)送端發(fā)出XOFF字符(十進制的19或Control-S,設備編程說明書應該有詳細闡述),發(fā)送端收到XOFF字符后就立即停止發(fā)送數據;當接收端的輸入緩沖區(qū)內數據量低于設定的低位時,就向數據發(fā)送端發(fā)出XON字符(十進制的17或Control-Q),發(fā)送端收到XON字符后就立即開始發(fā)送數據。一般可以從設備配套源程序中找到發(fā)送的是什么字符。應該注意,若傳輸的是二進制數據,標志字符也有可能在數據流中出現而引起誤操作,這是軟件流控制的缺陷,而硬件流控制不會有這個問題。二.RS-232、RS-422與RS-485的由來RS-232、RS-422與RS-485都是串行數據接口標準,最初都是由電子工業(yè)協會(EIA)制訂并發(fā)布的,RS-232在1962年發(fā)布,命名為EIA-232-E,作為工業(yè)標準,以保證不同廠家產品之間的兼容。RS-422由RS-232發(fā)展而來,它是為彌補RS-232之不足而提出的。為改進RS-232通信距離短、速率低的缺點,RS-422定義了一種平衡通信接口,將傳輸速率提高到10Mb/s,傳輸距離延長到4000英尺(速率低于100kb/s時),并允許在一條平衡總線上連接最多10個接收器。RS-422是一種單機發(fā)送、多機接收的單向、平衡傳輸規(guī)范,被命名為TIA/EIA-422-A標準。為擴展應用范圍,EIA又于1983年在RS-422基礎上制定了RS-485標準,增加了多點、雙向通信能力,即允許多個發(fā)送器連接到同一條總線上,同時增加了發(fā)送器的驅動能力和沖突保護特性,擴展了總線共模范圍,后命名為TIA/EIA-485-A標準。由于EIA提出的建議標準都是以“RS”作為前綴,所以在通訊工業(yè)領域,仍然習慣將上述標準以RS作前綴稱謂。RS-232、RS-422與RS-485標準只對接口的電氣特性做出規(guī)定,而不涉及接插件、電纜或協議,在此基礎上用戶可以建立自己的高層通信協議。因此在視頻界的應用,許多廠家都建立了一套高層通信協議,或公開或廠家獨家使用。如錄像機廠家中的Sony與松下對錄像機的RS-422控制協議是有差異的,視頻服務器上的控制協議則更多了,如Louth、Odetis協議是公開的,而ProLINK則是基于Profile上的。1.RS-232串行接口標準目前RS-232是PC機與通信工業(yè)中應用最廣泛的一種串行接口。RS-232被定義為一種在低速率串行通訊中增加通訊距離的單端標準。RS-232采取不平衡傳輸方式,即所謂單端通訊。收、發(fā)端的數據信號是相對于信號地,如從DTE設備發(fā)出的數據在使用DB25連接器時是2腳相對7腳(信號地)的電平,DB25各引腳定義參見圖5。典型的RS-232信號在正負電平之間擺動,在發(fā)送數據時,發(fā)送端驅動器輸出正電平在+5~+15V,負電平在-5~-15V電平。當無數據傳輸時,線上為TTL,從開始傳送數據到結束,線上電平從TTL電平到RS-232電平再返回TTL電平。接收器典型的工作電平在+3~+12V與-3~-12V。由于發(fā)送電平與接收電平的差僅為2V至3V左右,所以其共模抑制能力差,再加上雙絞線上的分布電容,其傳送距離最大為約15米,最高速率為20kb/s。RS-232是為點對點(即只用一對收、發(fā)設備)通訊而設計的,其驅動器負載為3~7k?。所以RS-232適合本地設備之間的通信。其有關電氣參數參見表1。圖5規(guī)定RS232RS422R485工作方式單端差分差分節(jié)點數1收、1發(fā)1發(fā)10收1發(fā)32收最大傳輸電纜長度50英尺400英尺400英尺最大傳輸速率20Kb/S10Mb/s10Mb/s最大驅動輸出電壓+/-25V-0.25V~+6V-7V~+12V驅動器輸出信號電平(負載最小值)負載+/-5V~+/-15V+/-2.0V+/-1.5V驅動器輸出信號電平(空載最大值)空載+/-25V+/-6V+/-6V驅動器負載阻抗(?)3K~7K10054擺率(最大值)30V/μsN/AN/A接收器輸入電壓范圍+/-15V-10V~+10V-7V~+12V接收器輸入門限+/-3V+/-200mV+/-200mV接收器輸入電阻(?)3K~7K4K(最小)≥12K驅動器共模電壓-3V~+3V-1V~+3V接收器共模電壓-7V~+7V-7V~+12V表12.RS-422與RS-485串行接口標準1)平衡傳輸RS-422、RS-485與RS-232不一樣,數據信號采用差分傳輸方式,也稱作平衡傳輸,它使用一對雙絞線,將其中一線定義為A,另一線定義為B,如圖6。通常情況下,發(fā)送驅動器A、B之間的正電平在+2~+6V,是一個邏輯狀態(tài),負電平在-2~6V,是另一個邏輯狀態(tài)。另有一個信號地C,在RS-485中還有一“使能”端,而在RS-422中這是可用可不用的?!笆鼓堋倍耸怯糜诳刂瓢l(fā)送驅動器與傳輸線的切斷與連接。當“使能”端起作用時,發(fā)送驅動器處于高阻狀態(tài),稱作“第三態(tài)”,即它是有別于邏輯“1”與“0”的第三態(tài)。接收器也作與發(fā)送端相對的規(guī)定,收、發(fā)端通過平衡雙絞線將AA與BB對應相連,當在收端AB之間有大于+200mV的電平時,輸出正邏輯電平,小于-200mV時,輸出負邏輯電平。接收器接收平衡線上的電平范圍通常在200mV至6V之間。參見圖7。圖72)RS-422電氣規(guī)定RS-422標準全稱是“平衡電壓數字接口電路的電氣特性”,它定義了接口電路的特性。圖9是典型的RS-422四線接口。實際上還有一根信號地線,共5根線。圖8是其DB9連接器引腳定義。由于接收器采用高輸入阻抗和發(fā)送驅動器比RS232更強的驅動能力,故允許在相同傳輸線上連接多個接收節(jié)點,最多可接10個節(jié)點。即一個主設備(Master),其余為從設備(Salve),從設備之間不能通信,所以RS-422支持點對多的雙向通信。接收器輸入阻抗為4k,故發(fā)端最大負載能力是10×4k+100?(終接電阻)。RS-422四線接口由于采用單獨的發(fā)送和接收通道,因此不必控制數據方向,各裝置之間任何必須的信號交換均可以按軟件方式(XON/XOFF握手)或硬件方式(一對單獨的雙絞線)實現。圖8圖9RS-422的最大傳輸距離為4000英尺(約1219米),最大傳輸速率為10Mb/s。其平衡雙絞線的長度與傳輸速率成反比,在100kb/s速率以下,才可能達到最大傳輸距離。只有在很短的距離下才能獲得最高速率傳輸。一般100米長的雙絞線上所能獲得的最大傳輸速率僅為1Mb/s。RS-422需要一終接電阻,要求其阻值約等于傳輸電纜的特性阻抗。在矩距離傳輸時可不需終接電阻,即一般在300米以下不需終接電阻。終接電阻接在傳輸電纜的最遠端。RS-422有關電氣參數見表1。3)RS-485電氣規(guī)定由于RS-485是從RS-422基礎上發(fā)展而來的,所以RS-485許多電氣規(guī)定與RS-422相仿。如都采用平衡傳輸方式、都需要在傳輸線上接終接電阻等。RS-485可以采用二線與四線方式,二線制可實現真正的多點雙向通信,參見圖10。而采用四線連接時,與RS-422一樣只能實現點對多的通信,即只能有一個主(Master)設備,其余為從設備,但它比RS-422有改進,無論四線還是二線連接方式總線上可多接到32個設備。參見圖11。圖10圖11RS-485與RS-422的不同還在于其共模輸出電壓是不同的,RS-485是-7V至+12V之間,而RS-422在-7V至+7V之間,RS-485接收器最小輸入阻抗為12k,RS-422是4k;RS-485滿足所有RS-422的規(guī)范,所以RS-485的驅動器可以用在RS-422網絡中應用。RS-485有關電氣規(guī)定參見表1。RS-485與RS-422一樣,其最大傳輸距離約為1219米,最大傳輸速率為10Mb/s。平衡雙絞線的長度與傳輸速率成反比,在100kb/s速率以下,才可能使用規(guī)定最長的電纜長度。只有在很短的距離下才能獲得最高速率傳輸。一般100米長雙絞線最大傳輸速率僅為1Mb/s。RS-485需要2個終接電阻,其阻值要求等于傳輸電纜的特性阻抗。在矩距離傳輸時可不需終接電阻,即一般在300米以下不需終接電阻。終接電阻接在傳輸總線的兩端。3.RS-422與RS-485的網絡安裝注意要點RS-422可支持10個節(jié)點,RS-485支持32個節(jié)點,因此多節(jié)點構成網絡。網絡拓撲一般采用終端匹配的總線型結構,不支持環(huán)形或星形網絡。在構建網絡時,應注意如下幾點:1)采用一條雙絞線電纜作總線,將各個節(jié)點串接起來,從總線到每個節(jié)點的引出線長度應盡量短,以便使引出線中的反射信號對總線信號的影響最低。圖12所示為實際應用中常見的一些錯誤連接方式(a,b,c)和正確的連接方式(d,e,f)。a,b,c這三種網絡連接盡管不正確,在短距離、低速率仍可能正常工作,但隨著通信距離的延長或通信速率的提高,其不良影響會越來越嚴重,主要原因是信號在各支路末端反射后與原信號疊加,會造成信號質量下降。2)應注意總線特性阻抗的連續(xù)性,在阻抗不連續(xù)點就會發(fā)生信號的反射。下列幾種情況易產生這種不連續(xù)性:總線的不同區(qū)段采用了不同電纜某一段總線上有過多收發(fā)器緊靠在一起安裝過長的分支線引出到總線??傊?,應該提供一條單一、連續(xù)的信號通道作為總線。圖123)RS-422與RS-485傳輸線上匹配的一些說明對RS-422與RS-485總線網絡一般要使用終接電阻進行匹配。但在短距離與低速率下可以不用考慮終端匹配。那么在什么情況下不用考慮匹配呢?理論上,在每個接收數據信號的中點進行采樣時,只要反射信號在開始采樣時衰減到足夠低就可以不考慮匹配。但這在實際上難以掌握,美國MAXIM公司有篇文章提到一條經驗性的原則可以用來判斷在什么樣的數據速率和電纜長度時需要進行匹配:當信號的轉換時間(上升或下降時間)超過電信號沿總線單向傳輸所需時間的3倍以上時就可以不加匹配。例如具有限斜率特性的RS-485接口MAX483輸出信號的上升或下降時間最小為250ns,典型雙絞線上的信號傳輸速率約為0.2m/ns(24AWGPVC電纜),那么只要數據速率在250kb/s以內、電纜長度不超過16米,采用MAX483作為RS-485接口時就可以不加終端匹配。一般終端匹配采用終接電阻方法,前文已有提及,RS-422在總線電纜的遠端并接電阻,RS-485則應在總線電纜的開始和末端都需并接終接電阻。終接電阻一般在RS-422網絡中取100?,在RS-485網絡中取120?。相當于電纜特性阻抗的電阻,因為大多數雙絞線電纜特性阻抗大約在100~120?。這種匹配方法簡單有效,但有一個缺點,匹配電阻要消耗較大功率,對于功耗限制比較嚴格的系統不太適合。另外一種比較省電的匹配方式是RC匹配,如圖13。利用一只電容C隔斷直流成分可以節(jié)省大部分功率。但電容C的取值是個難點,需要在功耗和匹配質量間進行折衷。還有一種采用二極管的匹配方法,如圖14。這種方案雖未實現真正的“匹配”,但它利用二極管的鉗位作用能迅速削弱反射信號,達到改善信號質量的目的。節(jié)能效果顯著。圖13圖144)RS-422與RS-485的接地問題電子系統接地是很重要的,但常常被忽視。接地處理不當往往會導致電子系統不能穩(wěn)定工作甚至危及系統安全。RS-422與RS-485傳輸網絡的接地同樣也是很重要的,因為接地系統不合理會影響整個網絡的穩(wěn)定性,尤其是在工作環(huán)境比較惡劣和傳輸距離較遠的情況下,對于接地的要求更為嚴格。否則接口損壞率較高。很多情況下,連接RS-422、RS-485通信鏈路時只是簡單地用一對雙絞線將各個接口的“A”、“B”端連接起來。而忽略了信號地的連接,這種連接方法在許多場合是能正常工作的,但卻埋下了很大的隱患,這有下面二個原因:a.共模干擾問題:正如前文已述,RS-422與RS-485接口均采用差分方式傳輸信號方式,并不需要相對于某個參照點來檢測信號,系統只需檢測兩線之間的電位差就可以了。但人們往往忽視了收發(fā)器有一定的共模電壓范圍,如RS-422共模電壓范圍為-7~+7V,而RS-485收發(fā)器共模電壓范圍為-7~+12V,只有滿足上述條件,整個網絡才能正常工作。當網絡線路中共模電壓超出此范圍時就會影響通信的穩(wěn)定可靠,甚至損壞接口。以圖15為例,當發(fā)送驅動器A向接收器B發(fā)送數據時,發(fā)送驅動器A的輸出共模電壓為VOS,由于兩個系統具有各自獨立的接地系統,存在著地電位差VGPD。那么,接收器輸入端的共模電壓VCM就會達到VCM=VOS+VGPD。RS-422與RS-485標準均規(guī)定VOS≤3V,但VGPD可能會有很大幅度(十幾伏甚至數十伏),并可能伴有強干擾信號,致使接收器共模輸入VCM超出正常范圍,并在傳輸線路上產生干擾電流,輕則影響正常通信,重則損壞通信接口電路。圖15b.EMI)問題:發(fā)送驅動器輸出信號中的共模部分需要一個返回通路,如沒有一個低阻的返回通道(信號地),就會以輻射的形式返回源端,整個總線就會像一個巨大的天線向外輻射電磁波。由于上述原因,RS-422、RS-485盡管采用差分平衡傳輸方式,但對整個RS-422或RS-485網絡,必須有一條低阻的信號地。一條低阻的信號地將兩個接口的工作地連接起來,使共模干擾電壓VGPD被短路。這條信號地可以是額外的一條線(非屏蔽雙絞線),或者是屏蔽雙絞線的屏蔽層。這是最通常的接地方法。值得注意的是,這種做法僅對高阻型共模干擾有效,由于干擾源內阻大,短接后不會形成很大的接地環(huán)路電流,對于通信不會有很大影響。當共模干擾源內阻較低時,會在接地線上形成較大的環(huán)路電流,影響正常通信。筆者認為,可以采取以下

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論