《嵌入式系統原理與接口技術》——嵌入式系統接口應用基礎

本文爲我負責編寫的電子工業出版社出版的《嵌入式系統原理與接口技術》一書第七章部分,這裏整理的仍然是修改稿,供須要的同窗參考,本書爲普通高等教育「十二五」規劃教材,電子信息科學與工程專業規劃教材,若是你對本書的內容感興趣,能夠經過各渠道購買。git

因爲博客排版比較麻煩,部分地方可能還有點混亂,後續的電子版整理能夠關注本博客,也歡迎各位針對書中內容提出建議或意見。安全

 

嵌入式封面

第7章 嵌入式系統接口應用基礎

7.1 嵌入式系統的接口類型

根據數據的通訊形式,嵌入式系統接口能夠分爲串行數據傳輸接口和並行數據傳輸接口兩種形式。串行數據傳輸接口又分爲數字數據傳輸接口和模擬數據傳輸接口兩種形式,即經過數據線上的信號形式來進行劃分,目前使用的大多數串行數據傳輸接口均爲數字式。串行數字數據傳輸接口又有單極性/雙極性、差分/非差分、同步/異步、全雙工/半雙工、歸零/非歸零之分;模擬數據傳輸接口又有幅值鍵控ASK(Amplitude-Shift Keying)、頻移鍵控FSK(Frequency-Shift Keying)、相移鍵控PSK(Phase-Shift Keying)之分。網絡

單極性/雙極性是指數據線傳輸數據時的電平狀況,差分信號傳輸則須要兩根數據線,兩根數據線上的電平徹底相反,當有外部干擾信號時,仍然可以經過兩個電平徹底相反的信號獲得正確的數據,所以差分數據傳輸可以有效地抵制干擾,提升數據傳輸的距離。同步/異步是指收發雙方是否須要同步時鐘信號。全雙工/半雙工是針對接收與發送可否同時完成而言,可以同時收發的就是全雙工形式,不然就是半雙工形式。要實現全雙工串行數據收發須要收發各一路信號,而半雙工收發數據能夠共用一路信號。歸零是指每一位二進制信息傳輸後均返回到零電平。異步

根據以上介紹,很容易對常見的串行接口進行劃分。如UART RS-232-C接口是雙極性、非歸零、全雙工異步串行接口。I2C、JTAG、1-Wire接口是單極性、非歸零、半雙工串行接口。USB、139四、RS-48五、CAN、EMAC等接口是非歸零、差分串行接口。對更詳細的分類感興趣的讀者能夠本身概括總結。electron

從實現的功能上接口類型還能夠分爲人機通訊接口、工業板卡接口、現場總線接口等多種形式。常見的嵌入式接口及其類型劃分如圖7-1所示。ide

image

7.2 嵌入式系統的電平匹配

因爲外部設備種類豐富,當外部設備與微處理器之間經過接口進行鏈接時每每存在接口類型匹配、電平匹配、通訊速度匹配、數據格式匹配等一系列匹配問題。一項不匹配都有可能致使通訊沒法進行或者形成通訊錯誤。所以本節主要介紹與嵌入式接口應用最基礎的電平匹配問題。性能

7.2.1 電平匹配概述

在混合電壓系統中,不一樣電源電壓的邏輯器件相互鏈接時會存在三個主要問題:第一是加到輸入和輸出引腳上的最大容許電壓的限制問題;第二是兩個電源之間的電流互串問題;第三是必須知足輸入轉換門限電平的問題。這些問題都是在嵌入式系統接口設計中須要首先考慮的問題。測試

1.電平類型及主要參數

電平是指可以被識別成必定邏輯信號的一個電壓範圍,在外部設備與嵌入式微處理器的接口應用中,涉及的電平可能有不少種,所以電平匹配問題是嵌入式系統應用中芯片之間可以相互鏈接、協同工做的基礎。電平匹配問題在嵌入式系統設計中很是常見,隨着低電壓器件的增多,在嵌入式系統中每每存在着不少不一樣工做電壓的器件,如嵌入式微處理器的工做電壓爲3.3V,而AD、DA、液晶屏等外部器件工做電壓爲5V,工做電壓不一樣,相應的接口每每具備不一樣的邏輯電平,這時就須要考慮以前所提到的三個問題。大數據

經常使用的邏輯電平有TTL、CMOS、LVTTL、LVCMOS、CML、ECL、PECL、LVPECL、 LVDS、GTL、RS-23二、RS-422等多種,其中TTL和CMOS的邏輯電平按典型電壓可分爲四類:5V系列、3.3V系列,2.5V系列和1.8V系列。5V TTL和5V CMOS邏輯電平是通用的邏輯電平。ECL/PECL/LVPECL、CML和LVDS是差分輸入輸出。RS-422/485和RS-232是串口的接口標準,RS-422/485是差分輸入輸出,RS-232是單端輸入輸出。優化

在邏輯電平的匹配問題中的主要參數以下:

(1)輸入高電平(Vih): 保證邏輯門的輸入爲高電平時所容許的最小輸入高電平,當輸入電平高於Vih時,則認爲輸入電平爲高電平:

(2)輸入低電平(Vil):保證邏輯門的輸入爲低電平時所容許的最大輸入低電平,當輸入電平低於Vil時,則認爲輸入電平爲低電平:

(3)輸出高電平(Voh):保證邏輯門的輸出爲高電平時的輸出電平的最小值,邏輯門的輸出爲高電平時的電平值都必須大於此Voh:

(4)輸出低電平(Vol):保證邏輯門的輸出爲低電平時的輸出電平的最大值,邏輯門的輸出爲低電平時的電平值都必須小於此Vol:

(5)閥值電平(Vt):數字電路芯片都存在一個閾值電平,就是電路剛剛勉強能翻轉動做時的電平。它是一個界於Vil、Vih之間的電壓值,對於CMOS電路的閾值電平,基本上是二分之一的電源電壓值,但要保證穩定的輸出,則必需要求輸入高電平>Vih,輸入低電平<Vil,而若是輸入電平在閾值上下,也就是在Vil~Vih這個區域,電路的輸出會處於不穩定狀態。

對於通常的邏輯電平,以上參數的關係以下:Voh > Vih > Vt > Vil > Vol。表7-1給出了經常使用電平的主要參數,所以在涉及電平匹配的應用設計中最主要的就是要考慮以上的相關參數,這是電平可否被識別的基礎。固然不一樣類型的電平還具備各自的特色,這將在下面進行分別介紹。

image

2.TTL電平與CMOS電平

在選用74系列芯片時,常常出現同一種類型的芯片有多種型號的狀況,如74HC59五、74LS59五、74LVC59五、74HCT595等多種,這些芯片的功能每每是相同的,不一樣的是具體性能的差異,如功耗、速度、驅動能力等,所以這裏不得不提到最多見的兩種電平TTL與CMOS的區別。在經常使用的芯片中絕大多數都是採用這兩種類型的電平,74系列的芯片是一個典型的表明。在嵌入式微控制器中,其I/O口根據設計的不一樣,同一芯片中可能同時存在這兩種形式的電平。

TTL(Transistor-Transistor Logic)全名是晶體管-晶體管邏輯電路,是一種電流型驅動器件,主要有54/74系列標準TTL、高速型TTL(H-TTL)、低功耗型TTL(L-TTL)、肖特基型TTL(S-TTL)、低功耗肖特基型TTL(LS-TTL)五個系列。對於大部分採用5V電源供電的TTL電平器件來講,根據以上介紹的主要參數,輸出高電平Voh≥2.4V,輸出低電平Vol≤0.4V,輸入高電平Vih≥2.0V,輸入低電平Vil≤0.8V。

CMOS(Complementary Metal Oxide Semiconductor),互補金屬氧化物半導體,是一種電壓型驅動器件,邏輯電平電壓接近於電源電壓,0邏輯電平接近於0V。並且具備很寬的噪聲容限。輸出高電平Voh≥4.45V;輸出低電平Vol≤0.5V;輸入高電平Vih≥3.5V;輸入低電平Vil≤1.5V。

TTL與CMOS的主要區別:

(1)TTL電路是電流控制器件,而CMOS電路是電壓控制器件。

(2)TTL電路的速度快,傳輸延遲時間短(5~10ns),但功耗大。

(3)CMOS電路的速度慢,傳輸延遲時間長(25~50ns),但功耗低。

(4)CMOS相對TTL有了更大的噪聲容限,輸入阻抗遠大於TTL輸入阻抗。

3.TTL與CMOS芯片的使用

在一樣5V電源電壓狀況下,CMOS電路能夠直接驅動TTL,由於CMOS的輸出高電平大於2.0V,輸出低電平小於0.8V;而TTL電路則不能直接驅動 CMOS電路,TTL的輸出高電平爲大於2.4V,若是落在2.4~3.5V之間,則CMOS電路就不能檢測到高電平,低電平小於0.4V知足要求,因此在TTL電路驅動CMOS電路時須要加上拉電阻。若是出現不一樣電壓電源的狀況,也能夠經過上面的方法進行判斷。

