回覆列表
-
1 # 使用者2251535592328
-
2 # 許三少14
uart是非同步序列通訊口的總稱。它所包含的RS232\RS449\RS423等等是對應各種非同步序列通訊口的介面標準和匯流排標準。
uart規定了通訊口的電氣特性、傳輸速率、連線特性和機械特性等一系列內容,實際上屬於通訊網路的底層概念,與通訊協議沒有直接關係。
uart是非同步序列通訊口的總稱。它所包含的RS232\RS449\RS423等等是對應各種非同步序列通訊口的介面標準和匯流排標準。
uart規定了通訊口的電氣特性、傳輸速率、連線特性和機械特性等一系列內容,實際上屬於通訊網路的底層概念,與通訊協議沒有直接關係。
傳送資料時,CPU將並行資料寫入UART,UART按照一定的格式在一根電線上序列發出;接收資料時,UART檢測另一根電線上的訊號,序列收集然後放在緩衝區中,CPU即可讀取UART獲得這些資料。UART之間以全雙工方式傳輸資料,最精確的連線方法只有3根電線:TxD用於傳送資料,RxD用於接收資料,Gnd用於給雙發提供參考電平,連線如下:

UART使用標準的TTL/CMOS邏輯電平(0~5v、0~3.3v、0~2.5v或0~1.8v)來表示資料,高電平表示1,低電平表示0。為了增強資料的抗干擾能力、提高傳輸長度,通常將TTL/CMOD邏輯電平轉換為RS-232邏輯電平,3~12v表示0,-3~-12v表示1
TxD、RxD資料線以位為最小單位傳輸資料,而幀由具有完整意義的、不可分割的若干位組成,它包含開始位、資料位、校驗位(需要的話)和停止位。傳送資料之前,UART之間要約定好資料的傳輸速率(即每位所佔據的時間,其倒數稱為波特率)、資料的傳輸格式(即有多少個數據位、是否使用校驗位、是奇校驗還是偶校驗、有多少個停止位)。
資料傳輸流程如下:
(1)平時資料線處於空閒狀態(1狀態)
(2)當要傳送資料時,UART改變TxD資料線的狀態(變為0狀態)並維持1位的時間,這樣接收方檢測到開始位後,在等待1.5位的時間就開始一位一位地檢測資料線的狀態得到所傳輸的資料。
(3)UART一幀中可以有5、6、7或8位的資料,傳送方一位一位地改變資料線的狀態將他們傳送出去,首先發送最低位。
(4)如果使用校驗功能,UART在傳送完資料後,還要傳送1位校驗位。有兩種校驗方法:奇校驗、偶校驗——資料位連同校驗位中,1的資料等於奇數或偶數。
(5)最後,傳送停止位,資料線恢復到空閒狀態(1狀態)。停止位的長度有3種:1位、1.5位、2位。
下圖演示了UART使用7個數據位、偶校驗、2個停止位的格式傳輸字元‘A’(二進位制值為0b1000001)時,TTL/COM邏輯電平和RS-232邏輯電平對應的波形
TTL/COM邏輯電平

RS-232邏輯電平

2、s3c2440 UART特性
(1)工作模式
s3c2440中,UART有三個獨立的通道,UART0、UART1、UART2,每個通道都可以工作於中斷模式和DMA模式。關於這兩種模式我們有必要說一下
<1>中斷模式: