TLV2544/2548多通道12位串行A/D轉(zhuǎn)換器的原理與應(yīng)用
掃描二維碼
隨時(shí)隨地手機(jī)看文章
1 概述
TLV2544/2548是TI公司生產(chǎn)的一組高性能12位低功耗/高速(3.6μs)CMOS模數(shù)轉(zhuǎn)換器,它精度高,體積小、通道多,使用靈活,并具有采樣-保持功能,電源電壓為2.7V~5.5V。另外TLV2544/2548還個(gè)有3個(gè)輸入端和一個(gè)三態(tài)輸出端,可為最流行的微處理器串行端口(SPI)提供4線接口。當(dāng)與DSP連接時(shí),可用一個(gè)幀同步信號(hào)(FS)來表明一個(gè)串行數(shù)據(jù)幀的開始。該器件除了具有高速模數(shù)轉(zhuǎn)換器和多種控制功能外,還具有片內(nèi)模擬多路器,可選擇多部的模擬電壓或三個(gè)內(nèi)部自測(cè)試電壓中的任一個(gè)外部的模擬電壓或三個(gè)內(nèi)部自測(cè)試電壓中的任一個(gè)作為輸入。TLV2544/2548工作時(shí)的功耗非常低,而軟件/硬件/自動(dòng)關(guān)機(jī)模式以及可編程的轉(zhuǎn)換速度又進(jìn)一步增強(qiáng)了其低功耗的特點(diǎn)。同時(shí)它還具有內(nèi)置轉(zhuǎn)換時(shí)鐘(OSC)和電壓基準(zhǔn),可以采用外部SCLK作為轉(zhuǎn)換時(shí)鐘源以獲取更高的轉(zhuǎn)換速度(在20MHz的SCLK時(shí)可高達(dá)3.6μs)。并有兩種不同的內(nèi)部基準(zhǔn)電壓可供選擇。圖1和圖2分別是TLV2544/2548的功能方框圖和引腳排列,表1是其引腳說明。
表1 引腳說明
名 稱 | 引腳號(hào) | I/O | 說 明 | |
TLV2544 | TLV2548 | |||
A0~A3/A0~A7 | 6~9 | 6~13 | I | 模擬輸入。該輸入可內(nèi)部被多路復(fù)用 |
CS | 16 | 20 | I | 片選 |
CSTART | 10 | 14 | I | 用于控制模擬輸入的開始和啟動(dòng)轉(zhuǎn)換 |
EOC/(INT) | 4 | 4 | O | 轉(zhuǎn)換結(jié)束或主處理器中斷 |
FS | 13 | 17 | I | DSP幀同步輸入 |
GND | 11 | 15 | I | 地,用于內(nèi)部電路 |
PWDN | 12 | 16 | I | 此腳為邏輯零時(shí),模擬及基準(zhǔn)電路均斷電 |
SCLK | 3 | 3 | I | 串行時(shí)鐘輸入 |
SDI | 2 | 2 | I | 串行數(shù)據(jù)輸入 |
SDO | 1 | 1 | I | A/D轉(zhuǎn)換結(jié)果的三態(tài)串行輸出端 |
REFM | 14 | 18 | I | 外部基準(zhǔn)輸入或內(nèi)部基準(zhǔn)去耦 |
REFP | 15 | 19 | I | 外部基準(zhǔn)輸入或內(nèi)部基準(zhǔn)去耦 |
Vcc | 5 | 5 | I | 正源電壓 |
表2 TLV2544/TLV2548配置寄存器(CFR)的位定義
位 | 定 義 | |
D15~D12 | 全零,不可編程 | |
D11 | 基準(zhǔn)選擇,0為外部;1為內(nèi)部 | |
D10 | 內(nèi)部基準(zhǔn)電壓選擇,0時(shí),內(nèi)部準(zhǔn)=4V;為1時(shí):內(nèi)部基準(zhǔn)=2V | |
D9 | 采樣周期選擇0:短期采樣12SCLKs(1x采樣時(shí)間) 1:長(zhǎng)期采樣24SCLKs(2x采樣時(shí)間) | |
D(8,7) | 轉(zhuǎn)換時(shí)鐘源選擇,00:轉(zhuǎn)換時(shí)間=內(nèi)OSC;01:轉(zhuǎn)換時(shí)鐘=SCLK 10:轉(zhuǎn)換時(shí)鐘=SCLK/4;11:轉(zhuǎn)換時(shí)鐘=SCLK/2 | |
D(6,5) | 轉(zhuǎn)換模式選擇;00;單次模式;01:重復(fù)模式;10:掃描模式;11:重復(fù)掃描模式 | |
D(4,3)* | TLV2548 | TLV2544 |
掃描自動(dòng)序列選擇 00:0-1-2-3-4-5-6-7 01:0-2-4-6-0-2-4-6 10:0-0-2-2-4-4-6-6 11:0-2-0-2-0-2-0-2 | 掃描自動(dòng)序列選擇 00:N/A 01:0-1-2-3-0-1-2-3 10:0-0-1-1-2-2-3-3 11:0-1-0-1-0-1-0-1 | |
D2 | EOC/INT引腳功能選擇,0;引腳用作INT;1:引腳用作EOC | |
D(1,0) | FIFO觸發(fā)器電平(掃描序列長(zhǎng)度) 00:全部(FIFO level 7填滿后產(chǎn)生INT) 01:3/4(FIFO level 5填滿后產(chǎn)生INT) 10:1/2(FIFO level 3填滿后產(chǎn)生INT) 11:1/4(FIFO level 1填滿后產(chǎn)生INT) |
*這些位僅在10和11轉(zhuǎn)換模式中有效
TLV2544/2548兩芯片的內(nèi)部功能結(jié)構(gòu)相同,不同之處就是前者的模擬輸入通道為4路,而后者為8路。下面以TLV2544為例為介紹。
2 工作原理
TLV2544有4路模擬輸入和3個(gè)內(nèi)部測(cè)試輸入端,它們可由模擬多路轉(zhuǎn)換器根據(jù)輸入的命令來選擇。輸入多路轉(zhuǎn)換器采用先開后合型,因?yàn)檫@可減少由通道切換引起的輸入噪聲。
TLV2544 的工作周期的開始模式有兩種:一種是當(dāng)不使用FS時(shí)(在CS的下降沿FS=1),CS的下降沿即為周期的開始。這時(shí)的輸入數(shù)據(jù)在SCLK的上升沿移入,輸出數(shù)據(jù)下降沿改變。這種模式雖然也可用于DSP,但一般常用于SPI微控制器。另一種是當(dāng)使用FS時(shí)(FS是來自DSP的有效信號(hào)),F(xiàn)S的下降沿即為周期的開始,這時(shí)的輸入數(shù)據(jù)在SCLK的下降沿移入,輸出數(shù)據(jù)在其上升沿改變,這種模式一般用于TMS320系列的DSP。
TLV2544 具有一個(gè)4位命令集(存于命令寄存器CMR中)和一個(gè)12位配置數(shù)據(jù)域。大多數(shù)命令只需要前4個(gè)MSB,即不需要低12位數(shù)據(jù)。值得注意的是,器件在上電初始化時(shí)首先需要將將始化命令A(yù)000h寫入CFR配置寄存器,然后對(duì)器件進(jìn)行編程,其編程方法是在初始化命令A(yù)000h的低12位000h寫入編程數(shù)據(jù)以規(guī)定器件的工作方式。編程定義如表2所列,編程信息被保留在H/W或S/W的斷電狀態(tài)。當(dāng)器件被編程時(shí),由微處理發(fā)送一個(gè)16位串行數(shù)據(jù)寫入CFR,如果在輸入了前8位后SCLK中斷,那么余下的8位則在SCLK被恢復(fù)后再輸入。一個(gè)讀CFR命令可讀出CFR的狀態(tài),以校驗(yàn)寫入控制命令是否正確,其他控制命令可參見表3。
表3 TLV2544/TLV2548命令集
SDID(15~12)BINary HEX | TLV2548指命 | TLV2544指命 | |
0000b | 0000h | 選擇模擬通道0 | 選擇模擬通道0 |
0001b | 1000h | 選擇模擬通道1 | N/A |
0010b | 2000h | 選擇模擬通道2 | 選擇模擬通道1 |
0011b | 3000h | 選擇模擬通道3 | N/A |
0100b | 4000h | 選擇模擬通道4 | 選擇模擬通道2 |
0101b | 5000h | 選擇模擬通道5 | N/A |
0110b | 6000h | 選擇模擬通道6 | 選擇模擬通道3 |
0111b | 7000h | 選擇模擬通道7 | N/A |
1000b | 8000h | 選擇模擬通道8 | SW電源跌落(模擬+參考) |
1001b | 9000h | 讀CFR寄存器數(shù)據(jù)到SDO D(11~0) | |
1010b | A000h plus data | 將低12位數(shù)據(jù)寫CFR | |
1011B | B000h | 測(cè)試選擇,電壓為(REFP+REFR)/2 | |
1100b | C000h | 測(cè)試選擇,電壓為REFM | |
1101b | D000h | 測(cè)試選擇,電壓為REFP | |
1110b | E000h | FIFO讀,將FIFO內(nèi)容送SDO D(15~4),D(3~0)=0000 | |
1111b | F000h plus data | 保留 |
如果前高4位輸入數(shù)據(jù)被譯碼為轉(zhuǎn)換命令之一,那么采樣周期開始。一般有兩種采樣方式:正常采樣和擴(kuò)展采樣。正常采樣實(shí)際上是采用軟件啟動(dòng)A/D變換方式,當(dāng) A/D轉(zhuǎn)換器正常采樣時(shí),采樣周期是可編程的,它可以是12SCLKs(短周期采樣)或24SCLKs(長(zhǎng)周期采樣)。當(dāng)SCLK高于10MHz或輸入源電阻較高時(shí),長(zhǎng)周期采樣可使被采樣的輸入模擬信號(hào)達(dá)到0.5LSB的精度。如果正常采樣達(dá)不到所要求的A/D變換精度,則應(yīng)采用擴(kuò)展采樣,擴(kuò)展采樣采用硬件啟動(dòng)A/D變換,在引腳CSTART輸入一個(gè)寬度大于800ns的負(fù)脈沖信號(hào)后,A/D轉(zhuǎn)換開始。CSTART的下降沿即為采樣周期的開始,CSTART的上升沿是采樣周期的結(jié)束和轉(zhuǎn)換的開始。
3 TLV2544的轉(zhuǎn)換模式
TLV2544 具有四種轉(zhuǎn)換模式,分別為:?jiǎn)未文J?、重?fù)模式、掃描模式和重復(fù)掃描模式??捎媚J?0、01、10、11表示。每種模式的工作稍有區(qū)別,這取決于轉(zhuǎn)換器如何采樣和采用哪一種接口。轉(zhuǎn)換的觸發(fā)信號(hào)可以采用有效CSTART(擴(kuò)展采樣)、CS(正常采樣、SPI接口)或FS(正常采樣,TMS320系列 DSP接口)模式。當(dāng)FS用作觸發(fā)信號(hào)時(shí),CS可保護(hù)一直有效而不需要通過觸發(fā)順序跳轉(zhuǎn)。不同類型的觸發(fā)信號(hào)不應(yīng)在重復(fù)模式和掃描模式中混合使用。當(dāng) CSTART用作觸發(fā)信號(hào)時(shí),轉(zhuǎn)換開始于CSTART的上升沿。如果一個(gè)有效CS或FS用作觸發(fā)信號(hào),則轉(zhuǎn)換將在第16個(gè)或第28個(gè)SCLK的邊沿開始。
TLV2544/2548 的工作時(shí)序分為二大類:轉(zhuǎn)換和無轉(zhuǎn)換。無轉(zhuǎn)換周期為讀和寫周期(配置),這些周期都不執(zhí)行轉(zhuǎn)換,而轉(zhuǎn)換周期有四種轉(zhuǎn)換模式的周期,圖3、圖4分別給出了 TLV2544/2548的CFR寫周期(FS=1)和模式00時(shí)單次擴(kuò)展采樣(使用FS信號(hào),F(xiàn)S腳連至TMS320系列DSP)時(shí)序圖。
另外,TLV2544/2548還具有一個(gè)內(nèi)置基準(zhǔn),其電平可編程為2V或4V。如果采用內(nèi)部基準(zhǔn),REFP就被設(shè)為2V/4V,而REFM則設(shè)為0V。如果基準(zhǔn)源編程為外部,那么也可通過兩個(gè)基準(zhǔn)輸入腳REFP和REFM使用外部基準(zhǔn)。模擬輸入、外部基準(zhǔn)的最大或最小值不應(yīng)超過正電源或低于GND。正輸入信號(hào)等于或高于REFP時(shí),數(shù)字輸入為滿度,而在輸入信號(hào)等于或低于REFM時(shí)為零。
器件的上電和初始化要求先通過向TLV2544/2548寫入A000h的方法確定處理器的類型,然后對(duì)器件進(jìn)行編程。器件在上電后或從斷電方式中恢復(fù)后的第一次轉(zhuǎn)換無效。
4 應(yīng)用
TLV2544 和微處理器之間的數(shù)據(jù)傳輸最快和最有效的方法是用串行外設(shè)接口(SPI),但這要求微帶有SPI接口能力。對(duì)不帶SPI或類似接口能力的微處理器,需用軟件合成SPI操作來和TLV2544連接。圖5為TLV2544和單片機(jī)AT89C2051的接口電路,因?yàn)槭桥c微處理器連接,所以不用FS端(接至高電平)。該電路采用內(nèi)部基準(zhǔn),REFP與REFM之間接0.1μF和10μF兩個(gè)退耦電容。TLV2544的SDI、SCLK、EOC/INT、CS端由單片機(jī)的雙向I/O口中的P1.3、P1.4、P1.5和P1.6提供。轉(zhuǎn)換結(jié)果的輸出(SDO)數(shù)據(jù)由口1的P1.2接收。電路使用擴(kuò)展采樣方式, CSTART端接P1.7,通過硬件來控制采樣與轉(zhuǎn)換。其接口軟件由一個(gè)主程序和一個(gè)子程序組成。主程序首先對(duì)P1口初始化,后對(duì)TLV2544進(jìn)行編程以確定的工作方式。子程序“SPI-IO”用來模擬SPI的I/O操作,SPI功能用累加器A和帶進(jìn)位的左循環(huán)移位指令(RLC)模擬SPI移位寄存器的操作來實(shí)現(xiàn)。程序如下:
ORG 0000H
AJMP START
ORG 0030H
START:MOV P1,#0FFH
MOV P3,#0FFH
CLR EA
CLR ET1
CLR P1.4
SETB P1.6
CONFIG:MOV R1,#0A0H
ACALL SPI_IO
MOV R1,#00H
ACALL SPI_IO
SETB P1.6
MOV R1,#10101000B;
ACALL SPI_IO
MOV R1,#00000000B
ACALL SPI_IO
SETB P1.6
S/R:MOV R1,#ACALL SPI_IO
RESULT
MOV R1,#00H
ACALL SPI_IO
MOC R3,A;LOW BYTE RESULT
SETB P1.6
NOP
CLR P1.7/CSTART LOW,START SAMPLING
MOV R6,#08H
DELAY:NOP
NOP
NOP
DJNZ R6,DELAY
SETB P1.7;
JB P1.5,$;/INT
SETB P1.6
·
·對(duì)轉(zhuǎn)換結(jié)果的處理
·
AJMP S/R
SPI_IO;CLR P1.6
CLR P1.4
MOV R0,#08H
MOV A,R1
SPI_IO1:MOV C,P1.2
RLC A
MOV P1.3,C
SETB P1.4
CLR P1.4
DJNZ R0,SPI_IO1
RET