串口通訊基礎及S3C2410 UART控制器(1)

數據通信的基本方式可分爲並行通信與串行通信兩種:
並行通信:是指利用多條數據傳輸線將一個資料的各位同時傳送。它的特點是傳輸速度快,適用於短距離通信,但要求通訊速率較高的應用場合。
串行通信:是指利用一條傳輸線將資料一位位地順序傳送。特點是通信線路簡單,利用簡單的線纜就可實現通信,降低成本,適用於遠距離通信,但傳輸速度慢的應用場合。
一、異步通信及其協議
異步通信以一個字符爲傳輸單位,通信中兩個字符間的時間間隔是不固定的,然而在同一個字符中的兩個相鄰位代碼間的時間間隔是固定的。
通信協議(通信規程):是指通信雙方約定的一些規則。在使用異步串口傳送一個字符的信息時,對資料格式有如下約定:規定有空閒位、起始位、資料位、奇偶校驗位、停止位。
異步通訊的時序,如圖5-1。

其中各位的意義如下:
起始位:先發出一個邏輯”0”信號,表示傳輸字符的開始。
資料位:緊接着起始位之後。資料位的個數可以是4、5、6、7、8等,構成一個字符。通常採用ASCII碼。從最低位開始傳送,靠時鐘定位。
奇偶校驗位:資料位加上這一位後,使得“1”的位數應爲偶數(偶校驗)或奇數(奇校驗),以此來校驗資料傳送的正確性。
停止位:它是一個字符數據的結束標誌。可以是1位、1.5位、2位的高電平。
空閒位:處於邏輯“1”狀態,表示當前線路上沒有資料傳送。
波特率:是衡量資料傳送速率的指針。表示每秒鐘傳送的二進制位數。例如資料傳送速率爲120字符/秒,而每一個字符爲10位,則其傳送的波特率爲10×120=1200字符/秒=1200波特。
注:異步通信是按字符傳輸的,接收設備在收到起始信號之後只要在一個字符的傳輸時間內能和發送設備保持同步就能正確接收。下一個字符起始位的到來又使同步重新校準(依靠檢測起始位來實現發送與接收方的時鐘自同步的。二、資料傳送方式
根據資料傳送方向的不同有以下三種方式。如圖5-2所示。

(1)單工方式 (2)半雙工方式 (3)全雙工方式
圖5-2 資料傳送方式
1、單工方式
資料始終是從A設備發向B設備。
2、 半雙工方式
資料能從A設備傳送到B設備,也能從B設備傳送到A設備。在任何時候資料都不能同時在兩個方向上傳送,即每次只能有一個設備發送,另一個設備接收。但是通訊雙方依照一定的通訊協議來輪流地進行發送和接收。
3、 全雙工方式
允許通信雙方同時進行發送和接收。這時,A設備在發送的同時也可以接收,B設備亦同。全雙工方式相當於把兩個方向相反的單工方式組合在一起,因此它需要兩條數據傳輸線。在計算機串行通訊中主要使用半雙工和全雙工方式。
三、信號傳輸方式
1、基帶傳輸方式
在傳輸線路上直接傳輸不加調製的二進制信號,如圖所示。它要求傳送線的頻帶較寬,傳輸的數字信號是矩形波。
基帶傳輸方式僅適宜於近距離和速度較低的通信。

2、頻帶傳輸方式
傳輸經過調製的模擬信號
在長距離通信時,發送方要用調製器把數字信號轉換成模擬信號,接收方則用解調器將接收到的模擬信號再轉換成數字信號,這就是信號的調製解調。
實現調製和解調任務的裝置稱爲調制解調器(MODEM)。採用頻帶傳輸時,通信雙方各接一個調制解調器,將數字信號寄載在模擬信號(載波)上加以傳輸。因此,這種傳輸方式也稱爲載波傳輸方式。這時的通信線路可以是電話交換網,也可以是專用線。
常用的調製方式有三種:
調幅、調頻和調相,分別如下圖所示。
 
四、串行接口標準
串行接口標準:指的是計算機或終端(資料終端設備DTE)的串行接口電路與調制解調器MODEM等(數據通信設備DCE)之間的連接標準。
RS-232C標準
RS-232C是一種標準接口,D型插座,採用25芯引腳或9芯引腳的連接器,如圖5-5所示。

圖5-5
微型計算機之間的串行通信就是按照RS-232C標準設計的接口電路實現的。如果使用一根電話線進行通信,那幺計算機和MODEM之間的聯機就是根據RS-232C標準連接的。其連接及通信原理如圖5-6所示

圖5-6

RS232信號定義
RS-232C標準規定接口有25根聯機。只有以下9個信號經常使用.
引腳和功能分別如下:
1. TXD(第2腳):發送資料線,輸出。發送資料到MODEM。
2. RXD(第3腳):接收資料線,輸入。接收資料到計算機或終端。
3. (第4腳):請求發送,輸出。計算機通過此引腳通知MODEM,要求發送資料。
4. (第5腳):允許發送,輸入。發出 作爲對 的回答,計算機纔可以進行發送資料。
5. (第6腳):資料裝置就緒(即MODEM準備好),輸入。表示調制解調器可以使用,該信號有時直接接到電源上,這樣當設備連通時即有效。
6. CD(第8腳):載波檢測(接收線信號測定器),輸入。表示MODEM已與電話線路連接好。
7. 如果通信線路是交換電話的一部分,則至少還需如下兩個信號:
8. RI(第22腳):振鈴指示,輸入。MODEM若接到交換臺送來的振鈴呼叫信號,就發出該信號來通知計算機或終端。
9. (第20腳):資料終端就緒,輸出。計算機收到RI信號以後,就發出 信號到MODEM作爲回答,以控制它的轉換設備,建立通信鏈路。
10. GND(第7腳):信號地
邏輯電平
RS-232C標準採用EIA電平,規定:
“1”的邏輯電平在-3V~-15v之間
“0”的邏輯電平在+3V~+15V之間。
由於EIA電平與TTL電平完全不同,必須進行相應的電平轉換,MCl488完成TTL電平到EIA電平的轉換,MCl489完成EIA電平到ITL電平的轉換。還有MAX232可以同時完成TTL->EIA和EIA->TTL的電平轉換。

除了RS-232C標準以外,還有一些其它的通用的異步串行接口標準,如:

RS-423A標準
爲了克服RS-232C的缺點,提高傳送速率,增加通信距離,又考慮到與RS-232C的兼容性,美國電子工業協會在1987年提出了RS-423A標準。該標準的主要優點是在接收端採用了差分輸入。而差分輸入對共模干擾信號有較高的抑制作用,這樣就提高了通信的可靠性。RS-423A用-6v表示邏輯 “1”,用+6v表示邏輯“0”,可以直接與RS-232C相接。採用RS-423A標準以獲得比RS-232C更佳的通信效果。圖5-7是RS423A 的連接示意圖。

圖5-7
RS-422A標準
RS-422A總線採用平衡輸出的發送器,差分輸入的接收器。如圖5-8所示。
圖5-8
 
RS-422A的輸出信號線間的電壓爲±2v,接收器的識別電壓爲±0.2v。共模範圍±25v。在高速傳送信號時,應該考慮到通信線路的阻抗匹配,一般在接收端加終端電阻以吸收掉反射波。電阻網絡也應該是平衡的,如圖5-9所示。
圖5-9 爲RS-422A平衡輸出差分輸示意圖
RS-485標準
RS-485適用於收發雙方共享一對線進行通信,也適用於多個點之間共享一對線路進行總線方式聯網,但通信只能是半雙工的,線路如圖5-10所示。
圖5-10

典型的RS232到RS422/485轉換芯片有:MAX481/483/485/487/488/489/490/491, SN75175/176/184等等,它們均只需單一+5v電源供電即可工作(芯片內部採用電荷泵方式升壓)。具體使用方法可查閱有關技術手冊。
五、S3C2410內置的UART控制器
S3C2410內部具有3個獨立的UART控制器,每個控制器都可以工作在Interrupt(中斷)模式或DMA(直接內存訪問)模式,也就是說 UART控制器可以CPU與UART控制器傳送資料的時候產生中斷或DMA請求。並且每個UART均具有16字節的FIFO(先入先出寄存器),支持的最高波特率可達到230.4Kbps
圖5-11是S3C2410內部UART控制器的結構圖

圖5-11

UART的操作

UART的操作分爲以下幾個部分,分別是:資料發送、資料接收、產生中斷、產生波特率、Loopback模式、紅外模式以及自動流控模式。
資料發送
發送的資料幀格式是可以編程設置的。它包含了起始位、5~8個資料位、可選的奇偶校驗位以及1~2位停止位。這些都是通過UART的控制寄存器 ULCONn 來設置的。
資料接收
同發送一樣,接收的資料幀格式也是可以進行編程設置的。此外,還具備了檢測溢出出錯、奇偶校驗出錯、幀出錯等出錯檢測,並且每種錯誤都可以置相應的錯誤標誌。
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章