若是電路中出現3.3V的CMOS電路去驅動5V CMOS電路的狀況,如3.3V單片機去驅動74HC,這種狀況有如下幾種方法解決,最簡單的就是直接將74HC換成74HCT(74系列的輸入輸出在下面有介紹)的芯片,由於3.3V CMOS 能夠直接驅動5V的TTL電路;或者加電壓轉換芯片;還有就是把單片機的I/O口設爲開漏,而後加上拉電阻到5V,這種狀況下得根據實際狀況調整電阻的大小,以保證信號的上升沿時間。

CMOS電路的使用有如下幾點須要注意:

(1)CMOS電路是電壓控制器件,它的輸入總阻抗很大,對干擾信號的捕捉能力很強。因此,不用的引腳不要懸空,要接上拉電阻或者下拉電阻,給它一個恆定的電平。

(2)輸入端接低內阻的信號源時,要在輸入端和信號源之間串聯限流電阻,使輸入的電流限制在1mA以內。

(3)當接長信號傳輸線時,在CMOS電路端接匹配電阻。

(4)當輸入端接大電容時,應該在輸入端和電容之間接保護電阻。電阻值爲R=V0/1mA,V0是外界電容上的電壓。

(5)CMOS的輸入電流超過1mA,就有可能燒壞CMOS。

74系列集成電路大體可分爲6大類:

(1)74××(標準型);

(2)74LS××(低功耗肖特基型);

(3)74S××(肖特基型);

(4)74ALS××(先進低功耗肖特基型);

(5)74AS××(先進肖特基型);

(6)74F××(高速)。

近年來還出現了高速CMOS電路的74系列,該系列可分爲3大類:

(1)HC爲CMOS工做電平。

(2)HCT爲TTL工做電平,可與74LS系列互換使用。

(3)HCU適用於無緩衝級的CMOS電路。

不一樣的74系列產品,只要後邊的標號相同,其邏輯功能和引腳排列就相同。根據不一樣的條件和要求可選擇不一樣類型的74系列產品,好比電路的供電電壓爲3V就應選擇74HC系列的產品,經常使用的集中類型的典型參數如表7-2所示。

image

7.2.2 接口相關電路及概念

1.集電極開路輸出

在電路中常會遇到漏極開路(Open Drain)和集電極開路(Open Collector)兩種情形。漏極開路電路概念中提到的「漏」是指 MOSFET的漏極。同理,集電極開路電路中的「集」就是指三極管的集電極。在數字電路中,分別簡稱OD門和OC門。

典型的集電極開路電路如圖7-2所示。電路中右側的三極管集電極什麼都不接,因此叫作集電極開路,左側的三極管用於反相做用,即左側輸入「0」時左側三極管截止,VCC經過電阻加到右側三極管基極,右側三極管導通,右側輸出端鏈接到地,輸出「0」。

image

加上上拉電阻。所以集電極開路輸出能夠用作電平轉換,經過上拉電阻上拉至不一樣的電壓,來實現不一樣的電平轉換。

集電極開路輸出還經常使用作驅動器。因爲OC門電路的輸出管的集電極懸空,使用時需外接一個上拉電阻Rp到電源VCC。OC門使用上拉電阻以輸出高電平,此外爲了加大輸出引腳的驅動能力,上拉電阻阻值的選擇原則,從下降功耗及芯片的灌電流能力考慮應當足夠大;從確保足夠的驅動電流考慮應當足夠小。

將OC門輸出連在一塊兒時,再經過一個電阻接外電源,能夠實現「線與」邏輯關係。只要電阻的阻值和外電源電壓的數值選擇得當,就能作到既保證輸出的高、低電平符合要求,並且輸出三極管的負載電流又不至於過大。

集電極開路輸出除了能夠實現多門的線與邏輯關係外,經過使用大功率的三極管還可用於直接驅動較大電流的負載,如繼電器、脈衝變壓器、指示燈等。

2.漏極開路輸出

和集電極開路同樣,顧名思義,開漏電路就是指從MOSFET的漏極輸出的電路。典型的用法是在漏極外部的電路添加上拉電阻到電源如圖7-3所示。完整的開漏電路應由開漏器件和開漏上拉電阻組成。這裏的上拉電阻R的阻值決定了邏輯電平轉換的上升/降低沿的速度。阻值越大,速度越低,功耗越小。所以在選擇上拉電阻時要兼顧功耗和速度。標準的開漏腳通常只有輸出的能力。添加其餘的判斷電路,才能具有雙向輸入、輸出的能力。

image

不少單片機等器件的I/O就是漏極開路形式,或者能夠配置成漏極開路輸出形式,如51單片機的P0口就爲漏極開路輸出。在實際應用中能夠將多個開漏輸出的引腳鏈接到一條線上,這樣就造成「線與邏輯」關係。注意這個公共點必須接一個上拉電阻。當這些引腳的任一路變爲邏輯0後,開漏線上的邏輯就爲0了。在I2C等接口總線中就用此法判斷總線佔用狀態。

同集電極開路同樣,利用外部電路的驅動能力,減小IC內部的驅動。當IC內部MOSFET導通時,驅動電流是從外部的VCC流經上拉電阻,再經MOSFET到GND。IC內部僅需很小的柵極驅動電流,所以漏極開路也經常使用於驅動電路中。

3.推輓輸出

在功率放大器電路中常常採用推輓放大器電路,這種電路中用兩隻三極管構成一級放大器電路,如圖7-4所示。兩隻三極管分別放大輸入信號的正半周和負半周,即用一隻三極管放大信號的正半周,用另外一隻三極管放大信號的負半周,兩隻三極管輸出的半周信號在放大器負載上合併後獲得一個完整週期的輸出信號。

image

推輓放大器電路中,一隻三極管工做在導通、放大狀態時,另外一隻三極管處於截止狀態,當輸入信號變化到另外一個半周後,原先導通、放大的三極管進入截止,而原先截止的三極管進入導通、放大狀態,兩隻三極管在不斷地交替導通放大和截止變化,因此稱爲推輓放大器。輸出既能夠向負載灌電流,也能夠從負載抽取電流。

4.上拉電阻與下拉電阻

在嵌入式接口的相關應用中常常提到上拉電阻與下拉電阻。顧名思義,上拉電阻就是把端口鏈接到電源的電阻,下拉電阻就是把端口鏈接到地的電阻。雖然電路形式很是簡單,然而上拉電阻與下拉電阻在不少場合卻發揮着很是重要的做用。

簡單地說,上拉電阻的主要做用在於提升輸出信號的驅動能力、肯定輸入信號的電平(防止干擾)等,具體的表現爲:

(1)當TTL電路驅動COMS電路時,若是TTL電路輸出的高電平低於COMS電路的最低高電平(通常爲3.5V),這時就須要在TTL的輸出端接上拉電阻,以提升輸出高電平的值。

(2)OC門電路必須加上拉電阻,以提升輸出的高電平值。

(3)爲加大輸出引腳的驅動能力,有的單片機引腳上也常使用上拉電阻。

(4)在CMOS芯片上,爲了防止靜電形成損壞,不用的引腳不能懸空,通常接上拉電阻產生下降輸入阻抗,提供泄荷通路。

(5)芯片的引腳加上拉電阻來提升輸出電平,從而提升芯片輸入信號的噪聲容限加強抗干擾能力。

(6)提升總線的抗電磁干擾能力。引腳懸空就比較容易接受外界的電磁干擾。

(7)長線傳輸中電阻不匹配容易引發反射波干擾,加上下拉電阻是電阻匹配,有效抑制反射波干擾。

上拉電阻阻值的選擇原則包括:

(1)從節約功耗及芯片的灌電流能力考慮應當足夠大;電阻大,電流小。

(2)從確保足夠的驅動電流考慮應當足夠小;電阻小,電流大。

(3)對於高速電路,過大的上拉電阻可能邊沿變平緩。

綜合考慮以上三點,一般在1~10KW之間選取。對下拉電阻也有相似道理。

5.嵌入式微控制器的I/O配置

上面介紹了嵌入式系統接口設計中相關的接口電路和概念,嵌入式微控制器的I/O是在嵌入式系統設計中最經常使用到的接口,不少微控制器的I/O口能夠進行靈活配置,以本書介紹的STM32F10x爲例,STM32F10x的I/O能夠配置成如表7-3所示的八種模式。所以在I/O的應用中更爲靈活。

image

STM32F10x端口位的基本結構和應用在第6章中已經作了詳細的介紹,不少微控制器的端口和STM32相似,須要在不一樣的應用情形下,根據開漏輸出和推輓輸出的特色,靈活地配置工做模式。

7.2.3 電平匹配的電路設計

電平匹配電路的設計須要根據實際應用靈活選擇,在本節以經常使用的3.3V和5V的電平匹配爲例,來說解不一樣應用環境下電平匹配電路的設計。

1.直接鏈接

雖然電平不一樣,可是可以直接鏈接就再好不過,可以直接鏈接須要知足如下幾種情形。

(1)3.3V輸出鏈接5V器件。

① 3.3V輸出的Voh大於5V輸入的Vih;

② 3.3V輸出的Vol小於5V輸入的Vil。

經過表7-1中經常使用電平的參數可知,可以使用這種方法的例子之一是將 3.3V LVCMOS輸出鏈接到5V TTL輸入。

(2)5V器件輸出鏈接3.3V器件。

經過表7-1中經常使用電平的參數可知一般5V輸出的Voh爲4.7V,Vol爲0.5V;而一般3.3V LVCMOS和LVTTL輸入的Vih爲2V左右,Vil爲0.8V左右。所以當5V輸出驅動爲低電平時,電路鏈接不會有問題,而當5V輸出爲高電平時,4.7V的Voh大於2.1V的Vih,因此,咱們能夠直接把兩個引腳相連,不會有衝突,可是很重要的一個前提是芯片I/O可以容忍5V的電壓,對於本書所介紹的STM32來講部分I/O是容忍5V的,所以在不少應用中能夠直接鏈接。

2.使用MOSFET或者三極管轉換

若是5V輸入的Vih比3.3V CMOS器件的Voh要高,則驅動任何這樣的5V輸入就須要額外的電路。圖7-5所示爲低成本的雙元件解決方案。在選擇R1的阻值時,須要考慮兩個參數,即:輸入的開關速度和R1上的電流消耗。當把輸入從0切換到1時,須要計入因R1造成的RC時間常數而致使的輸入上升時間、5V輸入的輸入容抗,以及電路板上任何的雜散電容。輸入開關速度可經過下式計算:

image

因爲輸入容抗和電路板上的雜散電容是固定的,提升輸入開關速度的惟一途徑是下降R1的阻值。而下降R1阻值以獲取更短的開關時間,倒是以增大5V輸入爲低電平時的電流消耗爲代價的。一般,切換到0要比切換到1的速度快得多,由於N溝道MOSFET的導通電阻要遠小於R1。另外,在選擇N溝道MOSFET時,所選MOSFET的VGS應低於3.3V輸出的Voh。

使用三極管也能夠完成一樣的功能,因爲三極管爲電流型驅動,所以須要在輸入端加入限流電阻,其餘電路結構與MOSFET一致,同樣須要考慮電平轉換速度的問題。在STM32的應用中,針對這種狀況,還能夠把I/O設置爲開漏輸出,而後在片外使用電阻上拉到5V,其原理和上面介紹的一致,只不過用的是內部的MOSFET結構。

image

圖7-5 使用MOSFET的電平轉換電路

3.使用電阻分壓

既然是分壓,針對的固然就是高電壓輸出到低電壓的情形。一般,輸出端源電阻RS很是小(小於10W),若是選擇的R1遠大於RS,那麼能夠忽略RSR1的影響。在接收端,負載電阻RL很是大(大於500kW),若是選擇的R2遠小於RL,那麼能夠忽略RLR2的影響。電路圖如圖7-6所示。

image

在功耗和瞬態時間之間存在取捨權衡。爲了使接口電流的功耗需求最小,串聯電阻R1R2應儘量大。可是,負載電容(由雜散電容CS和3.3V器件的輸入電容CL合成)可能會對輸入信號的上升和降低時間產生不利影響。若是R1R2過大,上升和降低時間可能會過長而沒法接受。若是忽略RSRL的影響,代入電壓值,R1R2的值由下面的公式肯定。普通應用中能夠根據經驗取值,在對引腳時間要求比較嚴格的應用中還必須計算電平的上升與降低時間。

image

4.使用二極管補償

從表7-1能夠看出,5V CMOS輸入的高、低輸入電壓閾值均比3.3V輸出的閾值高約1伏。所以,即便來自3.3V系統的輸出可以被補償,留給噪聲或元件容差的餘地也很小或沒有。咱們須要的是可以補償輸出並加大高低輸出電壓差的電路。

設計一個二極管補償電路(見圖7-7),二極管D1的正向電壓(典型值0.7V)將會使輸出低電壓上升,在5V CMOS輸入獲得1.1~1.2V的低電壓。它安全地處於5V CMOS輸入的低輸入電壓閾值之下。輸出高電壓由上拉電阻和連至3.3V電源的二極管D2肯定。這使得輸出高電壓大約比3.3V電源高0.7V,也就是4.0~4.1V,很安全地在5V CMOS 輸入閾值(3.5V)之上。

爲了使電路工做正常,上拉電阻必須顯著小於5V CMOS輸入的輸入電阻,從而避免因爲輸入端電阻分壓器效應而致使的輸出電壓降低。上拉電阻還必須足夠大,從而確保加載在3.3V輸出上的電流在器件規範以內。

image

5.電壓鉗位鏈接

不少廠商都使用鉗位二極管來保護器件的I/O引腳,防止引腳上的電壓超過最大容許電壓規範。鉗位二極管使引腳上的電壓不會低於Vss 超過一個二極管壓降,也不會高於VDD超過一個二極管壓降。要使用鉗位二極管來保護輸入,仍然要關注流經鉗位二極管的電流。流經鉗位二極管的電流應該始終比較小(在微安數量級上)。若是流經鉗位二極管的電流過大,就存在部件閉鎖的危險。因爲5V輸出的源電阻一般在10W左右,所以仍需串聯一個電阻,限制流經鉗位二極管的電流,如圖7-8所示,圖中是利用芯片內部的鉗位二極管,若是芯片I/O結構中不帶有鉗位二極管也能夠在外部等效地添加鉗位二極管。使用串聯電阻的後果是下降了輸入開關的速度。

使用二極管鉗位有一個問題,即它將向3.3V電源注入電流。在具備高電流5V輸出且輕載3.3V電源軌的設計中,這種電流注入可能會使3.3V電源電壓超過3.3V。爲了不這個問題,能夠用一個三極管來替代,三極管使過量的輸出驅動電流流向地,而不是3.3V電源。設計的電路如圖7-9所示。

image

Q1的基極-發射極結所起的做用與二極管鉗位電路中的二極管相同。區別在於,發射極電流只有百分之幾流出基極進入3.3V軌,絕大部分電流都流向集電極,再從集電極無害地流入地。基極電流與集電極電流之比,由晶體管的電流增益決定,一般爲10~400V,取決於所使用的晶體管。

6.使用電壓比較器

使用電壓比較器也是很是直接的一種方案,缺點是每一路信號須要使用一路運放或者電壓比較器,電路略微複雜。

比較器的基本工做原理以下:

(1)反相(-)輸入電壓大於同相(+)輸入電壓時,比較器輸出切換到Vss

(2)同相(+)輸入端電壓大於反相(-)輸入電壓時,比較器輸出爲高電平。

爲了保持3.3V輸出的極性,3.3V輸出必須鏈接到比較器的同相輸入端。比較器的反相輸入鏈接到由R1R2肯定的參考電壓處,如圖7-10所示。

R1R2之比取決於輸入信號的邏輯電平。對於3.3V輸出,反相電壓應該置於VOL與VOH之間的中點電壓。對於LVCMOS輸出,中點電壓爲:

image

image

7-10 使用電壓比較器的電平轉換電路

若是R2取值1K則R1取值1.8K。要使運算放大器在5V供電下正常工做,輸出必須具備軌到軌驅動能力。

7.使用電平轉換器件

雖然本節中介紹了多種使用分立器件的電平轉換方法,可是若是針對過多的電平轉換,無疑會增長電路設計的複雜程度,並且以上轉換多數仍是單方向電平轉換,在各類參數上也受到諸多限制,在這種狀況下使用多通道電平轉換芯片則是最好的選擇。

電平轉換器的使用範圍比較普遍:有單向和雙向配置、不一樣的轉換電壓和速度,在實際使用中須要根據實際應用需求選擇最佳的方案。器件之間的板級通訊(例如,MCU至外設)每每經過SPI或I2C來進行,這是最多見的。對於SPI,使用單向電平轉換器比較合適;對於I2C,就須要使用雙向解決方案。經常使用的電平轉換芯片有SN74ALVC164245等。

7.3 嵌入式系統通訊形式的匹配

不一樣的外部設備在同嵌入式微處理器相鏈接時,即便是同一類型的接口也每每存在着通訊速度、數據格式、數據類型等一系列的問題,而嵌入式處理器在設計時爲了適應不一樣的外部設備,其端口大多能夠根據實際外部設備的需求而經過寄存器對接口的工做方式進行靈活配置,所以在進行嵌入式系統的接口應用方面的設計時,要根據鏈接的外設弄清楚接口的工做方式並清楚微處理器對應的接口配置。

通訊速度匹配,不一樣功能的外設對通訊速度有着不一樣的要求,在異步通訊中具備不一樣通訊速度的設備之間是沒法通訊的,如UART、485總線、CAN總線等。在可以正常進行通訊的狀況下,速度的選擇也要視狀況而定,例如高速AD,因爲有着大數據量的模擬量採集,所以須要很高的通訊速度來完成採集數據的傳輸,而像微型打印機之類的設備,通訊的數據量則很是有限,所以針對不一樣的應用通訊速度須要根據實際應用綜合考慮。

數據格式匹配,數據位數是8位仍是16位,在串行通訊中,發送數據時高位在前仍是低位在前,同步串行通訊中採樣時間是在時鐘信號上升沿仍是降低沿,這些都是在通訊中可能遇到的格式問題。在絕大多數微控制器中均可以經過配置寄存器的方式對這些進行靈活配置,微控制器與外部設備鏈接時必定要弄清楚外部設備接口詳細的數據格式,並作出針對性的配置。

