DS4830光微控制器的模數(shù)轉(zhuǎn)換器(ADC)失調(diào)會隨著溫度和增益選擇而變化。但是,DS4830允許用戶測量ADC內(nèi)部失調(diào)。測得的ADC失調(diào)被添加到ADC失調(diào)寄存器中,以消除失調(diào)誤差。本應(yīng)用筆記演示DS4830在應(yīng)用中的ADC內(nèi)部失調(diào)校準(zhǔn)。
介紹
模數(shù)轉(zhuǎn)換器(ADC)將輸入電壓轉(zhuǎn)換為相應(yīng)的數(shù)字代碼。完美的ADC代表了整個代碼空間中的這種行為。圖1顯示了采用2V基準(zhǔn)電壓源的3位ADC的傳遞函數(shù)。
圖1.1/2 LSB補(bǔ)償?shù)睦硐?位ADC。
但是,很難設(shè)計出滿足所有架構(gòu)中完美ADC特性的ADC。由于各種設(shè)計限制或約束,ADC輸出會產(chǎn)生各種誤差,例如積分非線性(INL)、差分非線性(DNL)、增益和失調(diào)。
失調(diào)誤差是ADC中最常見的誤差。用于零電壓輸入(ADC輸入接地)的ADC數(shù)字代碼輸出稱為ADC失調(diào)。圖2顯示了帶失調(diào)的3位ADC的傳遞函數(shù)。
圖2.具有失調(diào)功能的1/2 LSB補(bǔ)償3位ADC。
DS4830 ADC內(nèi)部失調(diào)
DS4830光學(xué)微控制器具有13位ADC和ADC失調(diào)寄存器(ADVOFF),用于校準(zhǔn)ADC內(nèi)部失調(diào)。對于每個DS4830,在室溫下,ADC增益ADCG1 (1.216V滿量程)的失調(diào)經(jīng)過工廠校準(zhǔn)。但是,DS4830 ADC內(nèi)部失調(diào)會隨著溫度和增益選擇而變化。
DS4830可以測量任何可用ADC增益設(shè)置的ADC內(nèi)部失調(diào)。然后,該測量可用于校準(zhǔn)ADVOFF寄存器。為了測量ADC內(nèi)部失調(diào),ADC控制器將內(nèi)部接地連接到ADC輸入,并在ADC上開始轉(zhuǎn)換。ADC 控制器在位置 25 處有一個專用通道選擇,指示 ADC 控制器測量 ADC 內(nèi)部偏移。ADC控制器沒有專用的數(shù)據(jù)緩沖器來存儲ADC內(nèi)部失調(diào)轉(zhuǎn)換結(jié)果。要訪問內(nèi)部失調(diào)轉(zhuǎn)換結(jié)果,必須使用ADC控制器中的位置覆蓋選項。
ADC內(nèi)部失調(diào)的位置覆蓋選項
默認(rèn)情況下,ADC轉(zhuǎn)換結(jié)果存儲在與通道號對應(yīng)的ADC緩沖器位置。ADC 控制器提供“位置覆蓋”選項。此選項允許將ADC轉(zhuǎn)換結(jié)果放置在任何數(shù)據(jù)緩沖區(qū)位置(0-24個數(shù)據(jù)緩沖區(qū)位置)。ADC控制寄存器(ADCN)具有LOC_OVR位的位置覆蓋。將此位設(shè)置為1將使用戶能夠選擇存儲ADC轉(zhuǎn)換結(jié)果的備用位置。當(dāng) ADC 狀態(tài)寄存器 (ADST) 中的 ADC 轉(zhuǎn)換配置寄存器選擇位 (ADCFG) 設(shè)置為 1 時,備用位置由 ADDATA[12:8] 位 (ALT_LOC[4:0]) 定義。
用于內(nèi)部失調(diào)測量的ADC配置步驟
以下步驟解釋了DS4830的ADC數(shù)據(jù)和配置寄存器(ADDATA)配置,用于ADC內(nèi)部失調(diào)測量。
以下位設(shè)置為ADCN和ADST寄存器中的相應(yīng)值。
位置覆蓋位 (ADCN.LOC_OVR) 到 1
ADC 配置選擇位 (ADST.ADCFG) 到 1
ADC 寄存器索引位 (ADST.ADIDX[4:0]) 到 0
寫入 ADDATA 寄存器 (ADDATA)。ADDATA[4:0] 位中的 ADC 通道選擇位 ADCH[4:0] 應(yīng)為 25。此外,在 ADDATA 寄存器中的備用位置位 ALT_LOC[4:0] 寫入(0 到 24 之間的任何值)。ADC內(nèi)部失調(diào)轉(zhuǎn)換結(jié)果放置在配置的備用位置位所指向的數(shù)據(jù)緩沖位置。例如
ADDATA = 0x0039;這將配置ADC進(jìn)行內(nèi)部失調(diào)測量、差分模式、備用位置0、增益1和ADC右對齊。
ADDATA = 0x4139;這將ADC配置為內(nèi)部失調(diào)測量、差分模式、備用位置1、增益3和ADC右對齊。
ADDATA = 0x6439;這將ADC配置為內(nèi)部失調(diào)測量、差分模式、備用位置4、增益4和ADC右對齊。
設(shè)置 ADC 配置選擇(ADST.ADCFG) 至 0 和 ADC 寄存器索引位 (ADST.ADIDX[4:0]) 為 0。
ADC 內(nèi)部失調(diào)測量和校準(zhǔn)
將ADC配置為內(nèi)部失調(diào)測量后,ADCN寄存器中的ADC轉(zhuǎn)換起始位(ADCONV)設(shè)置為1以開始ADC轉(zhuǎn)換。ADC 控制器將內(nèi)部接地連接到 ADC 輸入,以測量 ADC 內(nèi)部失調(diào),并在 ADC 上開始轉(zhuǎn)換。轉(zhuǎn)換結(jié)果是測得的ADC內(nèi)部失調(diào)。這可以從 ALT_LOC[4:0] 位指示的數(shù)據(jù)緩沖區(qū)位置讀取,該位置在 ADC 配置期間設(shè)置。
要校準(zhǔn)ADC內(nèi)部失調(diào),請將測得ADC內(nèi)部失調(diào)的負(fù)值(2的補(bǔ)碼)添加到ADVOFF寄存器?;跍y得的ADC內(nèi)部失調(diào)的ADVOFF值示例如表1所示。這些 ADVOFF 值假定工廠校準(zhǔn)的 ADVOFF 值為 0。在正常的ADC操作期間,ADVOFF中的值先添加到轉(zhuǎn)換結(jié)果中,然后再將最終結(jié)果添加到數(shù)據(jù)緩沖區(qū)中。
測量的 ADC 內(nèi)部辦公室 |
ADVOFF寄存器(十六進(jìn)制) |
|
十進(jìn)制 | (十六進(jìn)制) | |
-2 |
FFFEh |
0002小時 |
-1 |
FFFFh |
0001小時 |
0 |
0000小時 |
0000小時 |
1 |
0001小時 |
FFFFh |
2 |
0002小時 |
FFFEh |
注意:在上電復(fù)位(POR)期間,校準(zhǔn)值將被出廠默認(rèn)值覆蓋。
示例代碼
main.c 中的代碼演示了 ADC 內(nèi)部失調(diào)校準(zhǔn)步驟。
流程圖
審核編輯:郭婷
-
微控制器
+關(guān)注
關(guān)注
48文章
7459瀏覽量
150860 -
寄存器
+關(guān)注
關(guān)注
31文章
5295瀏覽量
119824 -
adc
+關(guān)注
關(guān)注
98文章
6396瀏覽量
543798
發(fā)布評論請先 登錄
相關(guān)推薦
評論