<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 低功耗MSP430單片機在3V、5V混合系統(tǒng)中的邏輯接口技術

          低功耗MSP430單片機在3V、5V混合系統(tǒng)中的邏輯接口技術

          作者: 時間:2016-11-13 來源:網(wǎng)絡 收藏
          MSP430低功耗微處理器是TI公司推出的一種新型單片機。它具有16位精簡指令結構,內含12位快速ADC/Slope ADC,內含60K字節(jié)FLASH ROM,2K字節(jié)RAM,片內資源豐富,有ADC、PWM、若干TIME、串行口、WATCHDOG、比較器、模擬信號,有多種省電模式,功耗特別小,一顆電池可工作10年。開發(fā)簡單,仿真器價格低廉,不需昂貴的編程器。

          MSP430其特點有:1.8V~3.6V低電壓供電;高效16位RISC CPU可以確保任務的快速執(zhí)行,縮短了工作時間,大多數(shù)指令可以在一個時鐘周期里完成;6微秒的快速啟動時間可以延長待機時間并使啟動更加迅速,降低了電池的功耗。MSP430產品系列可以提供多種存儲器選擇,簡化了各類應用中MSP430的設計;ESD保護,抗干擾力特強。與其它微控制器相比,帶Flash的微控制器可以將功耗降低為原來1/5,既縮小了線路板空間又降低了系統(tǒng)成本。

          本文引用地址:http://www.ex-cimer.com/article/201611/316317.htm

          MSP430具有如此多的優(yōu)點,可以預測在今后會有廣泛的應用。但是目前仍有許多5V電池的邏輯器件和數(shù)字器件在使用,因此在許多設計中3V(含3.3V)邏輯系統(tǒng)和5V邏輯系統(tǒng)共存,而且不同的電源電壓在同一電路板中混用。隨著更低電壓標準的引進,不同電源電壓邏輯器件間的接口問題會在很長一段時間內存在。本文討論MSP430與單片機中最常用的LSTTL電路、CMOS電路及計算機HCMOS電路的3V和5V系統(tǒng)中邏輯器件間的接口方法。理解這些方法可避免不同電壓的邏輯器件接口時出現(xiàn)問題,保證所設計的電路數(shù)據(jù)傳輸?shù)目煽啃浴?/p>

          1、 邏輯電平不同,接口時出現(xiàn)的問題

          在混合電壓系統(tǒng)中,不同電源電壓的邏輯器件相互接口時會存在三個主要問題:第一是加到輸入和輸出引腳上的最大允許電壓的限制問題;第二是兩個電源間電流的互串問題;第三是必須滿足的輸入轉換門限電平問題。器件對加到輸入腳或輸出腳的電壓通常是有限制的。這些引腳有二極管或分離元件接到Vcc。如果接入的電壓過高,電流將會通過二極管或分離元件流向電源。例如3V器件的輸入端接上5V信號,則5V電源將會向3V電源充電,持續(xù)的電流將會損壞二極管和電路元件。在等待或掉電方式時,3V電源降落到0V,大電流將流到地,這使總線上的高電平電壓被下拉到地。這些情況將引起數(shù)據(jù)丟失和元件損壞。必須注意的:不管是在3V的工作狀態(tài)或是0V的等狀態(tài)都不允許電流直接流向Vcc。另外用5V的器件來驅動3V的器件有很多不同情況,各種電路間的轉換電平也存在不同情況。驅動器必須滿足接收器的輸入轉換電平,并要有足夠的容限保證不損壞電路元件。

          2、 可用5V容限輸入的3V邏輯器件

          3V的邏輯器件可以有5V輸入容限的器件有LVC、LVT、ALVT、LCX、LVX、LPT和FCT3等系列。此外,還有不帶總線保持輸入的飛利浦ALVC也是5V容限。

          2.1 ESD保護電路

          3V器件可以有5V的輸入容限。一般數(shù)字電路的輸入端都有一個靜電放電(ESD)保護電路。如圖1(a)所示,傳統(tǒng)的CMOS電路通過接地的二極管D1、D2對負向高電壓限幅實現(xiàn)保護,正向高是則由二極管D3箝位。這種電路為了防止電流流向Vcc電源,最大輸入電壓被限制在Vcc+0.5V。對Vcc為3V的器件來說,當輸入端直接與大多數(shù)5V器件輸出端接口時允許的輸入電壓太低大多數(shù)3V系統(tǒng)加到輸入端的電壓可達3.6V以上。有些3V系統(tǒng)可以使用兩個MOS場效應管或晶體管T1、T2代替二極管D1、D2,如圖1(b)所示。T1、T2的作用相當于快速劑納二極管對高電壓限幅。由于去掉了接到Vcc的二極管D3,因此最大輸入電壓不受Vcc的限制。典型情況下,這種電路的擊穿電壓在7~10V之間,因此可以適合任何5V系統(tǒng)的輸入電壓。

          由上述分析可知,改進后具有ESD保護電路的3V系統(tǒng)的輸入端可以與5V系統(tǒng)的輸出端接口。

          2.2總線保護電路

          總線保護電路就是有一個MOS場效應管用作上拉或下拉器件,在輸入端浮空(高阻)的情況下保護輸入端處于最后有效的邏輯電平。圖2(a)中的電路為一LVC器件總線保護電路,采取改進措施而使其輸入端具有5V的容限。其基本原理如下:P溝道MOS場效應管具有一個內在的寄生二極管,它連接在漏極和襯底之間,通常源極與襯底是連在一起的,這就限制了輸入電壓不能高于Vcc+0.5V?,F(xiàn)在的措施是用常閉接點S1將源極與襯底相連,當輸入端電壓比Vcc高0.5V時,比較器使S2閉合,S1斷開,輸入端電流不會通過二極管流向Vcc而使輸入具有5V的容限。圖2(b)是LVT和LAVT器件總線保持電路的例子。這種電路用了一個串聯(lián)的肖特基二極管D,消除了從輸入到Vcc的電流通路,從而可以承受5V輸入電壓。對于3V的總體保持LVC、LVT和ALVT系列器件可以承受5V的輸入電壓。但對于3V的ALVC、VCX等系列器件則不能,它們的輸入電壓被限制在Vcc+0.5V。

          圖3是用于3V CMOS器件輸出電路的簡化形式。當輸出端電壓高于Vcc+0.5V(二極管壓降)時,P溝道MOS場效應管的內部二極管會形成一條從輸出端到Vcc的電流通路。這種電路在與5V器件相接時需要加保護電路。

          圖4是一種帶保護電路的CMOS器件輸出電路。當輸出端電壓高于Vcc時,比較器使S1開路,S2閉合,電流通路消失。這樣在三態(tài)方式時就能與5V器件相接。

          2.3 biCMOS輸出電路

          LVT和ALVT器件的biCMOS輸出電路如圖5所示。它用雙極NPN晶體管和CMOS場效應管來獲得輸出電壓擺幅達到電源電壓的要求。電流不會通過NPN雙極晶體管回流到Vcc,但在P溝道MOS場效應管中的內在二極管仍然會形成一條從輸出端到Vcc的電流通路(為了簡化,圖5中沒有畫出該二極管)。因此這種電路不能接高于Vcc的電壓。對圖5電路所加的保護電路如圖6所示。增加了反向偏置的肖特基二極管,用以防止電流從輸出端流到Vcc。圖6中的輸出端與5V驅動器共用一條總線。在三態(tài)方式時,電路可以得到保護。當出現(xiàn)總線爭奪即兩個驅動器都以高電平驅動總線時,比較器將P溝道MOS場效應管斷開。當3V器件處于等待方式而3V電源為0時,比較器和肖特基二極管可以起保護作用。

          3、 接口電路的有關參數(shù)

          了解了3V器件為什么具有5V容限后,在MSP430與LSTTL、HCMOS、CMOS電路實現(xiàn)相互聯(lián)接之間,要先了解各種電路和器件的參數(shù),如表1所示。

          表1——各種電路和器件參數(shù)

          參數(shù)電路

          電源電壓范圍

          輸入電平

          輸出電平

          V(V)

          VIH(V)

          VIL(V)

          VOH(V)

          VOL(V)

          LSTTL

          4.5~5.5

          2

          0.8

          2.7

          0.4

          CMOS

          3~18(取Vcc=5)

          3.5

          1.5

          4.5

          0.5

          HCMOS

          2~6

          3.5

          1

          5.2

          0.4

          MSP430

          1.83.6

          0.8Vcc

          0.2Vcc

          Vcc-0.6

          0.6

          ALVT系列

          3.3或2.5

          1.7

          0.8

          2.0

          0.2~0.55

          LVC系列

          1.65~5.5

          0.7Vcc

          0.3Vcc

          2.7~5.5

          0.1~0.55

          4、 接口實現(xiàn)

          不同電源電壓的邏輯器件相互接口時存在的主要問題是邏輯信號電平的配合問題,就是前級電路輸出的電平要滿足后級電路對輸入電平的要求。此外還有負載電流的配合問題,即前級電路的輸出電流應大于后級電路對輸入電流的要求,同時不應造成器件損壞。還有就是在高速或有嚴重干擾的場合,必須考慮接口對系統(tǒng)和抗干擾性能帶來的不良影響。這里主要討論邏輯信號電平的配合問題。因為對于負載電流配合問題只是一個帶負載能力。而抗干擾問題則用本文中提到的方法都可以忽略。

          4.1 LSTTL-MSP430

          如表1所示,LSTTL電路的高電平輸出電壓VOH約為2.7V,MSP430的高電平輸入約為0.8VCC,LSTTL電路的低電平輸出電壓VOL約為0.4V,MSP430的低電平輸入電壓VIL的0.2VCC。如果0.8Vcc小于2.7V且0.2Vcc大于0.4V時,不存在邏輯信號電平的配合問題,可以直接連接。如果0.8Vcc大于2.7V或0.2Vcc小于0.4V時,就出現(xiàn)了邏輯信號電平的配合問題。為了增大LSTTL電路的輸出高電平,利用TI公司的LVC系列。從表1中可以看到LVC系列產品的高電平輸出電壓和低電平輸出電壓都符合要求。

          4.2 CMOS-MSP430

          在接口時使CMOS和MSP430使用同一電源,例如3V電源可以直接驅動。如果實際情況不允許,則根據(jù)1表,通過ALVT系列的器件就可以實現(xiàn)CMOS驅動MSP430。

          4.3 HCMOS-MSP430

          同上述CMOS分析一樣,同樣選用ALVT來驅動MSP430。

          4.4 MSP430驅動LSTTL、CMOS和HCMOS

          MSP430的輸出引腳(P0.x、P1.x、P2.x、P3.x、P4.x、Oy)都有規(guī)定的外接電阻。外接電阻的大小取決于電源電壓Vcc的大小。如果輸出電流比規(guī)定的要大,就需要輸出驅動器。圖7所示為限制MSP430輸出電流的電阻最小值。設計以Vcc=3V,通過這些器件可以驅動需要大電流的LSTTL、HCMOS和CMOS電路接口。

          5、 兩種電平移位器件

          5.1雙電源電平移位器74LVC4245

          74LC4245是一種雙電源的電平移位器,如圖8所示。5V端用5V電源作為Vcc(A),而3V端則用3V作為Vcc(B)。它的功能類似于常用的收發(fā)器74LVC245,所不同的是用兩個電源而不是一個電源。74LVS4245的電平移位在其內部進行。雙電源能保證兩邊端口的輸出擺幅都能達到滿電源幅值,并且有很好的噪聲抑制性能。因此該器件用來驅動5V CMOS器件是很理想的。缺點是增加了功耗。

          5.2 74LVC07

          較為簡單的一種電平移位器件是74LVC07。它使用一個漏極開路緩沖器去驅動5V CMOS器件,如圖9所示。它的輸出端出一個上拉電阻R接到5V電源。

          低功耗MSP430與LSTTL、HCMOS和CMOS器件共存于一個系統(tǒng)中,這種情況將在相當長的時間。在設計這種系統(tǒng)時要分析其中邏輯器件的接口問題,保證所設計的電路在不同電壓器件間數(shù)據(jù)傳輸?shù)目煽啃浴?/p>



          評論


          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();