7.4 嵌入式系統的電氣隔離

7.4.1 電氣隔離概述

1.電氣隔離的必要性

電氣隔離的主要目的是經過隔離元器件把噪聲干擾的路徑切斷,從而達到抑制干擾保護電路不受危險電壓和電路危害的效果,使電子電氣設備符合電磁兼容性的要求,同時提高設備的可靠性。因爲有的嵌入式系統須要工做在環境較爲惡劣的環境中,可能受到電網諧波、雷擊浪涌、高頻干擾、電磁干擾等各類形式的干擾,所以,在嵌入式系統的設計過程當中須要設計各類抗干擾措施,而電氣隔離是最重要,也是廣泛須要的一種抗干擾方式。

將嵌入式系統或者嵌入式系統的主要控制電路與供電電源、大功率設備、主要通訊接口等進行電氣隔離,能夠有效保證嵌入式系統穩定運行。例如嵌入式系統經過隔離電源,即與供電電源隔離就能夠避免供電電源中的諧波、脈衝等干擾,若是嵌入式控制器控制一些大功率設備,則能夠將二者電源和控制信號分別進行隔離,這樣能夠避免大功率設備運行過程當中形成電壓波動、產生干擾等對微控制器形成影響。

2.須要電氣隔離的場合

採用隔離技術的場合主要有兩種:一種是在有可能存在損壞設備或危害人員的應用中進行電氣隔離,如醫療上的應用、電動機控制、總線隔離等方面。第二種狀況是:必須避免存在不一樣電位和分裂的接地迴路的互聯。兩種狀況都是採用隔離來避免電流流過,而容許兩點之間有數據或者功率傳送。

在許多嵌入式系統的應用中,常常須要數據鏈路之間進行非直接的導電鏈接,從而避免來自系統某一部分的危險電壓(或電流)對其餘部分形成破壞,或者避免系統中某一部分電路損壞時連帶對其餘電路形成影響和破壞,從而使整個系統癱瘓。形成這種破壞的緣由多是電源供電故障、接地故障、雷擊和浪涌等狀況。

此外,在通訊節點的通訊系統中,不一樣的節點可能位於不一樣的區域,並採用獨立的供電系統,這些區域之間的電位差(可能含有DC偏壓、AC諧波和各類瞬態噪聲等)也有可能形成破壞。在實際工程應用中,還有可能發生通訊電纜損壞以及人爲的一些錯誤等,使通訊線路出現重大錯誤,若是各通訊節點沒有和通訊線路之間進行隔離則有可能出現通訊節點的損壞,所以在嵌入式系統的工業應用中,須要和多個節點進行通訊的通訊接口通常是須要進行電氣隔離的。

3.電氣隔離的類型

根據隔離的信號類型不一樣,電路隔離主要有:模擬電路的隔離、數字電路的隔離、數字電路與模擬電路之間的隔離。所使用的隔離方法有:變壓器隔離法、脈衝變壓器隔離法、繼電器隔離法、光電耦合器隔離法、直流電壓隔離法、線性隔離放大器隔離法、光纖隔離法、A/D轉換器隔離法等多種,本節將介紹在嵌入式系統中應用最爲普遍的幾種隔離方法。

7.4.2 供電系統的隔離

1.交流供電系統的隔離

因爲交流電網中存在着大量的諧波,雷擊浪涌,高頻干擾等噪聲,因此對由交流電源供電的控制裝置和電子電氣設備,都應採起抑制來自交流電源干擾的措施。採用電源隔離變壓器,能夠有效地抑制竄入交流電源中的噪聲干擾。可是,普通變壓器卻不能徹底起到抗干擾的做用,這是由於,雖然一次繞組和二次繞組之間是絕緣的,可以阻止一次側的噪聲電壓、電流直接傳輸到二次側,有隔離做用。然而,因爲分佈電容(繞組與鐵芯之間,繞組之間,層匝之間和引線之間)的存在,交流電網中的噪聲會經過分佈電容耦合到二次側。爲了抑制噪聲,必須在繞組間加屏蔽層,這樣就能有效地抑制噪聲,消除干擾,提升設備的電磁兼容性。隨着技術的進步,國外已研製成功了專門抑制噪聲的隔離變壓器(Noise Cutout Transformer,簡稱NCT),這是一種繞組和變壓器總體都有屏蔽層的多層屏蔽變壓器。這類變壓器的結構,鐵芯材料,形狀及其線圈位置都比較特殊,它能夠切斷高頻噪聲漏磁通和繞組的交鏈,從而使差模噪聲不易感應到二次側,故這種變壓器既能切斷共模噪聲電壓,又能切斷差模噪聲電壓,是比較理想的隔離變壓器。

因爲在嵌入式系統的應用中,主要的控制電路部分都採用直流電源,所以在普通的應用中交流供電的隔離只須要普通的變壓器便可,在有特殊需求的系統中須要額外考慮。

2.直流供電系統的隔離

當控制裝置和電子電氣設備的內部子系統之間須要相互隔離時,它們各自的直流供電電源間也應該相互隔離,其隔離方式以下:第一種是在交流側使用隔離變壓器;第二種是使用DC/DC隔離變換器。

使用隔離變壓器的設計示意電路如圖7-11所示。此種方式適用於系統使用交流供電的場合,須要進行隔離的電路經過不一樣的變壓器與交流電源鏈接,每一個電路有本身獨立的整流、變壓等電路。這種方式的缺點是普通變壓器體積較大,同時會增長電路的設計成本,並且只適用於系統採用交流供電的場合。

clip_image029

圖7-11 使用變壓器進行的直流供電系統隔離

DC/DC隔離變換器具備體積小,使用靈活等優勢,在嵌入式系統中有很是普遍的應用,目前不少公司都推出了不一樣功率和隔離級別的DC/DC 隔離變換器,能夠適合各類場合的應用。如圖7-12所示,爲MORNSUN PWE_D-6W & PWF_D-6W系列DC/DC隔離電源模塊,該系列模塊產品特色以下:

(1)效率高達84%;

(2)工做溫度:-40~+85℃;

(3)隔離電壓3000VDC;

(4)輸出短路保護(自恢復);

(5)內部貼片化設計;

(6)國際標準引腳方式;

(7)MTBF>1 000 000 h;

(8)符合RoHS指令;

(9)高低溫特性好,知足工業級產品技術要求。

clip_image031

圖7-12 DC/DC電源模塊

7.4.3 數字信號的隔離

數字隔離技術經常使用於工業網絡環境的現場總線、軍用電子系統和航空航天電子設備中,尤爲是一些應用環境比較惡劣的場合。數字隔離電路主要用於數字信號和開關量信號的傳輸。數字隔離器件的生產商不少,如安華高的HCPL系列、TI的ISO72XX系列、ADI的ADuM12/14XX系列、NVE的ILXX系列、芯科實驗室的SI84XX等公司,各廠商的產品都獲得了普遍應用。依照數字式隔離電路的生產工藝、電氣結構和傳輸原理,數字隔離電路主要分爲光電隔離、電磁隔離及電容隔離技術的數字隔離器件。

在進行數字信號的隔離時應該從如下三個方面綜合考慮:

(1)通訊速度:不一樣的隔離方式有不一樣的通訊速度限制,因爲不一樣的數字接口可能有較大的速度差別,而較快通訊速度的通訊接口隔離成本也較高,所以應該根據實際的應用需求選擇合適的隔離方式。

(2)功耗限制:不一樣的隔離方式功耗差異較大,好比光電隔離,因爲是使用LED發光的方式傳遞信號,所以相應的功率較大,在數字信號路數較多時應當考慮相應的功耗問題。

(3)電路設計複雜程度:有的隔離期間須要經過一些外部電路的配合纔可以實現隔離信號的傳遞,若是單路信號的隔離電路較爲複雜,那麼在數字信號路數過多時就會增長電路設計的複雜程度。

下面就結合上面所介紹的幾個方面分別介紹一下幾種常見隔離方式的工做原理以及應用電路。

1.光電隔離

光電隔離器(Optoelectronic Isolator,簡稱OC)也稱光電耦合器、光耦合器,簡稱光耦。光耦合技術是在透明絕緣隔離層(例如空氣間隙)上的光傳輸,完成了電—光—電的轉換,從而起到輸入、輸出隔離的做用。是應用最爲普遍的隔離方式。

光耦合器通常由三部分組成:光的發射、光的接收及信號放大。輸入的電信號驅動發光二極管(LED),使之發出必定波長的光,被光探測器接收而產生光電流,再通過進一步放大後輸出。這就完成了電—光—電的轉換,從而起到輸入、輸出、隔離的做用。因爲光耦合器輸入輸出間互相隔離,電信號傳輸具備單向性等特色,於是具備良好的電絕緣能力和抗干擾能力。又因爲光耦合器的輸入端屬於電流型工做的低阻元件,於是具備很強的共模抑制能力。因此,它在長線傳輸信息中做爲終端隔離元件能夠大大提升信噪比。在計算機數字通訊及實時控制中做爲信號隔離的接口器件,能夠大大增長計算機工做的可靠性。

