硬件介紹
嵌入式系統的硬件除了核心部件——嵌入式處理器外,還包括存儲器系統、外圍接口部件以及連接各種設備的總線系統。其中,存儲器是嵌入式系統存放數據和程序的功能部件,而外圍設備決定了應用于不同領域的嵌入式系統的獨特功能。
嵌入式處理器是嵌入式系統中硬件的核心組成部分,但是若沒有存儲器和I/O設備,它就無法具有各種實用的功能。嵌入式處理器通常集成了大量的I/O模塊單 元(如中斷控制器和通信控制器等)和存儲器(Flash和RAM等)。當嵌入式處理器上集成的存儲器單元和I/O單元不夠時,可以通過擴充組成強大的嵌入 式硬件系統。
嵌入式系統的硬件是以嵌入式處理器為中心,由存儲器、I/O單元電路、通信模塊、外部設備等必要的輔助接口組成的,如下圖所示。在實際應用中,嵌入式系統硬件配置可能非常精簡,除了微處理器和基本的外圍電路以外,其余的電路可以根據需要和成本進行裁剪、定制。
在嵌入式系統中使用的存儲器可以是內部存儲器,也可以是外部存儲器。通常處理器的內部存儲器是非常有限的。對于小型應用,如果這些存儲器夠用,就不必使用 外部存儲器;否則,就必須進行擴展,使用外部存儲設備。與通用計算機把應用軟件和操作系統放在外存的工作方式不同,嵌入式系統的軟件通常直接存放在內存 (如Flash)中,上電之后可以立刻運行;當然,也有的嵌入式系統的軟件從外存啟動、裝載并運行。無論如何,需要考慮嵌入式系統的軟件的固化問題,而這 一問題在通用計算機(如PC機)上開發軟件是不需要考慮的。此外,考慮存儲器系統時,還需要考慮嵌入式系統軟件的引導問題。
嵌入式處理器工作時必須有附屬電路支持,如時鐘電路、復位電路、調試電路、監視定時器、中斷控制電路等,這些電路并不完成數據的輸入/輸出功能,而是為嵌 入式處理器的工作提供必要的條件。在設計嵌入式系統的硬件電路時,常常將它們與嵌入式處理器設計成一個模塊,形成處理器最小系統。
嵌入式處理器在功能上有別于通用處理器,其區別在于嵌入式處理器上集成了大量的I/O電路。因此,用戶在開發嵌入式系統時,可以根據系統需求選擇合適的嵌 入式處理器,而無需再另外配合I/O電路。隨著半導體技術的發展,嵌入式處理器的集成度不斷提高,許多嵌入式處理器上集成的I/O功能完全滿足應用的需 求,基本無需擴展。嵌入式系統的I/O接口電路主要完成嵌入式處理器與外部設備之間的交互和數據通信。這些電路包括網絡接口、串行接口、模/數轉換和數 /模轉換接口、人機交互接口等。應用于不同行業的嵌入式系統,其接口功能和數量有很大的差異。在設計I/O接口電路時,一般把這部分作為I/O子系統進行 統一的設計,這樣既可以綜合考慮優化電路,又便于設計成果的重復使用。
處理器和ARM處理器
中央微處理器,簡稱CPU,它是計算機中最重要的一個部分,它決定嵌入式系統的主要功能特性。CPU又由運算器和控制器兩大部分組成。
所謂寄存器(register),是CPU內部用來存放數據的一些小型存儲區域,用于暫時存放參與運算的數據和運算結果。
外部設備也有寄存器,是一種存儲單元,其物理結構跟內存單元不一樣,但作用跟內存單元一樣,都能保存信息。
在設計時,給外部設備的每個寄存器都分配一個地址,CPU可以根據地址訪問某個寄存器,則該寄存器發生相應的動作:或接收數據總線上的數據(對應于寫操 作),或把自己的數據送到數據總線上(對應于讀操作)。當CPU訪問某個寄存器時,同一個外設的其他寄存器和其他外設的寄存器由于沒有CPU的指令不會發 生動作。
嵌入式處理器通常包括幾個部分:處理器內核、地址總線、數據總線、控制總線、片上I/O接口電路及輔助電路(如時鐘、復位電路等)。
下面簡單介紹一下ARM處理器的歷史和發展。
1991年ARM公司(Advanced RISC Machine Limited)成立于英國劍橋,最早由Arcon、Apple和VLSI合資成立,主要出售芯片設計技術的授權,在1985年4月26 日,第一個ARM原型在英國劍橋的Acorn 計算機有限公司誕生(在美國VLSI 公司制造)。目前,ARM 架構處理器已在高性能、低功耗、低成本的嵌入式應用領域中占據了領先地位。
ARM 公司最初只有12 人,經過十多年的發展,ARM 公司已擁有近千名員工,在許多國家都設立了分公司,包括ARM 公司在中國上海的分公司。目前,采用ARM 技術知識產權(IP)核的微處理器,即我們通常所說的ARM 微處理器,已遍及工業控制、消費類電子產品、通信系統、網絡系統、無線系統等各類產品市場,基于ARM 技術的微處理器應用約占據了32 位RISC 微處理器80%以上的市場份額,其中,在手機市場,ARM 占有絕對的壟斷地位。可以說,ARM技術正在逐步滲入到人們生活中的各個方面,而且隨著32 位CPU價格的不斷下降和開發環境的不斷成熟,ARM技術會應用得越來越廣泛。
ARM公司是專門從事基于RISC技術芯片設計開發的公司,作為嵌入式RISC處理器的知識產權IP供應商,公司本身并不直接從事芯片生產,而是靠轉讓設 計許可由合作公司生產各具特色的芯片,世界各大半導體生產商從ARM 公司購買其設計的ARM 微處理器核,根據各自不同的應用領域,加入適當的外圍電路,從而形成自己的ARM 微處理器芯片進入市場,利用這種合伙關系,ARM很快成為許多全球性RISC標準的締造者。目前,全世界有幾十家大的半導體公司都使用ARM公司的授權, 其中包括Intel、IBM、Samsung、LG 半導體、NEC、SONY、PHILIP 等公司,這也使得ARM 技術獲得更多的第三方工具、制造、軟件的支持,又使整個系統成本降低,使產品更容易進入市場并被消費者所接受,更具有競爭力。
存儲設備
嵌入式系統的存儲器子系統與通用計算機的存儲器子系統的功能并無明顯的區別,這決定了嵌入式系統的存儲器子系統的設計指標和方法也可以采用通用計算機的方法,尤其是嵌入通用計算機的大型嵌入式系統更是如此。
存儲器子系統設計的首要目標是使存儲器在工作速度上很好地與處理器匹配,并滿足各種存取需要。因此,體系結構的特性能夠提高存儲系統的速度和容量。隨著微 電子技術的發展,微處理器的工作速度有了很大的提高。而微處理器時鐘頻率提高比內存速度提高要快,以至于內存速度遠遠落后于CPU速度。如果大量使用高速 存儲器,使它們在速度上與處理器相吻合,就能夠簡便地解決問題。但是,這種方法受到經濟上的限制。因為隨著存儲器芯片速度的提高,其價格急劇上升,使系統 成本十分昂貴。在實際的計算機系統中,總是采用分級的方法來設計整個存儲器系統。如下圖所示為這種分級存儲系統的組織結構示意圖,它把全部存儲系統分為四 級,即寄存器組、高速緩存、內存和外存。它們在存取速度上依次遞減,而在存儲容量上逐級遞增。
寄存器組是最高一級的存儲器。在計算機設備中,寄存器組一般是微處理器內含的,如上一章介紹的ARM處理器中有37個寄存器。有些待使用的數據或者運算的 中間結果可以暫存在這些寄存器中。微處理器在對本芯片內的寄存器讀/寫時,速度很快,一般在一個時鐘周期內完成。從總體上說,設置一系列寄存器是為了盡可 能減少微處理器直接從外部取數的次數。但是,由于寄存器組是制作在微處理器內部的,受芯片面積和集成度的限制,因此寄存器的數量不可能做得很多。
第二級存儲器是高速緩沖存儲器(Cache)。高速緩存是一種小型、快速的存儲器,其存取速度足以與微處理器相匹配。高速緩存能夠保存部分內存的內容的拷貝,如果正確使用,它能夠減少內存平均訪問時間。
第三級是內存。運行的程序和數據都放在內存中。由于微處理器的尋址大部分在高速緩存上,因此內存可以采用速度稍慢的存儲器芯片,對系統性能的影響不會太 大,同時又降低了成本。內存除主要使用RAM外,還要使用一定量的ROM。這些ROM主要用來解決系統初始化的一系列操作,如設備檢測、接口電路初始化、 啟動操作系統等。一般情況下,ROM的存取時間比較長,對ROM的每次讀/寫要增添3~4個等待周期。但這種少量慢速存儲器只在開機時運行,對系統性能影 響不大。
最低一級存儲器是大容量的外存。這種外存容量大,但是在存取速度上比內存要慢得多。目前嵌入式系統中常用閃存作為大容量硬盤存儲各種程序和數據。
上述四級存儲器系統并不是每個嵌入式系統所必須具備的,應當根據系統的性能要求和處理器的功能來確定。例如,在8位處理器上,主要考慮內存的時間,而高速 緩存極少被采用。對于16位和32位微處理器組成的系統,隨著性能的提高,存儲系統變得更為復雜,一般都包含了全部四級存儲器。
總線
一個處理器系統可能使用多條總線來連接設備。高速設備可以連到高速總線上,而低速設備連到低速總線上,通過一個被稱為橋的邏輯電路使得總線可以互連。
使用這樣的總線配置主要考慮到以下幾個原因:
(1) 高速總線通常提供較寬的數據連接。
(2) 高速總線通常要更昂貴的電路和連接器,可以通過使用較慢的、比較便宜的總線來降低低速設備成本。
(3) 橋允許總線獨立操作,因此可以在I/O操作中提供并行性。
在高速總線和低速總線之間的總線橋是高速總線的受控器,是低速總線的主控器。橋從高速總線上獲取指令并將其傳到低速總線,將結果從低速總線傳到高速總線上。
嵌入式最常用的有四大總線有I2C總線、SPI總線、CAN總線、USB總線。
I2C總線
IIC總線,是INTER-IC串行總線的縮寫。INTER-IC原文大意是用于相互作用的集成電路,這種集成電路主要由雙向串行時鐘線SCL和雙向串行數據線SDA兩條線路組成,由荷蘭菲利浦公司于80年代研制開發成功。
IIC總線在傳送數據時其速率可達100kbps,最高速率時可達400kbps,總線上允許連接的設備數主要決定于總線上的電容量,一般設定為 400pF以下。I2C總線主要在微處理器的控制之下,因此通常稱微處理器是I2C總線的主機。習慣上總稱受控設備及功能電路為I2C總線的從機。這種主 機與從機之間的連接通常是在總線的輸出端,而輸出端的電路結構為IIC總線的從機。這種主機與從機之間的連接通常是在總線的輸出端,而輸出端的電路結構又 總是開漏輸出或集電極開路輸出。 通常數據傳送要由主機發出啟動信號和時鐘信號,向所控從機發出一個地址、一個讀寫位和一個應答位,其中地址位為7位數據,在實際控制中,一般一次只能傳送 一個8位數據,并以一個停止位結束。
在實際應用中,往往被傳送的數據位數會超過8位,也就是說總會有多字節傳送,這時必須在傳送數據地址結束后再傳送一個副地址。因此,被傳送的字節沒有限制,但每一個字節后面必須有一位應答位。應答位通常被設定在低電平,當應答位處于高電平時,指示被傳送的數據已結束。
在I2C總線的控制系統中,有時從機也可以是多臺微處理器,在多臺微機同時工作時,它們對總線的控制也由相似于時鐘的同步方式進行仲裁,也就是說時鐘的同 步與仲裁過程是同時進行的,不存在因是主機而有優先權次序。不同速度的從機可以接在同一I2C總線上完成相互間數據的傳送。高速方式芯片和普通芯片可以混 合于同一I2C總線上。
I2C總線的特點與特性
I2C總線與傳統的PWM調寬脈沖相比較,其最大的特點是串行數據線和時鐘線都是雙向傳輸線。I2C總線在實際電路的應用中,兩根線各自通過一個上拉電阻 連接到電源電壓的正極端,當總線空閑時,數據線SDA和時鐘線SCL必須保持高電平,同時各接口電路的輸出又必須是開路漏極或開路集電極,因此I2C總線 的最大特性是在地址信息傳輸過程中,即可以是主控器也可以是被控器,或既可以是發射器又可以是接收器,從而為掛在總線上的各集成電路或功能模塊完成各自的 功能提供了極大方便。
總線具有十分靈活的運用性,并且還具有多重主控的能力,如多個作為主控器去控制占用總線的電路,都可以根據在I2C總線上進行數據傳送的工作狀態,被分為 主控發送器、主控接收器、被控發射器、被控接收器。在多重主控能力中,由于總線的仲裁過程,I2C總線的時鐘信號將是各試力占用總線的各主控器的時鐘信號 的同步組合。所謂仲裁是在多個主控器試圖同時控制總線時一個裁決過程,它只允許其中的一個主控器繼續占用總線,并保證在整個過程中總線上的數據不會被丟失 或出錯誤;所謂同步是將兩個或多個器件的時鐘信號進行處理。
SPI總線
SPI接口的全稱是"Serial Peripheral Interface",意為串行外圍接口,是Motorola首先在其MC68HCXX系列處理器上定義的。SPI接口主要應用在 EEPROM,FLASH,實時時鐘,AD轉換器,還有數字信號處理器和數字信號解碼器之間。
SPI接口是在CPU和外圍低速器件之間進行同步串行數據傳輸,在主器件的移位脈沖下,數據按位傳輸,高位在前,地位在后,為全雙工通信,數據傳輸速度總體來說比I2C總線要快,速度可達到幾Mbps。
SPI接口是以主從方式工作的,這種模式通常有一個主器件和一個或多個從器件,其接口包括以下四種信號:
(1)MOSI – 主器件數據輸出,從器件數據輸入
(2)MISO – 主器件數據輸入,從器件數據輸出
(3)SCLK – 時鐘信號,由主器件產生
(4)/SS – 從器件使能信號,由主器件控制
在點對點的通信中,SPI接口不需要進行尋址操作,且為全雙工通信,顯得簡單高效。
在多個從器件的系統中,每個從器件需要獨立的使能信號,硬件上比I2C系統要稍微復雜一些。
SPI接口在內部硬件實際上是兩個簡單的移位寄存器,傳輸的數據為8位,在主器件產生的從器件使能信號和移位脈沖下,按位傳輸,高位在前,低位在后。如下圖所示,在SCLK的下降沿上數據改變,同時一位數據被存入移位寄存器。
SPI接口內部硬件圖示:
SPI接口的一個缺點:沒有指定的流控制,沒有應答機制確認是否接收到數據。
CAN總線
CAN(Controller Area Network)是ISO國際標準化的串行通信協議。廣泛應用于汽車、船舶等。具有已經被大家認可的高性能和可靠性。
CAN控制器通過組成總線的2根線(CAN-H和CAN-L)的電位差來確定總線的電平,在任一時刻,總線上有2種電平:顯性電平和隱性電平。
“顯性”具有“優先”的意味,只要有一個單元輸出顯性電平,總線上即為顯性電平,并且,“隱性”具有“包容”的意味,只有所有的單元都輸出隱性電平,總線上才為隱性電平。(顯性電平比隱性電平更強)。
總線上執行邏輯上的線“與”時,顯性電平的邏輯值為“0”,隱性電平為“1”。
CAN總線協議具有下面的特點:
1) 多主控制。當總線空閑時,連接到總線上的所有單元都可以啟動發送信息,這就是所謂的多主控制的概念。先占有總線的設備獲得在總線上進行發送信息的資格。這 就是所謂的CSMA/CR(Carrier Sense MultipleAccess/Collosion Avoidance)方法。如果多個設備同時開始發送信息,那么發送最高優先級ID消息的設備獲得發送資格。
2) 信息的發送。在CAN協議中,所有發送的信息要滿足預先定義的格式。當總線沒有被占用的時候,連接在總線上的任何設備都能起動新信息的傳輸,如果兩個或更 多個設備在同時刻啟動信息的傳輸,通過ID來決定優先級。ID并不是指明信息發送的目的地,而是指示信息的優先級。如果2個或者更多的設備在同一時刻啟動 信息的傳輸,在總線上按照信息所包含的ID的每一位來競爭,贏得競爭的設備(也就是具有最高優先級的信息)能夠繼續發送,而失敗者則立刻停止發送并進入接 收操作。因為總線上同一時刻只可能有一個發送者,而其它均處于接收狀態,所以,并不需要在底層協議中定義地址的概念。
3) 系統的靈活性。連接到總線上的單元并沒有類似地址這樣的標識,所以,添加或去除一個設備,無需改變軟件和硬件,或其它設備的應用層軟件。
4) 通信速度。可以設置任何通訊速度,以適應網絡規模。對一個網絡,所有單元必須有相同的通訊速度,如果不同,就會產生錯誤,并妨礙網絡通訊,然而,不同網絡間可以有不同的通訊速度。
5) 遠程數據請求。可以通過發送“遙控幀”,請求其他單元發送數據。
6) 錯誤檢測、錯誤通知、錯誤恢復功能。所有單元均可以檢測出錯誤(錯誤檢測功能)。檢測到錯誤的單元立刻同時通知其它所有的單元(錯誤通知功能)。如果一個 單元發送信息時檢測到一個錯誤,它會強制終止信息傳輸,并通知其它所有設備發生了錯誤,然后它會重傳直到信息正常傳輸出去(錯誤恢復功能)。
7) 錯誤隔離。在CAN總線上有兩種類型的錯誤:暫時性的錯誤(總線上的數據由于受到噪聲的影響而暫時出錯);持續性的錯誤(由于設備內部出錯(如驅動器壞 了、連接有問題等)而導致的)。CAN能夠區別這兩種類型,一方面降低常出錯單元的通訊優先級以阻止對其它正常設備的影響,另一方面,如果是一種持續性的 錯誤,將這個設備從總線上隔離開。
8) 連接。CAN總線允許多個設備同時連接到總線上且在邏輯上沒有數目上的限制。然而由于延遲和負載能力的限制,實際可連接得設備還是有限制的,可以通過降低通訊速度來增加連接的設備個數。相反,如果連接的設備少,通訊的速度可以增加。
USB總線
連接計算機外設的串行數據總線,其技術的發展一直非常緩慢。1969年EIA推出的RS-232C串行總線至今仍是連接計算機外設的主流串行總線。盡管在 20世紀70年代和80年代陸續推出了RS-422A、RS-449、RS-485和RS-530等串行總線(其中RS-449的設計初衷是想取代 RS-232C,而RS-530則是想取代RS-449),但由于種種原因都沒有改變RS-232C先入為主的主導地位。因此,長期以來,串行總線只用于 連接慢速外設或用作低速網絡的總線。
通用串行總線(Universal Serial Bus,USB)是1995年Microsoft、Compaq、IBM等公司聯合制定的一種新的計算機串行通信協議。USB協議得到各PC廠商、芯片制 造商和PC外設廠商的廣泛支持。從當初的0.7、0.8版本到現在廣泛采用的1.0、1.1版本,甚至到正在逐步推廣的2.0版本,USB本身也在不斷地 發展和完善。
通用串行總線是一種將USB外圍設備連接到主機的外部總線結構,它通過PCI總線和PC的內部系統數據線連接,實現數據傳送。USB同時又是一種通信協議,它支持主系統和USB外圍設備之間的數據傳送,通過一個4針的標準插頭,采用菊花鏈形式把所有的外設連接起來。
USB主要具有以下優點:
(1) 支持熱插拔(hot plug)和即插即用(Plug-and-Play),即在不關機的情況下可以安全地插上或斷開USB設備,動態加載驅動程序。
(2) 為所有的USB外設提供單一的、易于操作的標準連接類型,排除了外設對系統資源的需求,因此減少了硬件的復雜性和對端口的占用,整個USB系統只有一個端口和一個中斷,節省了系統資源。
(3) USB1.1提供全速12 Mb/s和低速1.5 Mb/s的模式,USB2.0提供高達480 Mb/s的傳輸速率。
(4) 為了適應各種不同類型外設的要求,USB提供了四種不同的數據傳輸類型。
(5) 易于擴展,理論上最多可支持127個設備。
液晶控制板
大平面顯示器通常由LCD構成。其中每個像素都由一個液晶體構成。LCD顯示器到系統的接口獨具特點,這主要因為LCD像素陣列能夠被隨機訪問。早期的液 晶顯示控制板被稱為被動矩陣,它依靠一個二維的電線網絡來編址像素。現代液晶顯示控制板顯示器使用一種主動矩陣系統,它給每個像素配置轉發器,以此來控 制、訪問LCD顯示器。主動矩陣顯示器提供了更高的對比度和顯示質量。
觸摸屏
觸摸屏是覆蓋在輸出設備上的輸入設備,用來記錄觸摸位置。把觸摸屏覆蓋在顯示器上,使用者可以對顯示的信息作出反應。
觸摸屏按其工作原理不同分為表面聲波屏、電容屏、電阻屏和紅外屏等。其中常見的觸摸屏是電阻式觸摸屏。電阻式觸摸屏用二維電壓表來探測位置。觸摸屏由兩層 被許多細小的透明隔離球隔開的導電薄層組成。當手指或筆觸摸屏幕時,平常互相絕緣的導電層在觸摸點位置有了一個接觸。在頂層的導電層上加上電壓,它的電阻 就在穿過該層時產生電勢差;然后頂層在接觸點對電壓采樣;最后用模/數轉換器來測量電壓,以此得出位置。
網絡設備 以太網接口
以太網是最廣泛應用的局域網絡技術,實現了在小區域(如一個辦公室)范圍內連接計算機。以太網數據速率為10 Mb/s,而快速以太網(Fast Ethernet)數據速率為100 Mb/s。最常用的以太網協議是IEEE 802.3標準,媒體的存取規則采用CSMA/CD(載波檢測多路存取/沖突檢測)。現代的操作系統均能同時支持這些協議標準,因此對嵌入式系統的應用來 說,考慮系統精簡因素,只需要支持這一種就夠了,除非有特殊需要,否則沒有必要支持太多協議。
以太網的數據傳輸有以下特點:
(1) 所有數據位的傳輸由低位開始,傳輸的位流采用曼徹斯特編碼。
(2) 以太網傳輸的數據段長度最小為60字節,最大為1514字節。
(3) 通常以太網卡可以接收來自三種地址的數據,即廣播地址、多播地址(在嵌入式系統中很少使用)和它自己的地址。但有時用于網絡分析和監控,網卡也可以設置為接收任何數據包。
(4) 任何兩個網卡的物理地址都是不一樣的。網卡地址由專門結構分配,不同廠家使用不同地址段,同一廠家的任意兩個網卡的地址也是唯一的。
藍牙
藍牙,是一種無線個人局域網(Wireless PAN),最初由愛立信創制,后來由藍牙技術聯盟訂定技術標準。能在包括移動電話、PDA、無線耳機、筆記本電腦、相關外設等眾多設備之間進行無線信息交 換。利用“藍牙”技術,能夠有效地簡化移動通信終端設備之間的通信,也能夠成功地簡化設備與因特網Internet之間的通信,從而數據傳輸變得更加迅速 高效,為無線通信拓寬道路。藍牙采用分散式網絡結構以及快跳頻和短包技術,支持點對點及點對多點通信,工作在全球通用的2.4GHz ISM(即工業、科學、醫學)頻段。其數據速率為1Mbps。采用時分雙工傳輸方案實現全雙工傳輸。
WIFI
WIFI一般指Wi-Fi,Wi-Fi是一種可以將個人電腦、手持設備(如pad、手機)等終端以無線方式互相連接的技術,事實上它是一個高頻無線電信 號。無線保真是一個無線網絡通信技術的品牌,由Wi-Fi聯盟所持有。目的是改善基于IEEE 802.11標準的無線網路產品之間的互通性。有人把使用IEEE 802.11系列協議的局域網就稱為無線保真。甚至把無線保真等同于無線網際網路(Wi-Fi是WLAN的重要組成部分)關于"Wi-Fi”這個縮寫詞的 發音,根據英文標準韋伯斯特詞典的讀音注釋,標準發音為/?wa?.fa?/因為Wi-Fi這個單詞是兩個單詞組成的,所以書寫形式最好為WI-FI,這 樣也就不存在所謂專家所說的讀音問題,同理有HI-FI(/ha?.fa?/)。
標準串行通信接口
標準異步串行通信接口主要有以下幾類:RS-232C、RS-422和RS-485。RS-232C是美國電子工業協會(EIA)正式公布的、在異步串行 通信中應用最廣的標準總線,適合短距離或帶調制解調器的通信場合。為了提供數據傳輸速率和通信距離,EIA又公布了RS-422和RS-485串行總線接 口標準。
RS-232C是美國電子工業協會(Electronic Industry Association,EIA)制定的在數據終端設備(Data Terminal Equipment,DTE)和數據通信設備(Data Communication Equipment,DCE)之間進行串行二進制數據交換的接口。RS是英文“推薦標準”的縮寫,232為標識號,C表示修改次數。RS-232C標準是 一種硬件協議,規定了21個信號和25個引腳,用于連接DTE和DCE兩種設備。
RS-232C標準規定的數據傳輸速率為50、75、100、150、300、600、1200、2400、4800、9600、19200 b/s等;驅動器允許有不超過2500 pF的電容負載,通信距離將受此電容限制。例如,當信號傳輸速率為20 kb/s時,最大傳輸距離為15 m。傳輸距離短的另一個原因是RS-232C屬于單端信號傳送,存在共地噪聲和不能抑制共模干擾等問題,因此一般用于短距離通信。
RS-232C接口的缺點主要表現在兩個方面:數據傳輸速率慢和傳輸距離短。RS-232C規定的20 kb/s的傳輸速率雖然能夠滿足異步通信要求(通常異步通信速率限制在19.2 kb/s以下),但對某些同步系統來說不能滿足傳輸速率要求。此外,RS-232C接口的一般設備之間電纜長度為15 m,最長也不會超過60 m。
RS-422是EIA公布的“平衡電壓數字接口電路的電氣特性”標準,是為改善RS-232C標準的電氣特性、又考慮與RS-232C兼容而制定的。RS-422與RS-232C的關鍵差別在于把單端輸入改為雙端差分輸入,雙方的信號地不再共用。
RS-422給出了對電纜、驅動器的要求,規定了雙端電氣接口形式,并使用雙絞線傳送信號。與RS-232C相比,RS-422傳輸信號距離長、速度快。 傳輸率最大為10 Mb/s,在此速率下,電纜允許長度為120 m。如果采用較低傳輸速率,如90 kb/s,則最大距離可達1200 m。
RS-485是RS-422的變型,RS-422是全雙工的,可以同時發送與接收;而RS-485是半雙工的,在某一時刻,只能一個發送另一個接收。
RS-485是一種多發送器的電路標準,它擴展了RS-422的性能,允許雙線總線上驅動32個負載設備。負載設備可以是被動發送器、接收器或二者組合而 成的收發器。當用于多點互連時,可節省信號線,便于高速遠距離傳送。許多智能儀器設備配有RS-485總線接口,便于將它們進行聯網。
UART提供了RS-232C數據終端設備接口,這樣計算機就可以和調制解調器或其他使用RS-232C接口的串行設備進行通信。作為接口的一部 分,UART還提供了以下功能:將計算機外部傳來的串行數據轉換為字節,供計算機內部使用并行數據的器件使用;將由計算機內部傳送過來的并行數據轉換為輸 出的串行數據;在輸出的串行數據流中加入奇偶校驗位,并對從外部接收的數據流進行奇偶校驗;在輸出的數據流中加入“起”、“止”標記,并從接收數據流中刪 除“起”、“止”標記;處理計算機與外部串行設備的同步管理問題;處理由鍵盤或鼠標發出的中斷信號(鍵盤和鼠標也是串行設備)。
相對于微處理器,一臺UART是作為一個甚至多個存儲點或I/O端口的。UART一般包括一個或多個狀態寄存器,用于驗證數據傳輸和接收時的狀態、進程。 微處理器能夠判斷何時已收到一個字節、何時已發送一個字節、是否產生通信錯誤等。UART還可以通過一個或多個控制寄存器進行配置,配置內容包括波特率的 設置、終止位數量的設置以及在發送字節時產生中斷等。異步通信在UART上幾乎是透明地運行,為了收、發數據,只需運行程序,簡單地在UART上執行讀/ 寫操作。
評論
查看更多