高精度模數(shù)轉(zhuǎn)換器ADS1256的原理和應(yīng)用
掃描二維碼
隨時(shí)隨地手機(jī)看文章
ADS1256是公司Burr-Brown產(chǎn)品線推出的微功耗、高精度、8通道、24位△-∑型高性能模數(shù)轉(zhuǎn)換器(ADC)。該器件提供高達(dá)23比特的無(wú)噪聲精度、數(shù)據(jù)速率高達(dá)30kSPS(次采樣/秒)、0.0010%非線性特性(最大值)以及眾多的板上外設(shè)(輸入模擬多路開(kāi)關(guān)、輸入緩沖器、可編程增益放大器和可編程數(shù)字濾波器等),可為設(shè)計(jì)人員帶來(lái)完整而高分辨率的量測(cè)解決方案。ADS1256采用SSOP-2封裝,1000顆采購(gòu)量零售單價(jià)為8.95美元。
ADS1256主要特點(diǎn)
1、8通道輸入:可同時(shí)采集8路信號(hào)輸入。
2、測(cè)量范圍廣:基本范圍為0-5V輸入電壓,可在輸入端可焊接分壓電阻,將電壓調(diào)整至0-5V內(nèi),所以此采集卡可采集市面上大部分標(biāo)準(zhǔn)電壓,
3、采集頻率高,精度高:采集卡的采集速率為30K/s,精度可達(dá)到0.00001。
4、工業(yè)應(yīng)用級(jí)布線,模地,數(shù)字地完全隔離,抗干擾能力強(qiáng)。
5、體積小,方便安裝應(yīng)用
6、跳帽設(shè)計(jì),方便多重狀態(tài)組合
ADS1256內(nèi)部結(jié)構(gòu)
ADS1256的內(nèi)部結(jié)構(gòu)如圖1所示。該器件主要由模擬多路開(kāi)關(guān)(MUX)、輸入緩沖器(BUF)、可編程增益放大器(PGA)、四階△-∑調(diào)制器、可編程數(shù)字濾波器、時(shí)鐘發(fā)生器、控制器和串行SPI接口等組成。由于ADS1256提供有九路模擬輸入端,因此,可使用模擬多路開(kāi)關(guān)寄存器來(lái)將其配置為4路差動(dòng)輸入、8路單極輸入或差動(dòng)輸入和單極輸入的組合。當(dāng)模擬輸入通道0被選擇為正差動(dòng)輸入端(AINP)時(shí),其余通道可被選擇為負(fù)差動(dòng)輸入端(AINN)。通常,輸入引腳的選擇是沒(méi)有限制的,但是為了得到最佳的模擬性能,推薦如下的引腳連接方式:
1.作差動(dòng)測(cè)量時(shí),一般將AIN0~AIN7作為輸入端,不用AINCOM;
2.作單極測(cè)量時(shí),一般將AIN0~AIN7作為單極輸入端;AINCOM作為公共輸入端,但是不把AINCOM接地;
3.將未用的模擬輸入引腳懸空,這樣有利于減小輸入泄漏電流。
ADS1256工作原理
ADS1256采用四線制(時(shí)鐘信號(hào)線SCLK、數(shù)據(jù)輸入線DIN、數(shù)據(jù)輸出線DOUT和偏片選線CS)SPI通信方式,只能工作在SPI通信的從模式下。設(shè)計(jì)時(shí)可以通過(guò)各種主控制器(如單片機(jī)等)來(lái)控制ADS1256片上的寄存器,并通過(guò)串口讀寫這些寄存器。串口通信時(shí),必須保持CS為低電平。DRDY引腳用來(lái)表明轉(zhuǎn)換已經(jīng)完成,可以通過(guò)RDADA或者RDATAC命令從DOUT引腳讀取最新的轉(zhuǎn)換數(shù)據(jù)。在SPI通信過(guò)程中,可同步地發(fā)送和接收數(shù)據(jù),而且數(shù)據(jù)也可來(lái)利用SCLK和DIN、DOUT信號(hào)同步移動(dòng)。SCLK信號(hào)要盡量保持干凈以免發(fā)生數(shù)據(jù)錯(cuò)誤,在SCLK的上升沿,可通過(guò)DIN向ADS1256發(fā)送數(shù)據(jù),而在SCLK的上升沿,可通過(guò)DOUT從ADS1256讀取數(shù)據(jù)。DIN和DOUT也可以通過(guò)一條雙向信號(hào)線與主控制器相連,但在這種情況下,一定不能用RDATAC命令來(lái)讀取數(shù)據(jù)。圖2為SPI通信時(shí)序關(guān)系。
ADS1256有四個(gè)通用數(shù)字I/O口,所有的I/O口都可以通過(guò)IO寄存器設(shè)置為輸入或輸出。通過(guò)IO寄存器的DIR位可對(duì)每一個(gè)腳的輸入或輸出進(jìn)行設(shè)置;DIO位用于控制每一個(gè)腳的狀態(tài)。通過(guò)D0腳可設(shè)置一個(gè)時(shí)鐘發(fā)生器以供別的設(shè)備使用(如微控制器等)。此時(shí)鐘可以通過(guò)ADCON寄存器的CLK0和CLK1位設(shè)置成fCLKIN、fCLKIN/2、fCLKIN/4。把D0作為時(shí)鐘要增加電壓的消耗,因此,如果不需要時(shí)鐘輸出功能,最好在上電或者復(fù)位后通過(guò)寫ADCON寄存器使其處于無(wú)效狀態(tài)。不用的IO引腳可以作為輸入接地,也可以設(shè)置為輸出,這樣有利于減小電源消耗。
ADS1256的主時(shí)鐘可以由外部晶振或時(shí)鐘發(fā)生器提供。由外部晶振產(chǎn)生時(shí),PCB布線板上的晶振應(yīng)該盡量地靠近ADS1256。為了保證能夠起振并得到一個(gè)穩(wěn)定頻率,可使用一個(gè)外部電容(一般使用陶瓷電容)。晶振頻率一般選擇7.68MHz(即fCLKIN=7.68 MHz)。
ADS1256可通過(guò)復(fù)位引腳RESET、RESET命令和特殊串口通信時(shí)鐘SCLK三種方式進(jìn)行復(fù)位。ADS1256的同步操作則有SYNC/PDWN引腳和SYNC命令兩種方式。
ADS1256工作過(guò)程的建立主要是通過(guò)對(duì)11個(gè)獨(dú)立寄存器的設(shè)置來(lái)完成,這些寄存器包括了所有需要設(shè)置的信息,如采樣速度、模擬多路開(kāi)關(guān)、PGA設(shè)置、I/O選擇、自校準(zhǔn)等。表1給出了ADS1256的主要寄存器狀態(tài),其中包括:狀態(tài)寄存器STATUS、模擬多路開(kāi)關(guān)寄存器MUX、AD控制寄存器ADCON和數(shù)據(jù)速度寄存器DRATE。
其中,狀態(tài)寄存器STATUS(地址00h,復(fù)位值為X1H)的高四位(ID位)由出廠設(shè)定,ORDER位為數(shù)據(jù)輸出順序選擇位,為0時(shí),數(shù)據(jù)輸出高位在先(默認(rèn));為1時(shí),數(shù)據(jù)輸出低位在先。ACAL位為自動(dòng)校準(zhǔn)選擇位,為0時(shí),自動(dòng)校準(zhǔn)關(guān)閉(默認(rèn));為1時(shí),自動(dòng)校準(zhǔn)開(kāi)啟。BUFFER位為輸入緩沖選擇位,為0時(shí),輸入緩沖關(guān)閉(默認(rèn));為1時(shí),輸入緩沖開(kāi)啟。DRDY位為轉(zhuǎn)換數(shù)據(jù)狀態(tài)位,此位完全復(fù)制DRDY引腳的狀態(tài),DRDY低電平時(shí),表明數(shù)據(jù)轉(zhuǎn)換結(jié)束,結(jié)果可以讀出;高電平時(shí),表明沒(méi)有數(shù)據(jù)轉(zhuǎn)換或者正在轉(zhuǎn)換數(shù)據(jù),此時(shí)不能讀數(shù)據(jù)。
模擬多路開(kāi)關(guān)寄存器MUX(地址01h)的復(fù)位值為01H。其PSEN3~PSEN0位為差動(dòng)信號(hào)正輸入端選擇位,具體選擇如下:0000=AIN0(默認(rèn)),0001= AIN1,0010= AIN2,0011= AIN3,1XXX= AINCOM;NSEL3~NSEL0為差動(dòng)信號(hào)負(fù)輸入端選擇位,具體選擇為0000= AIN0,0001= AIN1(默認(rèn)),0010= AIN2,0011= AIN3,1XXX= AINCOM。
AD控制寄存器ADCON(地址02h)的最高位一般不用(始終為0)。CLK1、CLK0為輸出時(shí)鐘選擇位,00為輸出時(shí)鐘關(guān)閉;01為fCLKIN(默認(rèn));10為fCLKIN/2;11為fCLKIN/4。SDCS1、SDCS0為傳感器檢測(cè)選擇位,其中:00表示傳感器檢測(cè)關(guān)閉(默認(rèn));01表示傳感器檢測(cè)電流為0.5μA;10表示傳感器檢測(cè)電流為2μA;11表示傳感器檢測(cè)電流為10μA。PGA2~ PGA0為可編程增益放大器的放大倍數(shù)選擇位,000=1(默認(rèn));001=2;010=4;011=8;100=16;101=32;110=64;111=128。
數(shù)據(jù)速率寄存器DRATE(地址02h)的復(fù)位值為F0H。DIR7~DIR0為數(shù)據(jù)速率選擇位,具體選擇如下:11110000=30kSPS(默認(rèn));11100000=15 kSPS;……;00010011=5 kSPS;00000011=2.5 kSPS。
ADS1256的典型應(yīng)用電路
圖3 所示是ADS1256的典型應(yīng)用電路。由于ADS1256是精度極高的A/D轉(zhuǎn)換器,在應(yīng)用期間要特別注意該器件的外圍電路和印刷電路板的設(shè)計(jì)。
同其他高精度A/D轉(zhuǎn)化器一樣,ADS1256在實(shí)際應(yīng)用時(shí),也要特別注意電源和地的布線。在模擬電源和數(shù)字電源的輸入端一般要并聯(lián)一個(gè)小的陶瓷電容和一個(gè)大的鉭電容(或者陶瓷電容),一般采用圖3所示的阻容濾波。注意電容要盡量靠近輸入端,而且應(yīng)使小電容更靠近ADC。特別注意要為VREFN和VREFP提供干凈的電源,可以直接由AVDD(模擬電壓)或由其分壓得到,也可以采用獨(dú)立的參考電源供電,但該電源一定要具有極低的噪聲和溫漂,否則將會(huì)直接影響ADS1256的性能。通常在輸入端要采用如圖3所示的RC低通濾波器來(lái)限制高頻噪聲,而且輸入線越短越好。在接地方面,推薦采用模擬電源和數(shù)字電源共地的方式,要注意旁路電容和模擬調(diào)整電路的應(yīng)用,避免數(shù)字噪聲元件(例如微處理器)也公用此地。如果ADS1256采用不同的接地網(wǎng)絡(luò),一定要采用單點(diǎn)接地,避免模擬地(AGND)和數(shù)字地(DGND)之間有電壓存在。如果不用D0~D3,可以將其當(dāng)作輸入接地。如果不用RESET和SYNC/PDWN引腳,亦可將其直接接入數(shù)字電壓輸入端(DVDD)。
注意
1、在ADS1256片外要將模擬地AGND和數(shù)字地DGND連接在一起。否則,AGND和DGND之間存在電壓,會(huì)使ADS1256無(wú)法正常工作。
2、在印刷電路板布線時(shí),應(yīng)將外部晶振盡可能地靠近ADS1256,否則將影響輸入幅值的大小,而當(dāng)幅值太小時(shí),可以通過(guò)減小晶振兩端的電容來(lái)增大其幅值,電容范圍應(yīng)在0~20μF,晶振為7.68MHz時(shí),接入電容的典型值為18pF。
3、為了得到最佳的轉(zhuǎn)換結(jié)果,每次改變初始寄存器值時(shí)(例如改變輸入通道),最好自校準(zhǔn)一次。而且應(yīng)在改變輸入通道命令后發(fā)同步命令SYNC,然后經(jīng)過(guò)一段延時(shí)時(shí)再讀取上次轉(zhuǎn)換的結(jié)果。該延時(shí)應(yīng)隨著ADS1256的采樣頻率和濾波方式變化而變化。
4、在使用ADS1256處理微小信號(hào)時(shí),最好采用比例測(cè)量,并應(yīng)在DRDY由高變低時(shí)讀取數(shù)據(jù)。