光耦合器的主要優勢是:信號單向傳輸,輸入端與輸出端徹底實現了電氣隔離,輸出信號對輸入端無影響,抗干擾能力強,工做穩定,無觸點,使用壽命長,傳輸效率高。光耦合器是20世紀70年代發展起來的新型器件,現已普遍用於電氣絕緣、電平轉換、級間耦合、驅動電路、開關電路、斬波器、多諧振盪器、信號隔離、級間隔離、脈衝放大電路、數字儀表、遠距離信號傳輸、脈衝放大、固態繼電器(SSR)、儀器儀表、通訊設備及微機接口中。在單片開關電源中,利用線性光耦合器可構成光耦反饋電路,經過調節控制端電流來改變佔空比,達到精密穩壓目的。

最爲經常使用的光電隔離電路如圖7-13所示,應用最爲廣泛的光電耦合器如東芝TLP521等均可以使用此電路,電路的輸入端使用一個限流電阻,輸出端使用一個分壓電阻,當左側輸入端輸出高電平點亮LED,右側接收到光信號後電阻變小,輸出端輸出低電平,不然輸出高電平,若是要使輸入輸出端電平狀態一致,能夠將左側改成灌電流輸入的方式或者將右側分壓電阻接地鏈接。此電路還能夠用於電平的轉換,LED發射端經過限流電阻的配合能夠承受比較寬的電壓範圍,所以能夠實現不一樣的工做電壓電平轉換,這種形式常常應用於一些開關量控制或讀取的電路中。

image

因爲不少功率驅動電路常常須要進行電氣隔離,所以將驅動電路與光電耦合器結合就成爲具有功率驅動功能的光耦,如東芝公司的TLP250,其內部結構所圖7-14如示。光耦採用8腳DIP封裝,有一個光耦和一個推輓輸出電路組成,最大能夠輸出1.5A電路,能夠直接驅動IGBT、MOSFET等功率器件,極大方便了電路的設計,相似的產品還有安捷倫公司的HCPL-3120具有最大2.5A的輸出電流。

image

普通的光電耦合器因爲完成光電轉換須要必定的時間,只適合在通訊速率要求不高的狀況下使用,如上文介紹的TLP521,在串口應用中9600如下的波特率還可以正常工做,再高的波特率就沒法使用,所以在須要對高速信號進行隔離的場合須要使用針對高速隔離設計的高速光耦,6N137光耦合器是最多見的用於單通道隔離的高速光耦合器,其內部由一個850 nm波長AlGaAs LED和一個集成檢測器組成,其檢測器由一個光敏二極管、高增益線性運放及一個肖特基鉗位的集電極開路的三極管組成。具備溫度、電流和電壓補償功能,高的輸入輸出隔離,LSTTL/TTL兼容,高速(典型爲10MBd),5mA的極小輸入電流,轉換速率高達10Mbps很是適合用於各類高速通訊接口等高速數字信號的隔離。與6N137相似的還有HCPL-2601/2611,雙通道的HCPL-2630/2631等。其封裝及內部結構如圖7-15所示。

image

因爲光電耦合隔離自己的一些特色,它還存在幾個比較嚴重的缺點,同本節前面介紹的進行隔離設計所須要考慮的幾個問題,光電隔離技術的缺點有:

(1)功耗大,因爲須要LED進行信號的傳輸與轉換,LED發射端須要約10mA的電流,路數較多時功耗大的缺點尤其明顯。

(2)電路設計複雜,以電路結構較爲簡單的TLP521爲例,進行一路信號的隔離就須要使用一個DIP4封裝的芯片和兩個電阻,在進行多路信號的隔離時會使電路設計、PCB佈線更爲複雜。

(3)通訊速度受限,難以通訊速率更高的應用。

(4)LED老化等影響隔離器件的使用壽命。

然而,因爲光電隔離具備成本低、使用靈活等優點,在嵌入式系統的設計中有普遍的應用,不少狀況下仍然是首選的隔離方式。

2.電磁隔離

與光耦合同樣,電感耦合也有較長的應用歷史,但一般僅用於電源或模擬隔離器,而非數字器件。電感耦合使用不斷變化的磁場來經過隔離層實現通訊。變壓器是一個最多見的例子:初級繞組及次級繞組的結構(單位長度的圈數)、磁芯介電常數及電流強度決定了磁場強度。電感耦合的優點之一是能夠在不明顯下降差模信號的狀況下最小化變壓器的共模噪聲。另外一個優點是信號能量的轉換效率極高,於是能夠實現低功耗隔離器。

電感耦合的缺點之一是易受外部磁場(噪聲)的干擾。在馬達控制等工業應用在磁場環境中一般須要隔離。電感耦合另外一個值得關注的問題是數字數據與數據遊程長度(Data Run-length)(連續「1」或「0」的數目)的傳輸。初級繞組與次級繞組之間的耦合可以以可接受的衰減量傳遞必定頻率範圍的信號。數據遊程長度的限制或時鐘編碼要求信號必須保持在變壓器的可用帶寬範圍內。用電感耦合技術的通用數字隔離器要求信號處理隨同傳輸低頻率信號(1或0長字符)的方法共同對數字信號進行傳輸和從新構建。ADI(美國模擬器件公司)推出的iCoupler就使用了編碼功能,並提供了支持從DC到100Mbps運行範圍的數字隔離解決方案。

ADuM磁隔離是對ADI推出的ADuM、ADM系列數字隔離芯片的統稱,是目前應用最爲普遍的電磁隔離系列產品。ADuM磁隔離芯片採用ADI專利的iCoupler技術,即芯片級變壓器隔離技術,來實現數字信號的隔離傳輸。

如圖7-16所示,對於輸入ADuM磁隔離芯片的數字信號,會先通過一個施密特觸發器進行脈衝信號調整,使輸入的波形爲標準的矩形波。而後通過編碼電路,以邊沿觸發的形式,將上升沿編碼成一個1ns寬的脈衝;而將降低沿編碼成兩個1ns寬的脈衝。經變壓器耦合,而後通過解碼電路以相同的原理將信號還原,再通過施密特觸發器進行脈衝信號調整後,將信號輸出。

clip_image039

圖7-16 ADuM磁隔離內部結構

此外,ADuM磁隔離芯片還獨具直流較正功能,若是輸入端邏輯電平超過2mS都沒有任何變化,則校訂電路會產生一個適當極性的校訂脈衝,以確保變壓器直流端輸出信號的正確性,若是解碼器一端超過5mS都沒有收到任何校訂脈衝,則會認爲輸入端已經掉電或不工做,由看門狗電定時器電路,將輸出端強行置爲固定狀態。這對低速率信號或直流信號具備很重要的意義。

電磁耦合的主要缺點是對外部磁場(噪聲)的磁化和受外部磁場干擾,那麼ADuM系列在這方面的性能如何呢?iCoupler器件受外部磁場的影響較小,由於變壓器的尺寸極小,其直徑大約只有0.3mm。例如咱們將一個頻率爲1MHz的電流置於距離iCoupler變壓器5mm遠處,要想破壞iCoupler的性能,其電流必須達到500A。這是一個頻率較高,強度較大的磁場。儘管採用iCoupler器件的系統中包含了發電動機、電動機和其餘涉及到強磁場的設備,可是尚未任何一個客戶的應用會達到甚至接近這麼高的磁場,因此,iCoupler產品抗外部磁場干擾能力極強。

ADuM磁隔離芯片採用磁隔離技術,與光耦的光電轉換有本質區別。不只克服了光耦的體積大、老化、速率低、功耗高等缺點,部分型號還集成了RS-48五、RS-232等通訊功能。

(1)體積小:最多集成5通道隔離,可下降70%以上PCB面積。

iCoupler磁耦產品是用薄片加工技術製造的,所以,多隔離通道可以有效地與其餘半導體功能結合起來,例如,圖7-17顯示了一個典型的使用光耦的多路隔離設備和iCoupler磁耦技術在尺寸和成本上的比較。在圖中咱們能夠看到,iCoupler磁耦技術在總體上的好處是可以減小40%~60%的尺寸和成本。

image

(2)性能高:更高的速率、更快的傳輸時間,瞬態共模抑制達25kv/m。

因採用高速CMOS技術與芯片級變壓器技術相結合,所以在速率、傳輸延遲時間、瞬態共模抑制等方面均有光耦沒法比擬的優點,可總體提高產品性能10倍以上。

(3)低功耗:最低可達0.8mA/通道。

光耦因須要驅動發光二極管,因此通常須要較大的工做電流。而ADuM磁隔離芯片採用CMOS電路,功耗僅至關於光耦的1/10。

(4)簡化電路:無須限流與上拉電阻。

全部的iCoupler磁耦產品都有標準的CMOS數字輸入輸出接口,所以,沒有外部組成部分須要經過其餘數字設備鏈接到磁耦。此外,iCoupler磁耦產品的性能在溫度,電壓和整個壽命中是極穩定的。所以磁耦可以被快速地被應用到任何設計中而不須要複雜聯合的光耦。

ADuM系列芯片型號豐富,提供了很是豐富的型號,單向隔離器主要有單通道數字隔離ADuM1100/3100,雙通道數字隔離ADuM120X/121X/220X/320X/321X,三通道數字隔離ADuM130X/131X/330X,四通道數字隔離ADuM140X/141X/240X/340X/344X以及五通道數字隔離ADuM1500等,同時還有雙向雙通道數字隔離器ADuM125X等型號。

ADuM系列還具備和收發器相結合的隔離型收發器系列,如隔離型RS-232收發器ADuM3251E等,隔離型RS-485/422收發器ADuM2490E等,以及一系列磁耦隔離電源,集成A/D轉換器的隔離器件等產品。

3.電容隔離

電容耦合使用不斷變化的電場來經過隔離層實現信息傳輸。電容器極板之間的材料是電介質絕緣體,即隔離層。電極板的大小、板間距離及電介質材料決定了電氣特性。採用電容隔離層的優點是效率高,不管在體積、能量轉換仍是在抗磁場干擾方面均如此。這種高效特性使得實現低功耗及低成本的集成式隔離電路成爲可能。抗干擾性則使得器件能夠在飽和或密集磁場環境下工做。

與變壓器不一樣的是,電容耦合的缺點在於無差分信號,而且噪聲與信號共用同一條傳輸通道。這就要求信號頻率應遠高於可能出現的噪聲頻率,以便使隔離層電容對信號呈現低阻抗而對噪聲呈現高阻抗。如同電感耦合同樣,電容耦合也存在帶寬限制,一樣須要時鐘編碼數據。下面以較爲經常使用的TI公司的ISO721電容隔離芯片來簡要說明一下電容隔離的基本原理。ISO721的內部結構示意圖如圖7-18所示。

clip_image043

圖7-18 ISO721內部結構

因爲電容耦合存在帶寬限制,所以該隔離器輸入分爲兩個差分信號路徑:一條爲高數據速率通道(稱做AC通道),另外一條爲低數據速率通道(稱做DC通道)。AC通道傳輸介於100 kbps和100 Mbps之間的信號,而DC-通道則涵蓋了從100 kbps到DC的範圍。高速信號由AC通道來處理,信號在通道中首先從單端模式轉換爲差分模式,而後被隔離層的電容-電阻網絡差分爲許多瞬態。後面的比較器再將這些瞬態轉換爲差分脈衝,從而設置和重置一個「或非」門觸發器。至關於原始輸入信號的觸發器輸出反饋至斷定邏輯(DCL)和輸出多路複用器。DCL包括一個看門狗定時器,該定時器用於測量信號轉換之間的持續時間。若是兩個連續轉換之間的持續時間超出定時窗口(如低頻信號的狀況下),DCL則指示輸出多路複用器從AC通道切換到DC通道。

因爲低頻信號要求大容量電容器,而這種電容器使片上集成變得很困難,所以DC通道的輸入要有脈寬調製器(PWM)。該調製器利用一個內部振盪器(OSC)的高頻載波對低頻輸入信號進行調製。在AC通道中對調製後信號的處理過程與高頻信號相同。然而,在向輸出多路複用器提交該信號之前,需經過一個最終低通濾波器(LPF)濾除高頻PWM載波,以恢復原始、低頻輸入信號。

相比其餘隔離器技術,電容隔離器的一個主要優勢是其DC通道在上電和信號丟失(LOS)事件期間隔離器輸出端擁有正確的輸入極性。缺乏這些特性的其餘隔離器技術一般會在上電期間出現輸出突波,或者在信號丟失之前一直保持在最後一個輸入極性。

電容隔離的另一個優勢是每一個電容123毫微微法拉(123×10-15F)的超低容量,從而容許極高的數據速率傳輸並實現多通道隔離器的微電容幾何尺寸。

隔離器電流消耗高度依賴於內部結構。相比雙通道隔離器,電感型隔離器彷佛具備最低的DC電源電流。這是由於該器件只包含2條信號通道。而電容隔離器包含4條通道:2條AC通道和2條DC通道。所以,其DC的電流消耗更高,並且其可靠性也更高,由於在輸入信號丟失的狀況下其可確保正確的輸出極性。

以上介紹了三種經常使用的電氣隔離技術,三種技術的典型器件對好比表7-4所示。

7-4 三種電氣隔離期間參數對比image

模擬電路的隔離比較複雜,要考慮模擬信號的精度、線性度、頻率響應、噪聲響應等,特別要考慮系統對傳輸通道的精度要求,對精度要求越高,其通道的成本也可能越高。模擬電路的隔離主要採用變壓器、互感器、直流電壓隔離器、線性隔離放大器等隔離方法。

對於高頻交流模擬信號,變壓器是最多見的選擇,然而對直流信號卻沒法使用,數字信號中經常使用的光耦隔離因爲線性度較差沒法直接用於模擬信號的隔離。

1.光電隔離

在數字信號的隔離中光耦器件的接收端處於開關狀態,因爲光耦的傳輸特性,普通的光耦具備較大的非線性,若是直接用來傳輸模擬量,其線性度沒法知足系統的性能要求。所以使用光耦器件來進行模擬信號的隔離通常引入差分反饋電路來進行補償,使光耦器件的非線性獲得改善,所以能夠使用普通的光耦經過外部電路的配合,構成差分反饋電路從而達到使用非線性光耦實現模擬信號線性隔離的目的,另外一種就是選用專門針對模擬信號隔離的線性光耦。

線性光耦並非說自己是線性的關係,它的隔離原理與普通光耦沒有差異,只是將普通光耦的單發單收模式稍加改變,增長一個用於反饋的光接收電路用於反饋。這樣,雖然兩個光接收電路都是非線性的,但兩個光接收電路的非線性特性相同,這樣,就能夠經過反饋通路的非線性來抵消直統統路的非線性,從而達到實現線性隔離的目的。市場上的線性光耦有幾種可選擇的芯片,如Agilent公司的HCNR200/201,TI子公司TOAS的TIL300,CLARE的LOC111等。這裏以HCNR200/201爲例介紹線性光耦的工做原理。

HCNR200/201是一種高線性度模擬光電耦合器,主要應用在低成本的模擬信號隔離、工業過程控制、電子反饋迴路、監測電動機電源電壓、醫療等領域。其內部結構圖如圖7-19所示,它由一個AlGaAs製做成的高性能發光二極管和兩個結構相同的光電二極管組成。其中一個光電二極管(PD1)在隔離電路的輸入部分,另外一個光電二極管(PD2)構成隔離電路的輸出部分。因爲光耦的封裝,使每個光電二極管可從LED上接收大體相同數量的光線。

clip_image045

圖7-19 HCNR2001201內部結構圖

其中一、2引腳做爲隔離信號的輸入端,三、4引腳用於反饋,五、6引腳用於輸出。一、2引腳之間的電流記做IF,三、4引腳之間和五、6引腳之間的電流分別記做IPD1IPD2。輸入信號通過電壓-電流轉化,電壓的變化體如今電流IF上,IPD1IPD2基本與IF成線性關係,線性係數分別記爲K1和K2,K1與K2通常很小(HCNR200是0.50%),而且隨溫度變化較大(HCNR200的變化範圍在0.25%~0.75%之間),但芯片的設計使得K1和K2相等。後面能夠看到,在合理的外圍電路設計中,真正影響輸出/輸入比值的是兩者的比值K3,線性光耦正是利用這種特性才能達到滿意的線性度。

如圖7-20所示,運用HCNR200/201光耦實現了一個簡單的隔離放大電路。該電路由HCNR200/201高精度線性光耦和幾個電容、電阻元器件組成。下面結合圖對這個電路進行簡要的分析。

image

放大器與PD1組成的外部反饋電路可用來監控發光二極管(LED)發出的光,而且能夠補充流過LED的電流,起到對LED的調節做用。使得LED輸出的光信號更加穩定,當PD2接收到光信號後,能夠再經過另外一個運算放大器把接收到的電流信號轉化爲電壓信號。另外因爲光耦會產生一些高頻的噪聲,一般在R2處並聯電容,構成低通濾波器,具體電容的值由輸入頻率及噪聲頻率肯定。

首先單獨來分析此電路中的前級運放如圖7-21所示,設運放輸出端的電壓爲Vi,輸出端電壓爲Vo,則在運放不飽和的狀況下有:

image

Voo爲運放輸入差模爲0時的輸出電壓,運放增益爲G,通常狀況下比較大。

image

圖7-21 前級運放電路分析

根據運放的虛斷原理,忽略負端的輸入電流,能夠認爲經過R1的電流與PD1相等,則根據R1的歐姆定律可得:

image經過R3兩端的電流IF爲:

image

其中image爲光耦2腳電壓,考慮到LED導通時電壓降基本不變,所以這裏能夠做爲常數對待,將兩個表達式代入光耦PD1的線性係數表達式中可得:

image

對上式進行變形可獲得:

image

將上式再次代入到電流IF的表達式中可得:

image

考慮到G特別大,近似可得:

image

所以能夠獲得輸出電壓與輸入電壓的關係以下:

image

K1K2通常相差很小(HCNR200是0.50%)因此就能夠近似獲得:

image

因而可知,輸出電壓與輸入電壓顯線性關係,經過兩個線性度很是近似的光電二極管,其中一個構成反饋的形式,來彌補光電二極管線性度差的缺點。以上的推導都是假定全部的電路都工做在線性範圍內,經過合理的選型能夠使設計的隔離電路具備很是好的線性度。

HCNR200/201能夠用於隔離模擬信號,具備良好的穩定性、線性度、頻帶寬和低成本等特性。HCNR200/201具備很是靈活的特性,可設計相應的應用電路,可以在許多不一樣的模式下進行操做,包括:單極/雙極、AC/DC和反向/正向。HCNR200/201很好地解決了許多模擬隔離問題。

HCNR200/201產品特色有非線性度高,數值爲0.01%;HCNR200傳遞增益(IPD2/IPD1K3)爲±15%,HCNR201的傳遞增益爲±5%;增益溫度係數爲-65ppm/℃;帶寬>1MHz;封裝形式分爲8引腳DIP和貼片兩種,容許靈活的電路設計。

2.基於電磁耦合技術的隔離放大器

AD202/AD204是一種變壓器耦合、微型封裝的精密隔離放大器。它經過片內變壓器耦合,對信號的輸入和輸出進行電氣隔離。片內的直流電壓變換電路爲輸入級、外部傳感器和信號處理電路提供±7.5V/2mA的隔離電源,從而優化了外圍電路的設計,提升了芯片的性價比。

AD202和AD204的內部結構基本相同,僅是某些電氣參數和供電方式略有不一樣。AD202是由+15V直流電源直接供電,AD204是由外部時鐘源供電。AD202/AD204具備精度高、功耗低、共模性能好、體積小和價格低等特色。所以該芯片被普遍應用於多通道數據採集系統、電流短路測量、電動機控制、信號的處理與隔離及低漂移輸入放大器等方面。

AD202/AD204的功能框圖如圖7-22所示。由圖可見,該芯片由放大器、調製器、解調器、整流和濾波、電源變換器等組成。工做時,+15V電源連到電源輸入引腳31,使片內(AD202)振盪器工做,從而產生頻率爲25kHz的載波信號,經過變壓器耦合,經整流和濾波,在隔離輸出部分造成電流2mA的±7.5V隔離電壓。該電壓除供給片內電源外,還可做爲外圍電路(如傳感器、浮地信號調節、前置放大器)的電源。AD204電源是從33引腳用輸入時鐘提供。在輸入電路中,片內獨立放大器可以做爲AD202/AD204輸入信號的緩衝或放大。放大後的信號經調製器調製後能把該信號變換成載波信號,經變壓器送入同步解調器,以至在輸出端重現輸入信號。因爲解調信號要通過三階濾波器濾波,從而使得輸出信號中的噪聲和紋波達到最小,爲後級應用電路提供良好的激勵源。

image

AD202/AD204能夠很靈活地應用於各類模擬信號的隔離場合,圖7-23給出了一種將4~20mA電流信號變換爲隔離的0~10V輸出電壓的典型應用電路。4~20mA輸入電流經過250W的電阻加到AD202或AD204片內輸入放大器的同相端後,在隔離放大器的輸出端便能獲得與電流成比例的電壓1~5V。爲了實現電平移位,必須在隔離放大器輸出低端LO加-1V參考電壓,以使比例輸出電壓爲0~5V,該電壓經外接同相比例放大器(741)放大後,才能得到0~10V輸出電壓,從而達到變換和隔離的目的。

ADI的AD202,可以在直流到幾幹赫茲的頻率內提供0.025%的線性度,但這種隔離器件內部先進行電壓-頻率轉換,對產生的交流信號進行變壓器隔離,而後進行頻率-電壓轉換獲得隔離效果。集成的隔離放大器內部電路複雜、體積大、成本高,不適合大規模應用。

clip_image073

圖7-23 AD202/204應用電路

7.4.5 嵌入式系統的電氣隔離設計

許多硬件設計任務主要圍繞如下方面展開:數/模轉換器(DAC)、模/數轉換器(ADC)、輸入和輸出信號調理、輸入/輸出模塊的電氣連線、控制器之間及模塊之間的隔離問題。各類傳感器產生的數字信號都傳送到一箇中央控制器,進行處理和分析。爲了保證用戶接口端電壓的安全性,同時防止瞬態尖峯的傳輸,須要實現電流隔離。對於傳感器信號隔離,傳統的模擬隔離方案(如隔離放大器AD202)成本過高,能夠採用數字隔離方案——AMP→ADC→Digital Isolate→MCU下降成本。

數字隔離器用來將系統現場的ADC、DAC和信號調理電路與數字端的微處理器隔離開來。其中,須要隔離型DC-DC變換器來實現微處理器的信號線和電源線與ADC/DAC的信號和電源的相互隔離。隔離器件可選用ADI公司的iCoupler產品或TI公司的IO72xx數字隔離器。在知足應用須要的前提下,能夠選用ADI公司集成3750V電壓隔離的ADC(AD7400)來減輕設計負擔。

在徹底隔離的系統中,從系統端向現場端提供隔離的電源是另外一個要面對的挑戰,而在這方面也涌現出了新的解決方案。傳統上,將電源從隔離的一端傳遞到另外一端所用的技術包括使用單獨的、尺寸較大的、昂貴的DC-DC變換器,或者設計及接口均較困難的分立器件。目前,一種更好的方法是採用完整的、所有集成化的隔離解決方案。這種方案能夠經過微變壓器實現跨越隔離點的信號和電源傳輸,其供電能力達50MW。例如isoPower系列產品ADuM524x能夠提供高達2500V的信號和電源隔離度,不只避免了採用分立的隔離電源,並且下降了隔離系統的總成本,減少了電路板面積,縮短了設計時間。

7.5 嵌入式系統接口的保護

7.5.1 嵌入式系統接口的電源保護

1.過壓與欠壓保護

近年來,隨着芯片製造工藝的進步,許多新型集成電路的工做電壓愈來愈低,芯片承受過電壓的能力也隨之降低,嵌入式系統也朝着低電壓方向發展,這就使得在嵌入式系統應用中的過壓保護更加劇要。

過電壓保護簡稱OVP(Over Voltage Protection),過壓保護電路根據具體應用的不一樣在設計上也有很大差異。最簡單的過壓保護電路能夠是一個簡單的穩壓二極管,或經過比較器等電路控制MOSFET或繼電器控制電路的通斷等。

2.防掉電保護

在嵌入式應用中,嵌入式系統若是意外掉電,則可能致使數據的完整性或者控制狀態不肯定,系統運行中產生的一些數據也可能所以而丟失得不到保存,所以就須要加入防掉電保護,在系統檢測到掉電時可以將數據完整儲存到當前系統中,同時對於一些重要的控制系統還須要在掉電前調整到一個相對安全的狀態,這就對系統的防掉電保護提出了更高的要求。

系統防掉電設計的目的是:採用一種機制,使得系統在乎外失去供電的狀況下,能夠保證系統運行狀態的肯定性及記錄數據的完整性;當系統供電恢復後,現場數據能夠及時恢復,避免應用系統產生混亂。咱們知道,在嵌入式系統設計與開發中愈來愈多地應用嵌入式操做系統。因爲操做系統的引入,數據的讀寫每每是經過文件的方式完成,而不是直接對存儲單元地址操做。用文件讀寫方式操做數據,在程序的運行過程當中每每將數據暫存在易失性的存儲空間,如SDRAM,一旦系統意外失電,這些數據每每被丟失。所以,當系統意外失電時必須採起必定的措施進行系統的掉電保護,以免系統產生混亂。總的說來,防掉電程序的主要思路就是:產生掉電信號,捕捉掉電信號,處理掉電信號和數據以及恢復現場狀態。

爲了在忽然掉電時可以保持數據存儲器(RAM)的數據,保證嵌入式系統穩定、可靠地工做,保證數據信息處理的安全,雖然通常嵌入式系統的主電源裏都有大容量濾波電容器,當掉電時,嵌入式微處理器靠儲存在電容器裏的能量,通常能維持工做半個週期(10ms)左右。爲此,要求一旦市電發生瞬間斷電時,必需要有一種電源能在小於10ms的時間內從新送電,確保單片機系統正常運行,這一任務就由UPS來完成。電源系統瞬時掉電所產生的干擾會形成微處理器的計算錯誤和數據丟失,有了UPS能夠使單片機系統連續可靠地工做。

UPS的中文意思爲「不間斷電源」,是英語「Uninterruptible Power Supply」的縮寫,它能夠保障計算機系統在停電以後繼續工做一段時間以使用戶可以緊急存盤,使用戶不致因停電而影響工做或丟失數據。UPS主要起到兩個做用:一是應急使用,防止忽然斷電而影響正常工做,給計算機形成損害;二是消除市電上的電涌、瞬間高電壓、瞬間低電壓、電線噪聲和頻率偏移等「電源污染」,改善電源質量,爲計算機系統提供高質量的電源。

從基本應用原理上講,UPS是一種含有儲能裝置,以逆變器爲主要元件,穩壓穩頻輸出的電源保護設備。主要由整流器、蓄電池、逆變器和靜態開關等幾部分組成。UPS電源按其工做原理可分爲後備式、在線式以及在線互動式三種。下面簡單說一下UPS的工做原理。

