摘 要: 詳細(xì)闡述了24位Δ-Σ型模擬/數(shù)字轉(zhuǎn)換器ADS1210/1211的結(jié)構(gòu),、原理及特點(diǎn),,并以數(shù)字電壓表為例介紹了它的應(yīng)用,給出了相關(guān)電路圖和主程序框圖,。
關(guān)鍵詞: A/D轉(zhuǎn)換器 校準(zhǔn) 加速模式 采樣頻率 轉(zhuǎn)換速度 抽取率
1 ADS1210/1211概述
ADS1210/1211是高精度,、寬動(dòng)態(tài)特性的Δ-Σ型模擬/數(shù)字轉(zhuǎn)換器,。它的差動(dòng)輸入端可以直接與傳感器或微小的電壓信號(hào)相連,。其內(nèi)部的Δ-Σ結(jié)構(gòu)可確保它的寬動(dòng)態(tài)特性和24位的分辨率,。由于采用了低噪聲的輸入放大器,可以在轉(zhuǎn)換速度為10Hz時(shí)獲得23位的有效分辨率,;借助于其內(nèi)部獨(dú)特的調(diào)制器加速操作模式,,在轉(zhuǎn)換速度為1kHz時(shí)仍可達(dá)到20位的有效分辨率。該轉(zhuǎn)換器動(dòng)態(tài)特性的大大提高主要依賴(lài)于其前級(jí)的低噪聲程控放大器,,其放大倍數(shù)可從1到16進(jìn)行設(shè)定,,以2倍步長(zhǎng)增加,。該A/D轉(zhuǎn)換器都有一個(gè)靈活的同步串行接口,,它與SPI兼容并且可以提供雙線(xiàn)控制模式。該A/D轉(zhuǎn)換器為單一+5V供電,,有內(nèi)/外參考電壓和內(nèi)部自校準(zhǔn)系統(tǒng),。ADS1210/1211主要用于工業(yè)過(guò)程控制、儀器儀表,、色譜分析,、靈巧傳感器、便攜式儀表,、稱(chēng)重儀器,、壓力傳感器,、高分辨率測(cè)量場(chǎng)合。
2 ADS1210引腳功能
ADS1210是單通道的A/D轉(zhuǎn)換器,,ADS1211多了一個(gè)4通道多路開(kāi)關(guān),。ADS1210的封裝形式有18腳雙列直插式和18線(xiàn)貼片式。引腳排列如圖1所示,。ADS1210各引腳的功能如表1所示,。
3 ADS1210/1211的結(jié)構(gòu)及工作原理
ADS1210/1211由程控增益放大器、二階Δ-Σ調(diào)制器,、程控?cái)?shù)字濾波器和微處理器組成,。微處理器中有指令寄存器、命令寄存器,、校準(zhǔn)寄存器,、串行接口、時(shí)鐘產(chǎn)生電路和2.5V的內(nèi)部參考電壓電路,。此外,,ADS1211還有一個(gè)4路的多路開(kāi)關(guān)。ADS1210/1211的結(jié)構(gòu)如圖2所示,。
為了提高系統(tǒng)的動(dòng)態(tài)特性,,ADS1210/1211采用了一種獨(dú)特的電容切換結(jié)構(gòu)來(lái)提高輸入電容的采樣速度,從而可以使系統(tǒng)工作在加速模式(Turbo Mode)下,。通常情況下,,在系統(tǒng)時(shí)鐘為10MHz時(shí)對(duì)應(yīng)的采樣速度為19.5kHz,利用它可將調(diào)制器的采樣速度以2,、4,、8,、16倍的速度增加,,將采樣速度提高到39kHz、78kHz,、156kHz或312kHz,。隨著采樣速度(頻率)的增加,在轉(zhuǎn)換速度不變的情況下,,A/D轉(zhuǎn)換器的有效分辨率會(huì)相應(yīng)地增加,。采樣速度的每一次提升,在轉(zhuǎn)換速度不變的情況下都會(huì)使系統(tǒng)的動(dòng)態(tài)性能大大提高,。有關(guān)加速因子(TMR),、轉(zhuǎn)換速度和有效分辨率三者之間的關(guān)系如表2所示。
ADS1210/1211的程控增益放大器(PGA)的增益設(shè)置為1,、2,、4,、8或16。從本質(zhì)上講,,它增加了系統(tǒng)的動(dòng)態(tài)范圍,,簡(jiǎn)化了與傳感器的接口。程控增益是通過(guò)輸入電容改變采樣次數(shù)來(lái)實(shí)現(xiàn)的,。例如,,采樣頻率為19.5kHz時(shí)PGA的增益為1;采樣頻率為312kHz時(shí)PGA的增益為16,。由于加速模式和PGA的增益都是通過(guò)改變采樣次數(shù)來(lái)實(shí)現(xiàn)的,,所以PGA的增益和加速因子(TMR)的乘積應(yīng)≤16,如表3所示,。
ADS1210/1211輸出數(shù)據(jù)的速度可以從幾Hz到高達(dá)15625kHz,,速度愈高,分辨率愈低,。改變ADS1210/1211的轉(zhuǎn)換速度不會(huì)改變輸入電容的采樣速度,,但會(huì)影響用于計(jì)算每次輸出結(jié)果的采樣數(shù)據(jù)的個(gè)數(shù)。
ADS1210/1211內(nèi)部還有一個(gè)完整的自校正系統(tǒng),,用于校正內(nèi)部偏差,、增益誤差及一些外部誤差。內(nèi)部校準(zhǔn)操作可在需要時(shí)進(jìn)行,,也可以自動(dòng)或連續(xù)地進(jìn)行校準(zhǔn),,但必須為ADS1210/1211提供適當(dāng)?shù)妮斎腚妷骸Ec此相對(duì)應(yīng)的校準(zhǔn)寄存器既可讀又可寫(xiě),,這一特性使得用戶(hù)可以在多種情況下——不同的轉(zhuǎn)換速度,、不同的TMR以及不同的PGA增益之間進(jìn)行切換而不必重新校準(zhǔn)。
ADS1210/1211的各種參數(shù)如增益,、加速因子,、模式選擇及寄存器數(shù)據(jù)都是經(jīng)過(guò)一個(gè)同步串行接口進(jìn)行讀/寫(xiě)的。該接口可工作在自供時(shí)鐘模式(主模式)和外供時(shí)鐘模式(從模式)下,。在主模式下,,串行時(shí)鐘的頻率(SCLK)為ADS1210/1211時(shí)鐘頻率XIN的1/2。在很多場(chǎng)合,,串行時(shí)鐘的頻率是一個(gè)需要考慮的重要的參數(shù),,因?yàn)樗鼪Q定了ADS1210/1211能夠采用的最大時(shí)鐘頻率,。在這里,,需要明確幾個(gè)概念:
fXIN是指從XIN引腳引入的時(shí)鐘信號(hào)的頻率。它可以是外接的晶振頻率,,也可以是與CMOS兼容的外部時(shí)鐘信號(hào)的頻率,。
fMOD是指ADS1210/1211中的調(diào)制器的工作頻率,。它由下式給出:
式中的Turbo Mode是指加速因子的值。
fSAMP是指ADS1210/1211中的輸入電容的工作頻率或轉(zhuǎn)速速度,。它由下式給出:
從式中不難看出,,fSAMP不只與Turbo Mode有關(guān),還與PGA增益有關(guān),。
fDATA是ADS1210/1211產(chǎn)生數(shù)字輸出量的頻率,,它的倒數(shù)為tDATA。顯然,,fDATA也可叫做轉(zhuǎn)換速度,。它由下式給出:
式中的抽取率(Decimation Ratio)是指用于計(jì)算數(shù)字量輸出而采納的調(diào)制器結(jié)果的個(gè)數(shù)。如抽取率為十中取一,,其含義就是將最近的調(diào)制器輸出的十個(gè)數(shù)據(jù)進(jìn)行計(jì)算(如取平均值),,計(jì)算結(jié)果就是本次A/D轉(zhuǎn)換的結(jié)果。這里的計(jì)算工作是由ADS1210/1211中的數(shù)字濾波器來(lái)完成的,。
4 ADS1210/1211的應(yīng)用
ADS1210/1211作為高精度,、高分辨率的A/D轉(zhuǎn)換器,它的應(yīng)用非常廣泛,。在這里,,我們以高精度的智能數(shù)字電壓表為例來(lái)介紹它的應(yīng)用。由于ADS1210/1211內(nèi)部具有自動(dòng)增益(PGA)電路,,它可以根據(jù)輸入信號(hào)的大小自動(dòng)調(diào)節(jié)增益,;再者,作為高精度,、高分辨率的A/D轉(zhuǎn)換器,,ADS1210/1211為我們提供了高精度、高分辨率的數(shù)字信號(hào)輸出,,從而實(shí)現(xiàn)了電壓的自動(dòng)測(cè)量,。
4.1 微處理器簡(jiǎn)介
ADS1210/1211之所以能實(shí)現(xiàn)其獨(dú)特的功能,與其內(nèi)部的微處理器是分不開(kāi)的,。該微處理器包括一個(gè)ALU和一個(gè)寄存器陣列,。它有兩種工作狀態(tài):上電復(fù)位狀態(tài)和轉(zhuǎn)換狀態(tài)。在上電復(fù)位狀態(tài),,微處理器將內(nèi)部所有的寄存器復(fù)位成缺省狀態(tài),,將調(diào)制器復(fù)位成穩(wěn)定狀態(tài),以850Hz的頻率進(jìn)行自校準(zhǔn),;然后就進(jìn)入轉(zhuǎn)換狀態(tài),,即正常操作模式。它的內(nèi)部有5個(gè)寄存器,如表4所示,。其中有兩個(gè)寄存器用于控制A/D轉(zhuǎn)換器的操作,,它們分別叫做指令寄存器(INSR)和命令寄存器(CMR)。輸出數(shù)據(jù)寄存器(DOR)用于存放最新的轉(zhuǎn)換結(jié)果,。補(bǔ)償及滿(mǎn)量程校準(zhǔn)寄存器(OCR和FCR)存放著用于對(duì)輸出結(jié)果進(jìn)行修正的數(shù)據(jù),,校準(zhǔn)之后,才能將數(shù)據(jù)送入數(shù)據(jù)寄存器(DOR),。這兩個(gè)寄存器中的數(shù)據(jù)可能是一次校準(zhǔn)過(guò)程后的結(jié)果,,也可能是通過(guò)串行口直接寫(xiě)入的數(shù)據(jù)。
下面,,我們就來(lái)介紹幾個(gè)主要的寄存器,。
4.1.1 指令寄存器(INSR)
外界與ADS1210/1211的通信是通過(guò)指令寄存器(INSR)來(lái)控制的。在正常操作模式下,,每一次的串行通信總是最先從寫(xiě)INSR開(kāi)始的,,寫(xiě)入的指令用于確定接下來(lái)的通信形式。注意:INSR只能寫(xiě)不能讀,。INSR是一個(gè)8位的寄存器,,它命令串行口從指定的位置讀/寫(xiě)“n”字節(jié)的數(shù)據(jù)/命令。其具體格式如下:
:讀/寫(xiě)選擇位,。若接下來(lái)出現(xiàn)的是寫(xiě)操作,,則該位應(yīng)為“0”;若為讀操作,,則為“1”,。
MB1 MB0:多字節(jié)選擇位。這兩位用來(lái)控制讀/寫(xiě)操作的字長(zhǎng),,有1,、2、3和4字節(jié)等四種字長(zhǎng)供選擇,。
A3~A0:地址位,。這4位用于指定讀/寫(xiě)開(kāi)始的寄存器位置。
每一次的串行通信都是從發(fā)送給INSR指令開(kāi)始的,,它規(guī)定了接下來(lái)通信的過(guò)程,,包括讀/寫(xiě)位、字節(jié)數(shù),、開(kāi)始地址等,。當(dāng)“n”字節(jié)傳送完畢,INSR的工作就完成了,。一個(gè)新的通信周期從發(fā)送一個(gè)新的INSR指令開(kāi)始,。
4.1.2 命令寄存器(CMR)
命令寄存器(CMR)用來(lái)控制ADS1210/1211的所有選項(xiàng)和操作模式,包括PGA的增益設(shè)置、Turbo Mode Rate的設(shè)置,、輸出數(shù)據(jù)的速度(抽取率)的設(shè)置等,。CMR是唯一的一個(gè)32位寄存器,,它和其余的寄存器一樣都是既可讀又可寫(xiě)的寄存器,。當(dāng)命令字的每一字節(jié)的最后一位寫(xiě)入命令寄存器且SCLK出現(xiàn)負(fù)跳變時(shí),新的操作命令就起作用了,。CMR格式如表5所示,。
BIAS:偏置電壓位。該位用于控制VBIAS的輸出狀態(tài),。BIAS=1,,VBIAS為激活狀態(tài),其值為1.33×REFIN,;BIAS=0,,VBIAS為關(guān)閉狀態(tài),沒(méi)有偏置電壓,。當(dāng)內(nèi)部參考電壓輸出端REFOUT接至REFIN時(shí),,VBIAS=3.3V(標(biāo)稱(chēng)值)。
REFO:參考電壓位,。該位用于控制內(nèi)部參考電壓的輸出狀態(tài),。REFO=1,內(nèi)部參考電壓為激活(開(kāi))狀態(tài),,其值為2.5V,;REFO=0,內(nèi)部參考電壓為關(guān)閉(高阻)狀態(tài),。
DF:數(shù)據(jù)格式位,。該位用于控制輸出數(shù)據(jù)的格式。DF=1,,輸出數(shù)據(jù)為偏移二進(jìn)制數(shù),;DF=0,輸出數(shù)據(jù)為二進(jìn)制補(bǔ)碼數(shù),。除最高位之外,,兩種格式的數(shù)值相同,且兩種格式的最高位正好相反,。該位只對(duì)輸出數(shù)據(jù)寄存器DOR有效,,對(duì)其它寄存器無(wú)效。
:?jiǎn)螛O性位,。該位用于控制輸出數(shù)據(jù)的極性,。
=0,輸出數(shù)據(jù)為雙極性;
=1,,輸出數(shù)據(jù)為單極性,,輸出結(jié)果限定為正值(包括0)。該位對(duì)ADS1210/1211的實(shí)際滿(mǎn)量程范圍,、數(shù)據(jù)格式等沒(méi)有任何影響,。在雙極性模式下,ADS1210/1211正常工作,;在單極性模式下,,只是將轉(zhuǎn)換的結(jié)果限定為正值,它只是控制著DOR中的數(shù)據(jù),,對(duì)內(nèi)部數(shù)據(jù)沒(méi)有影響,,對(duì)該位清零后,緊接著的轉(zhuǎn)換結(jié)果就為雙極性輸出,。
BD:字節(jié)順序位,。該位控制著讀入字節(jié)數(shù)據(jù)的順序。BD=0,,先讀最高字節(jié)(MSB),;BD=1,先讀最低字節(jié)(LSB),。在開(kāi)始進(jìn)行多字節(jié)讀操作時(shí),,若BD=0,則指令寄存器中的A3~A0為最高字節(jié)的地址,,接下來(lái)的字節(jié)將位于更高的地址中,;若BD=1,則指令寄存器中的A3~A0為最低字節(jié)的地址,,接下來(lái)的字節(jié)將位于更低的地址中,。BD位只對(duì)讀操作有效,對(duì)寫(xiě)操作無(wú)效,。
MSB:位順序控制位,。該位控制著讀入字節(jié)數(shù)據(jù)時(shí)位的讀順序。BD=0,,先讀最高位,;BD=1,先讀最低位,。與BD位一樣,,MSB只對(duì)讀操作有效,對(duì)寫(xiě)操作無(wú)效,。
SDL:串行數(shù)據(jù)線(xiàn)的選擇位,。該位用來(lái)指定ADS1210/1211的哪一個(gè)引腳為串行數(shù)據(jù)的輸出引腳,。SDL=0,指定SDIO為輸出引腳,;SDL=1,,指定SDOUT為輸出引腳。不難看出,,如果SDL=0,,則SDIO既作為輸入引腳又作為輸出引腳,這在時(shí)序中會(huì)有所體現(xiàn),。此時(shí),,SDOUT一直處于三態(tài)狀態(tài),。
:數(shù)據(jù)準(zhǔn)備就緒位,。該位為只讀位,它反映了
引腳的狀態(tài),。
=0,,數(shù)據(jù)準(zhǔn)備就緒;
=1,,數(shù)據(jù)沒(méi)有準(zhǔn)備好,。
:數(shù)據(jù)同步位。該位為只寫(xiě)位,,它與
占用同一個(gè)口地址,。當(dāng)把“1”寫(xiě)入時(shí),將使調(diào)制器的計(jì)數(shù)復(fù)位至0,;當(dāng)把“0”寫(xiě)入時(shí),,調(diào)制器的計(jì)數(shù)無(wú)變化。
MD2~MD0:操作模式位,。該位用于啟動(dòng)各種方式的校準(zhǔn)模式,。
G2~G0:增益控制位。該位用于設(shè)定PGA需要的增益值,。
CH1~CH0:通道選擇位,。該位用于選通ADS1211的4路輸入通道中的一路。對(duì)ADS1210而言,,CH1~CH0必須設(shè)置為00,。
SF2~SF0:加速因子選擇位。該位用于控制輸入電容的采樣頻率以及調(diào)制器的速度,。
DR12~DR0:抽取率選擇位,。這些位用于選取ADS1210/1211的抽取率(Decimation Ratio)。有效的抽取率范圍為20~8000,。若超出此范圍,,數(shù)字濾波器會(huì)由于數(shù)據(jù)不夠或數(shù)據(jù)過(guò)多而引起計(jì)算結(jié)果的不正確,。
4.1.3 輸出數(shù)據(jù)寄存器(DOR)
DOR為24位寄存器,用于存放最新的轉(zhuǎn)換結(jié)果,。DOR內(nèi)容剛好在信號(hào)由高變低前被更新,。如果在1/fDATA-12×(1/fXIN)所定義的時(shí)間間隔內(nèi)沒(méi)有讀DOR的內(nèi)容,則原有的內(nèi)容將被覆蓋,。(除非是在讀周期:否則,,在DOR被更新前,
被強(qiáng)制為高,。)
從上面的分析中我們知道,,DOR的內(nèi)容可以是補(bǔ)碼形式,也可以是偏移二進(jìn)制碼形式,,這主要靠命令寄存器中的DF位來(lái)控制,。而且,當(dāng)命令寄存器中的=1時(shí),,DOR中的數(shù)據(jù)被限定為單極性數(shù)據(jù),。
4.2 ADS1210/1211與單片機(jī)的接口
根據(jù)ADS1210/1211與外部器件接口信號(hào)的不同,接口的形式可分為:雙線(xiàn)制,、三級(jí)制,、四線(xiàn)制和多線(xiàn)制等。我們采用三線(xiàn)制來(lái)實(shí)現(xiàn)ADS1210/1211與單片機(jī)的接口,。ADS1210/1211與單片機(jī)的接口電路如圖3所示,。圖中,ADS1210/1211與87C51單片機(jī)的接口信號(hào)有三條:,、SDIO和SCLK,。它們是數(shù)據(jù)準(zhǔn)備就緒線(xiàn)、數(shù)據(jù)輸入輸出線(xiàn)和時(shí)鐘信號(hào)線(xiàn),,分別接至87C51單片機(jī)P1口的P1.1,、P1.2和P1.3引腳。
4.3 程序設(shè)計(jì)
根據(jù)設(shè)計(jì)任務(wù)的要求,,本系統(tǒng)是一個(gè)程控?cái)?shù)字電壓表,,我們可寫(xiě)出主程序的流程圖,如圖4所示,。具體程序從略,。
參考文獻(xiàn)
1 24-Bit ADALOG-TO DIGITAL CONVERTER.Burr Brown Corporation,1997