UART RS232 RS485协议原理及应用
一、URAT
UART(Universal Asynchronous Receiver/Transmitter): 通用異步收發傳輸器,簡稱串口,是設備間進行異步通信的模塊。UART負責處理數據總線和串行口之間的串/并、并/串轉換,并規定了幀格式。它是一種通用的串行、異步通信總線,該總線有兩條數據線,可以實現全雙工的發送和接收,在嵌入式系統中常用于主機與輔助設備之間的通信。
1.并行和串行
一次同時傳送多位數據的通信方法叫做并行通信。各數據位同時傳輸,傳輸速度快、效率高,多用在實時、快速的場合。并行通信不能長距離通信,抗干擾能力差。
一般還需要一根時鐘線,由時鐘控制的8位數據總線,每個時鐘脈沖發送一個字節。
通過一條數據線,將數據一位一位依次傳輸的通信方法叫做串行通信。
串行通信又可以分為同步通信和異步通信。同步通信在進行數據傳輸時會將時鐘與數據全部進行傳輸,而異步通信不會進行時鐘的傳輸。同步通信的效率更高,但異步通信的作用也不可忽視
?2.單工和全雙工
?
單工:數據只在一個方向上傳輸,不能實現雙方通信(電視、廣播)
半雙工:允許數據在兩個方向上傳輸,但是同一時間數據只能在一個方向上傳輸(對講機)
全雙工:允許數據在兩個方向上同時傳輸(手機通話)
3.波特率
波特率用于描述UART通信時的通信速度,其單位bps(bit per sencod)即每秒傳送的bit的數量。
以9600波特率進行串口通信,完成1K字節的數據傳送,大約需要1s。
1024*8 / 9600 = 0.85s
4.UART幀格式
起始位:發送1位邏輯0(低電平),開始傳輸數據。
數據位:可以是5~8位的數據,先發低位,再發高位,一般常見的是8位(
校驗位:奇偶校驗,將數據位加上校驗位,1的位數為偶數(偶校驗),1的位數4為奇數(奇校驗),可有可無。
停止位:停止位是數據傳輸結束的標志,可以是1/1.5/2位的邏輯1(高電平)
空閑位:空閑時數據線為高電平狀態,代表無數據傳輸
5.UART缺點
①電氣接口不統一
UART只是對信號的時序進行了定義,而未定義接口的電氣特性;UART通信時一般直接使用處理器使用的電平,即TTL電平,但不同的處理器使用的電平存在差異, 所以不同的處理器使用UART通信時一般不能直接相連;UART沒有規定不同器件連接時連接器的標準, 所以不同器件之間通過UART通信時連接很不方便
②抗干擾能力差
?UART一般直接使用TTL信號來表示0和1, 但TTL信號的抗干擾能力較差,數據在傳輸過程中很容易出錯
③通信距離極短
因為TTL信號的抗干擾能力較差,所以其通信距離也很短,一般只能用于一個電路板上的兩個不芯片之間的通信
二、RS232
RS232協議是在1970年由美國電子工業協會(EIA)聯合貝爾系統、調制解調器廠家、計算機終端生產廠家共同制定的用于串行通訊的標準;?該標準規定采用一個標準的連接器,標準中對連接器的每個引腳的作用加以規定,還對信號的電平加以規定。?
????????
1.接口
該標準規定采用一個25引腳的DB-25連接器,標準中對連接器的每個引腳的信號內容加以規定,還對各種信號的電平加以規定; 后來IBM的PC機將RS232簡化成了DB-9連接器,后來成為事實標準; 現在工業控制的RS-232接口一般只使用RXD、TXD、GND三條線 。
2.信號
該標準規定邏輯“1”的電平為-5v到-15v,邏輯“0”的電平為+5v 到+15v,選用該電氣標準的目的在于提高抗干擾能力,增大通信距離,其傳送距離一般可達15m;
3.電平轉換
雖然很多處理器中都會集成UART控制器,但處理器產生的信號一般都是TTL信號并不是符合RS232標準的信號,所以一般還需要在處理器外部去添加電路對信號的電平進行轉換
S22協議是在1970年由美國電子工業協會(EIA)聯合貝爾系統、調制解調器廠家、計算機終端生產廠家共同制定的用于串行通訊的標準;
4.RS232缺點?
①接口的信號電平值較高,易損壞接口電路的芯片,又因為與TTL電平不兼容,所以需要使用電平轉換芯片才能與TTL電路連接
②通信速度較低
③易產生共模干擾,抗噪聲干擾性弱
④傳輸距離較短(15m)
三、RS485
該標準由電信行業協會和電子工業聯盟定義;使用該標準的通信網絡能在遠距離條件下以及電子噪聲大的環境下有效傳輸信號; 該標準允許連接多個收發器,即具有多站能力,這樣可以利用單一的RS485接口方便地建立起一個設備網絡,所以能夠以菊花鏈的方式進行多機通信。
1.信號
RS485標準規定采用差分信號進行數據傳輸,兩線間的電壓差為+2v到+6v表示邏輯“1”,兩線間的電壓差為-2v到-6v表示邏輯“0”;使用差分信號能有效地減少噪聲信號的干擾,延長通信距離,RS485的通信距離可以達到1500m;RS485接口信號的電平比RS232降低了,所以不易損壞接口電路的芯片,且該電平與TTL電平兼容,可方便地與TTL電路連接?
?差分信號在PCB進行布線處理中,一般要求等間距、等長處理,保證兩根線受到的干擾程度一樣,即保證了電壓差變化幅度小,提供抗干擾能力。
2.RS485優點
①接口的信號電平值較低,不易損壞接口電路的芯片,且與TTL電平兼容,可方便地與TTL電路連接
②通信速度快
③抗噪聲干擾性強
④傳輸距離較遠(1500m)
⑤可實現多節點組網
? ?1該3標準規定采用一個標準的連接器,標準中對連接器的每個引腳的作用加以規定,還對信號的電平加以規定;
?四、三者之間關系
?UART是通用異步收發傳輸器,是一個要完成一個特定的功能的硬件,它本身并不是協議。它將要傳輸的數據在串行通信與并行通信之間加以轉換。但是,它規定了傳輸時數據幀格式。
RS232/RS485是兩種不同的電氣協議?,是對電氣特性以及物理特性的規定,作用于數據的傳輸通路上,它并不內含對數據的處理方式。
RS232使用3-15v有效電平,而UART對電氣特性并沒有規定,直接使用CPU使用的電平(TTL電平)。電氣的特性決定了線路的連接方式,比如RS232,規定用電平表示數據,線路就是單線路的,用兩根線才能達到全雙工的目的;而RS485, 使用差分電平表示數據,必須用兩根線才能達到傳輸數據的基本要求,要實現全雙工,必需用4根線。
但是,無論使用RS232還是RS485,它們與UART是相對獨立的,但是由于電氣特性的差別,必須要有專用的器件和UART轉換,才能完成數據在線路和UART之間的正常流動。從某種意義上說,線路上存在的僅僅是電流,RS232/RS485規定了這些電流在什么樣的線路上流動和流動的樣式;在UART那里電流才被解釋和組裝成數據,并變成CPU可直接讀寫的形式。
?
總結
以上是生活随笔為你收集整理的UART RS232 RS485协议原理及应用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 哈希库--uthash的详细讲解(附ut
- 下一篇: 《Adobe Fireworks CS5