後備式UPS:平時處於蓄電池充電狀態,在停電時逆變器緊急切換到工做狀態,將電池提供的直流電轉變爲穩定的交流電輸出,所以後備式UPS也被稱爲離線式UPS。後備式UPS電源的優勢是:運行效率高、噪聲低、價格相對便宜,主要適用於市電波動不大,對供電質量要求不高的場合,比較適合家庭使用。然而這種UPS存在一個切換時間問題,所以不適合用在供電不能中斷的關鍵性場所。不過實際上這個切換時間很短,通常介於2~10ms,而計算機自己的交換式電源供應器在斷電時應可維持10ms左右,因此我的計算機系統通常不會由於這個切換時間而出現問題。後備式UPS通常只能持續供電幾分鐘到幾十分鐘,主要是讓用戶有時間備份數據,並儘快結束手頭工做,其價格也較低。對不太關鍵的計算機應用,好比我的家庭用戶,就可配小功率的後備式UPS。

經過理論和實踐證實,對於5V供電的單片機當供電電壓由5V降低到4~5V時單片機一般均能正常運行,但電壓再往下跌落時,單片機就不能繼續正常運行。在通常狀況下CPU、CMOS、TTL電路將因電源電壓跌落而首先不能正常運行,RAM在電壓跌落到比較低時尚能工做。由於單片機使用的主電源均有大容量電容,因此在主電源失電時,若是按放電曲線在下跌到單片機能正常運行工做的最低電壓以前,把後備電源接上便能保持單片機正常運行。

3.瞬態保護

在實際工程使用中,使用了上述數字隔離方案的系統,可靠性有了極大的提升,能消除噪聲並能防止電流在兩通訊端之間流動,防止瞬態尖峯在系統內部的破壞性傳播。可是儘管數字隔離器件之內的電路系統沒有損壞,但是接口電路在有強烈的浪涌能量出現時,甚至能夠看到收發器爆裂、線路板焦糊的現象,雖然不至於影響整個系統的安全性,但也會形成極大的不便。

出現該現象的緣由:雖然隔離「切斷」了由電路路徑造成的環路,噪聲電壓只出如今隔離層上而非接收機或其餘敏感組件上,可是接口電路必需要通過強烈能量的考驗。經常使用的接地措施只對低頻率的共模干擾有保護做用,而對於頻率很高的瞬態干擾就無能爲力了,由於引線電感的做用對高頻瞬態干擾來說,接地線實際等同於開路。這樣的瞬態干擾可能會有成百上千伏的電壓,但持續時間很短,在切換大功率感性負載(電動機、變壓器、繼電器),閃電等過程當中都會產生幅度很高的瞬態干擾,若是不加適當防禦就會損壞接口。

對於這種瞬態干擾,能夠採起瞬態抑制方法加以防禦。實際應用中採用兩級防禦措施:使用3個90V陶瓷放電管(3RM090L-8)(可承受10/700μs,10/700μs爲通訊線路中感應出的雷擊電壓波形,表示從零值上升至峯值的時間爲10ms,降低至峯值一半的時間爲700μs,8000V雷擊測試)進行共模防禦、差模防禦,此時過電壓被大大削弱到500V左右;再通過PTC(能夠採用100~200mA、耐壓250V以上的自恢復熔斷器K250-120U)或10W左右的電阻限流。TVS瞬態抑制二極管的選擇能夠根據芯片的工做電壓與耐壓決定,通常略高於芯片最高工做電壓,RS-485芯片能夠選擇P6KE15CA,RS-232芯片能夠選擇P6KE18CA。

7.5.2 靜電保護

在電子通訊設備的設計、試驗、生產、調試、運行或維修過程當中,因爲靜電放電(ESD),可能干擾設備的工做、引發設備電子元器件的損壞,致使設備故障甚至釀成嚴重事故,由此形成的損失是十分驚人的。所以在嵌入式產品的設計中須要考慮靜電保護。

靜電保護措施能夠總結爲:靜電屏蔽,濾波去耦,絕緣隔離,接地泄放,良好搭接,瞬態抑制。

以上措施須要在進行PCB設計時充分考慮,主要措施有:

(1)PCB上應儘可能縮短引線長度;

(2)PCB上全部的迴路面積都應儘量小,由於它們對瞬態ESD電流產生的磁場很是敏感,這不只包括電源與地之間的迴路,也包括信號與地之間的迴路;

(3)安裝在印製板上的具備金屬外殼的元器件如復位按鈕、撥碼開關、晶振,其金屬外殼必定要接地;

(4)對於雙層板,在安全條件下,電源線應儘量靠近地線,DIP封裝的集成電路,+5V走線和地線走線應平行佈於兩排引腳之間;

(5)PCB上未用部分應用地平面填滿;

(6)靜電屏蔽:對干擾源、高頻電路和靜電敏感電路,應實現局部屏蔽或整板屏蔽,靜電屏蔽的兩個基本要點是:完善的屏蔽和良好的接地。

(7)濾波去耦:試驗證實,靜電放電引發的干擾脈衝是一個按指數規律衰減的受調製的正弦波,含有豐富的高頻份量,所以,應對電源進線和信號進線用濾波器濾波,在電源和地之間用高頻電容器去耦。

① 電源輸入端可用LC網絡(L(100μH),C1(100μF),C2(0.1μF))濾波;

② 對射頻組件的向外引線應用穿心電容器濾波或採用帶濾波器的插頭;

③ 對於雙層板,如印製板上的電源引線過長,每隔8cm應在電源與地之間接入一個去耦電容。

④ 集成電路的電源和地之間應加去耦電容(0.01μf~0.1μF),去耦電容要並接在同一芯片的電源端和接地端且緊靠被保護的芯片安裝。對於電源和地有多個引腳的大規模集成電路,可設多個去耦電容。對於動態RAM,去耦電容的容量應較大(0.1μF)。

⑤ 大規模集成電路,尤爲是EEPROM、FLASH MEMORY、EPLD、FPGA等類型芯片,每一個去耦電容應並接一充放電電容。小規模集成電路,每10片也要加接一個充放電電容。該電容以10μF的鉭電容或聚碳酸酯電容爲宜。

7.6 嵌入式系統接口的控制方式

7.6.1 程序輪詢方式

在這種方式下,系統微控制器須要不停地查詢外設狀態,當外設準備就緒時纔可以進行數據輸入或者輸出,不然微控制器就要繼續等待循環查詢。

以一個按鍵控制一個燈的亮滅爲例,程序須要不停地查詢按鍵對應的I/O狀態來判斷按鍵是否按下,檢測到按下後翻轉燈對應的I/O狀態,實現控制信號的輸出。這種方式是最簡單、最基礎的通訊方式,其弊端也很是明顯。一是系統須要不停地查詢外設狀態,耗費了大量時間。二是當微控制器須要處理其餘任務時可能會錯過查詢,丟失數據,如按鍵數據,按鍵按下只有很短的時間,若是此時程序在執行延時或其餘任務時就會錯過按鍵的檢測。

7.6.2 中斷處理方式

在這種方式下,微控制器不須要被動等待或花費大量時間去查詢外設狀態,當外設數據交換準備就緒時會自動向微控制器發送中斷請求,微控制器若是響應此請求即可以暫停當前任務的運行,轉而執行與請求對應的中斷服務程序,完成後能夠繼續執行原先被中斷的程序。仍然以一個按鍵控制一個燈爲例,設置按鍵對應的I/O口觸發一個外部中斷,在外部中斷服務程序中改變燈的狀態,這就是中斷的處理方式。

中斷處理方式的優勢顯而易見,這種方式不但使微控制器省去了查詢外設和等待外設的時間,提升了工做效率,還知足了外設的實時性要求。此種方式須要爲每一個外設分配一箇中斷請求號和對應的中斷服務程序,須要說明的是STM32F103系列微控制器有着很是強大的中斷處理能力,UART、SPI、I2C、CAN等每一個外設均可以設置獨立的中斷請求,很是適合這種方式的應用。

7.6.3 直接存儲器存取DMA傳送方式

直接存儲器讀取DMA(Direct Memory Access)是PC上的一個概念,主要指的是並行的外設與內存之間一種快速的數據傳輸方式。在現代微控制器及其系統中,也把它擴展到串行外設等各類類型的外設接口上。DMA最顯著的特色是它不用軟件參與而是採用一個專門的控制器來控制內存與外設之間的數據傳輸,無須微控制器的參與,這就節省了CPU的資源來作其餘操做,此種方式特別適合於大數據量的數據傳輸,能夠極大提升微控制器的工做效率。

須要進行DMA數據傳輸時,能夠經過寄存器配置DMA數據傳輸的起始地址和目的地址,以及傳輸的數據格式等,DMA控制器會向系統申請總線的控制權,系統的微控制器若是容許,則將控制權交出,傳輸過程當中總線控制權由DMA控制器掌握。傳輸結束後,DMA控制器將總線控制權交還給系統微處理器。

因爲DMA這種優點,在進行大數據量的數據處理或者傳輸時應當首先考慮DMA方式,DMA傳輸自己也能夠觸發中斷,所以不少狀況下DMA又和中斷配合使用。STM32F103系列的DMA控制器有着很是強大的功能,具體能夠參見DMA控制器一節,這裏再也不贅述。

相關文章
相關標籤/搜索