本應(yīng)用筆記討論了DS1863/DS1865控制器/監(jiān)測芯片的內(nèi)部校準(zhǔn)和右移(可擴展動態(tài)量程)如何使應(yīng)用受益。本文解釋了如何實現(xiàn)內(nèi)部校準(zhǔn)和右移,并提供了一個示例來說明該過程。
介紹
DS1863和DS1865控制器/監(jiān)測器件采用內(nèi)部校準(zhǔn)和右移(可擴展動態(tài)量程),大大增強了內(nèi)部13位ADC,在不增加成本和尺寸的情況下,提供更高的精度和準(zhǔn)確度。此外,DS1863/DS1865的內(nèi)部校準(zhǔn)具有可編程標(biāo)度和可編程失調(diào)功能,無需大多數(shù)(如果不是全部)外部信號調(diào)理電路。通過在ADC之前的模擬域中進行可編程縮放,輸入信號被縮放以使用ADC的整個范圍。然后,在數(shù)字域中,可以使用右移將數(shù)字輸出分回去,以便所需的(或SFF-8472規(guī)定的)LSB不受影響,甚至對用戶透明。
模擬監(jiān)視器輸入
DS1863/DS1865 MON輸入框圖如圖1所示。為清楚起見,僅說明了一個輸入,盡管這些概念適用于所有四個 MON 輸入(MON1、MON2、MON3 和 MON4)。MON輸入用于監(jiān)控發(fā)射功率和接收功率等信號。
圖1.DS1863/DS1865上的MON輸入框圖
如圖1所示,單端電壓施加于DS1863/DS1865 MON引腳。在模擬域中,電壓被饋入可編程刻度塊。該刻度塊可以校準(zhǔn)MON通道,以實現(xiàn)所需的LSB或滿量程電壓。滿量程電壓是所需的LSB × 2n,其中 n 是位數(shù)。此外,比例塊可以在內(nèi)部獲得小輸入信號,以最大限度地利用ADC。稍后將更詳細地介紹此過程。
比例塊之后是13位ADC。13 位轉(zhuǎn)換以 2 字節(jié)(16 位)值左對齊輸出。ADC可以輸出0000h至FFF8h的數(shù)字值。
在ADC之后,數(shù)字化信號通過用戶可編程數(shù)字偏移進一步調(diào)整。該數(shù)字偏移可用于通過簡單地執(zhí)行數(shù)字加法在內(nèi)部添加正或負偏移。需要注意的是,正偏移將鉗制在FFF8h的數(shù)字值上;負偏移的滿量程數(shù)字值將小于FFF8h(因為負偏移從轉(zhuǎn)換中減去)。在這種情況下,最小數(shù)字值將被鉗位在0000h。有關(guān)數(shù)字偏移的詳細信息將在后面的“偏移寄存器”部分中提供。
右移是數(shù)字值輸出前的最終操作。每個 MON 輸入具有三個位,用于控制所需的右移位數(shù)。(右移的好處將在后面討論。將三位設(shè)置為零將禁用右移功能。與偏移一樣,右移也會影響滿量程數(shù)字輸出。例如,如果設(shè)置為兩個右移,滿量程數(shù)字輸出將變?yōu)?3FFEh。執(zhí)行移位后,該值將寫入用戶讀取轉(zhuǎn)換的相應(yīng)寄存器(較低內(nèi)存,寄存器64h-6Bh)。這也是用于警報和警告比較的值。
關(guān)于密碼訪問的說明
四個MON輸入的電平和失調(diào)值設(shè)置見DS02/DS1863的表1865h。若要讀取或?qū)懭脒@些值,需要級別 2 密碼訪問 (PW2)。如果在密碼條目字節(jié)中輸入PW2級別條目的密碼(PWE位于較低內(nèi)存中,寄存器7Bh-7Eh),則授予此訪問權(quán)限。
工廠校準(zhǔn)的 MON 輸入
DS1863/DS1865 MON輸入均經(jīng)過工廠調(diào)整至2.5V滿量程電壓。此外,每個數(shù)字失調(diào)在工廠編程為零,因此0V輸入將輸出0000h的數(shù)字值。右移出廠默認值也是 0。工廠校準(zhǔn)的DS1863/DS1865的傳遞函數(shù)如圖2的圖B所示,稍后將介紹。
工廠調(diào)整的器件將輸出 8192 個數(shù)字值之一,輸入電壓范圍為 0 至 2.5V,305 位轉(zhuǎn)換的分辨率為 2μV (5.8192V/13)。理想情況下,要數(shù)字化的輸入信號是0至2.5V信號,以便利用整個范圍。但是,在實際應(yīng)用程序中,情況并非總是如此。例如,對于接收電源(Rx Power),0至.5V的電壓是常見的,這意味著80%的數(shù)字輸出代碼永遠不會被使用。因此,能夠生成13個代碼的8192位ADC將僅輸出1638個代碼中的一個。其余 6554 個數(shù)字代碼將永遠不會使用。此外,在使用1638個代碼中,分辨率保持在305μV。
為了更好地利用13位ADC,必須將DS1863/DS1865 MON值重新校準(zhǔn)至0.5V滿量程電壓。然而,僅重新校準(zhǔn)MON值并不能解決輸入信號問題,因為LSB會發(fā)生變化,不再與所需的LSB匹配。最終,為了從ADC獲得最大性能,必須使用右移來調(diào)整比例和失調(diào)值。
內(nèi)部校準(zhǔn)和右移
當(dāng)要監(jiān)控的信號很小,因此不使用整個ADC范圍時,內(nèi)部校準(zhǔn)和右移是有益的。通過在模數(shù)轉(zhuǎn)換之前放大模擬域中的信號,然后將其除以數(shù)字域中的相同因子,可以保留所需的LSB。每右移一次(最多三),精度和準(zhǔn)確度都會提高兩倍。經(jīng)過三次右移后,精度或準(zhǔn)確度不會進一步提高。
使用內(nèi)部校準(zhǔn)和右移的好處可以在圖2所示的例子中得到最好的說明。圖A是要監(jiān)控的示例信號的電壓與時間的關(guān)系圖。示例信號在0至0.5V之間擺幅。圖B和C表示MON輸入電壓與數(shù)字輸出的關(guān)系。后面的曲線分別顯示了工廠校準(zhǔn)的傳遞函數(shù)、使用兩個右移位的示例傳遞函數(shù)和 2.5V/4 = 0.625V 的滿量程電壓。0.625V的滿量程電壓意味著浪費的代碼更少,從而導(dǎo)致轉(zhuǎn)換比2.5V滿量程電壓大四倍,但隨后又被四倍(兩個右移)分頻。下面將討論確定右移位數(shù)以及滿量程電壓。這里使用兩個右移只是為了比較右移示例與不右移。所使用的設(shè)備設(shè)置以及與每個傳遞函數(shù)相關(guān)的計算顯示在每個相應(yīng)的傳遞函數(shù)下方。
圖2.數(shù)據(jù)說明了無右移位 (B) 與右移位 (C) 之間的比較。
圖 2 中的所有三個圖都在同一 y 軸和刻度上并排顯示。可以在輸入信號(圖A)和每個傳遞函數(shù)上的任何特定點上繪制一條水平線,以便對數(shù)字輸出進行粗略的近似。如果返回到0至0.5V的示例輸入信號,其中0.5V由所有三個圖的粗體水平線表示,則通過比較圖B和C可以看出右移的好處。當(dāng)ADC的輸入范圍跨越的電壓范圍遠大于輸入信號范圍時,將浪費許多步長(見圖B)。1638 個中僅使用 8192 個;B地塊中剩余的80%被浪費了。相比之下,圖C顯示,通過在內(nèi)部校準(zhǔn)到較小的滿量程電壓并使用右移,精度提高了。現(xiàn)在,6554個數(shù)字代碼中的8192個用于對信號進行數(shù)字化。此外,右移后,保持所需的LSB。右移對用戶是透明的。這可以通過觀察兩個圖輸出大致相同的數(shù)字值來驗證。
確定需要多少次右移
應(yīng)用所需的右移次數(shù)是滿量程電壓(內(nèi)部校準(zhǔn))以及用于給定輸入信號的數(shù)字代碼百分比的函數(shù)。如果輸入信號的最大電壓已知(除了滿量程電壓之外),則可以計算出預(yù)期的數(shù)字輸出。否則,在工程評估期間需要“動手”方法,以確定數(shù)字輸出的范圍,從而確定理想的正確換檔次數(shù)。動手方法詳述如下。
將右移位設(shè)置為 0。
在內(nèi)部校準(zhǔn)器件以產(chǎn)生所需的LSB,這將決定初始滿量程電壓。(本應(yīng)用筆記稍后將討論此過程。
應(yīng)用最大輸入信號并讀取相應(yīng)的數(shù)字輸出以確定使用范圍。
確定使用的ADC范圍的百分比。如果數(shù)字讀數(shù)超過7FFFh,則不應(yīng)使用右移(零右移)。但是,如果數(shù)字讀數(shù)小于7FFFh,則至少可以使用一個右移位。如果數(shù)字讀數(shù)小于3FFFh,則可以使用兩個右移,依此類推。表 1 對此進行了總結(jié)。
表 1.用于各種輸出范圍的右移位數(shù)
零右移使用的輸出范圍 | 所需的右移次數(shù) |
0h..FFFFh | 0 |
0h..7FFFh | 1 |
0h..3FFFh | 2 |
0h..1FFFh | 3 |
為了補償右移導(dǎo)致的數(shù)字值的劃分,必須在模擬域中添加增益,以保持所需的LSB。該增益的相加方法是使用以下公式計算新的滿量程電壓:
新滿量程電壓 = 初始滿量程電壓/2# 右移位
因此,如果步驟2的內(nèi)部校準(zhǔn)導(dǎo)致滿量程電壓為2.0V,并且如果數(shù)字讀數(shù)大于1FFFh但從未超過3FFFh,則兩次右移將是理想的。因此,本例的新滿量程電壓為2.0V/22= 0.5V。
在內(nèi)部校準(zhǔn)通道(右移位仍設(shè)置為0)至新的滿量程電壓。
將正確的移位設(shè)置為其新值。
一旦評估確定了特定應(yīng)用的理想右移位數(shù)和滿量程電壓,只需步驟1、6和7即可進行生產(chǎn)校準(zhǔn)。
內(nèi)部校準(zhǔn)和右移寄存器
DS1863/DS1865器件寄存器負責(zé)每個模擬通道的內(nèi)部校準(zhǔn)和右移設(shè)置,如表2所示。顯示每個 MON 通道設(shè)置的寄存器地址以及 V抄送.V抄送為完整起見,已包含在表中,但本應(yīng)用筆記將不作討論。數(shù)字轉(zhuǎn)換的位置也包含在表中,以顯示其相對位置。請注意,刻度、偏移和右移寄存器位于存儲器表02h中(不要與本應(yīng)用筆記的表2混淆)。內(nèi)存表02h是通過將02h寫入表中選擇下內(nèi)存中的字節(jié)來選擇的,寄存器7Fh。
表 2.DS1863/DS1865內(nèi)部校準(zhǔn)和右移寄存器
V抄送 | 月1 | 月2 | 月3 | 月4 | |
規(guī)模* | 92-93小時 | 94-95小時 | 96-97小時 | 98-99小時 | 9A-9Bh |
抵消* | A2-A3小時 | A4-A5小時 | A6-A7小時 | A8-A9小時 | AA-ABh |
右移* | 不適用 | 8Eh (B6-B4) | 8Eh (B2-B0) | 8Fh (B6-B4) | 8Fh (B2-B0) |
讀數(shù) | 62-63小時 | 64-65小時 | 66-67小時 | 68-69小時 | 6A-6Bh |
*表 02h |
刻度寄存器
刻度寄存器是一個雙字節(jié)值,通過調(diào)整輸入開關(guān)電容網(wǎng)絡(luò)來確定特定監(jiān)控通道的增益/衰減量。因此,刻度寄存器允許用戶將滿量程電壓校準(zhǔn)到~250mV至6.5536V之間的任何所需值。由于工藝變化和最終應(yīng)用的不同要求,必須校準(zhǔn)該寄存器。此校準(zhǔn)和確定要寫入秤寄存器中的值的過程將在后面的“如何內(nèi)部校準(zhǔn)”部分中提供。
注意:校準(zhǔn)DS1863/DS1865時,了解失調(diào)和右移寄存器的值非常重要。否則,如果這些值不為零且未補償,則不會按預(yù)期校準(zhǔn)設(shè)備。
偏移寄存器
失調(diào)寄存器是一個雙字節(jié)值,用于確定應(yīng)用于每個受監(jiān)控輸入的數(shù)字偏移量。DS1863/DS1865的失調(diào)是轉(zhuǎn)換值的簡單數(shù)字加法或減法。因此,一旦比例被修剪到所需的值(并且在啟用右移之前),就可以對偏移進行編程,以消除任何偏移或移動范圍。
偏移量的計算方法是首先確定應(yīng)添加或減去多少計數(shù)。通常完成此操作的一種方法是應(yīng)用零輸入(例如激光關(guān)閉),然后讀取轉(zhuǎn)換。此過程將產(chǎn)生您從所有轉(zhuǎn)化中減去的值。
需要寫入失調(diào)寄存器的值是通過在公式1中插入所需計數(shù)來計算的:
示例1:如果輸入電壓參考地以外的基準(zhǔn)電壓源,則可以從測量值中減去該基準(zhǔn)電壓源。假設(shè)當(dāng)我們將引用應(yīng)用于 MON 輸入時,讀取計數(shù)為 200 (C8h)。您可以使用偏移寄存器從模數(shù)轉(zhuǎn)換中減去 200 (C8h) 以將其歸零。使用等式確定要寫入寄存器的內(nèi)容:
請記住,在這種情況下正在執(zhí)行減法,因此滿量程計數(shù) (FFF8h) 也將減少 C8h,從而得到新的滿量程計數(shù) FF30h。
示例 2:假設(shè)您要向讀數(shù)添加 200 個計數(shù)。這將產(chǎn)生以下等式:
要計算新的滿量程計數(shù),您需要(嘗試)將 C8h 添加到 FFF8h。但是,F(xiàn)FF8h是最大可能的讀數(shù),因此滿量程計數(shù)將保持FFF8h。較低的計數(shù)不是 00h,而是 C8h,因為此偏移量將添加到所有讀數(shù)中。
示例 3:計算零偏移的偏移值:
這也是偏移寄存器的出廠默認設(shè)置。
右移寄存器
右移寄存器見表02h,寄存器8Eh-8Fh。由于 MON1 至 MON4 最多可以執(zhí)行 1 個右移位,因此每個 MON 輸入需要 2 位。MON02 和 MON8 的設(shè)置位于表 3h,寄存器 4Eh,而 MON02 和 MON8 的設(shè)置駐留在表 1h 中,寄存器 00Fh。有關(guān)位的位置,請參閱數(shù)據(jù)手冊(或上面的表<>)中的存儲器圖。這些EEPROM寄存器的出廠默認值為<>h,禁用右移。
為了說明進一步右移的結(jié)果,圖3顯示了生成的MON值的幾個示例。
圖3.MON寄存器右移的示例。
如何進行內(nèi)部校準(zhǔn)
本應(yīng)用筆記討論了二叉搜索方法。該算法的輸出是標(biāo)度和偏移寄存器值,它們產(chǎn)生所需的傳遞函數(shù),即所需的LSB。
要使用該算法,必須能夠做兩件事:將激光設(shè)置為兩種不同的強度,例如最小和接近最大值(約 90%);并能夠經(jīng)歷多次迭代。對于非光學(xué)應(yīng)用,必須根據(jù)命令對MON輸入施加兩種不同的電壓。本應(yīng)用筆記中提供的算法使用最大值的90%,因此可以進行“>”比較。但是,當(dāng)應(yīng)用所需滿量程的百分比時,計算數(shù)字值的相應(yīng)百分比也很重要。
偽代碼示例
用于查找刻度的二叉搜索的解釋最好通過以下偽代碼示例提供。
/* Assume that the null input is 0.5V */ /* Assume that the desired LSB of the lowest weighted bit is 50μV */ Max Reading = 65535 x 50e-6 /* 3.27675 */ CNT1 = 0.5 / 50e-6 /* 10000 */ CNT2 = 0.90 x FS / 50e-6 /* 58981.5 */ /* The null input is 0.5V and the 90% of FS input is 0.9*3.27675 = 2.949075V */ Set the trim-offset-register to zero Set Right Shift register to zero (typically zero. See Right Shifting section above..) Scale_result = 0h Clamp = FFF8h/2Right_Shift_Register For n = 15 down to 0, Begin scale_result = scale_result + 2n Force the 90% FS input (2.949075V) Meas2 = read the digital result from the part If Meas2 >= Clamp then scale_result = scale_result – 2n Else Begin Force the null input (0.5V) Meas1 = read the digital result from the part If (Meas2 – Meas1) > (CNT2 – CNT1) then scale_result = scale_result – 2n End End Set the Scale register to scale_result
刻度寄存器現(xiàn)已設(shè)置,轉(zhuǎn)換分辨率將最好地匹配預(yù)期的LSB。下一步是校準(zhǔn)DS1863/DS1865的失調(diào)。將正確的刻度值寫入刻度寄存器后,再次強制將零輸入輸入到引腳。讀取零件的數(shù)字結(jié)果(Meas1)。失調(diào)可以通過使用CNT1作為公式1中的輸入來計算。
偽代碼的解釋
該算法首先將偏移和右移寄存器設(shè)置為已知狀態(tài),即零偏移和零右移。盡管此示例將兩個寄存器都設(shè)置為零,但只要對它們進行補償,就可以使用其他值。例如,當(dāng)從編程偏移開始時,F(xiàn)FF8h可能不再是箝位的滿量程數(shù)字值。(請參閱偏移寄存器部分。除了初始化寄存器外,該算法還首先計算一些重要常數(shù),這些常數(shù)是所需LSB的函數(shù)。
刻度值的二叉搜索首先將刻度寄存器設(shè)置為半刻度 8000h。然后,通過將90%最大輸入施加到要校準(zhǔn)的MON通道,然后讀取相應(yīng)的數(shù)字轉(zhuǎn)換來測試刻度值。此轉(zhuǎn)化值稱為 Meas2。檢查 Meas2 以查看它是否被鉗位,F(xiàn)FF8h(因為偏移和右移為零)。如果讀數(shù)被箝位,則無法斷定轉(zhuǎn)換實際上是FFF8h還是更大(也是FFF8h)。無論哪種方式,比例設(shè)置都太高。在二叉搜索方式中,刻度值被切成兩半,并重復(fù)該過程,直到找到非夾緊刻度值。
一旦找到非鉗位Meas2,算法就會通過強制零輸入并讀取其數(shù)字轉(zhuǎn)換來繼續(xù)。此轉(zhuǎn)換變?yōu)?Meas1。最后,計算Meas2和Meas1之間的增量,并使用算法開始時計算的常數(shù)與所需的增量(CNT2 - CNT1)進行比較。如果 Meas2 - Meas1 大于 CNT2 - CNT1,則刻度再次減半。否則,如果 Meas2 - Meas1 小于 CNT2 - CNT1,則通過將刻度切成兩半來增加刻度,這次將其添加到當(dāng)前刻度中。該過程將重復(fù),直到總共執(zhí)行 16 次迭代。結(jié)果是一個 16 位值,可產(chǎn)生所需的比例(和所需的 LSB)。
還有另一種可視化秤校準(zhǔn)過程的方法。從 15 位刻度寄存器的 MSB (b16) 開始,將位設(shè)置為 1(所有其他位最初設(shè)置為 0)。當(dāng)MSB = 1時,執(zhí)行施加模擬輸入和讀取數(shù)字輸出的過程。如果讀數(shù)被鉗位,則刻度過高,MSB寫回0。否則,MSB 仍為 1。MSB現(xiàn)已為人所知?,F(xiàn)在這個過程進入下一個位,b14。將 b14 設(shè)置為 1(將 b15 設(shè)置為已確定的內(nèi)容)。向下到 b13 的位 0 仍然是 0?,F(xiàn)在完成該過程以確定增益是否仍然太高。如果是這樣,則 b14 變?yōu)?0。否則,它將變?yōu)?1。然后,該過程逐位繼續(xù),直到確定所有 16 位。結(jié)果再次是一個 16 位值,它產(chǎn)生所需的比例。
一旦達到所需的刻度,就可以校準(zhǔn)新的偏移量,或者可以將刻度保持在 0(無偏移)。校準(zhǔn)方法取決于如何使用偏移特征。產(chǎn)品數(shù)據(jù)手冊中算法附帶的說明假設(shè)用戶希望應(yīng)用負偏移來使數(shù)字讀數(shù)為零,以便零模擬輸入將產(chǎn)生所有零輸出。只需應(yīng)用零模擬輸入并讀取轉(zhuǎn)換即可完成此操作。如果零輸入(例如激光關(guān)閉)產(chǎn)生數(shù)字輸出,例如20h,則可以對偏移進行編程,以便從每次轉(zhuǎn)換中數(shù)字減去20h。在本例中,將20h代入失調(diào)公式,然后將結(jié)果編程到所需MON通道的失調(diào)校準(zhǔn)寄存器中。
內(nèi)部校準(zhǔn)和右移示例
以下示例旨在最好地演示本應(yīng)用筆記中介紹的概念。
在此示例中,MON3 用于監(jiān)視 Rx 電源。當(dāng)施加 -40dBm 的最小輸入時,MON10 引腳的電壓為 3mV。該輸入所需的數(shù)字輸出為0000h。當(dāng)施加0dBm輸入時,MON300提供3mV。在這種情況下,所需的數(shù)字輸出為2710h,選擇滿足SFF-8472規(guī)定的LSB(Rx功率的LSB為0.1μW)。
在本例中,確定理想的右移次數(shù)相對簡單,因為已經(jīng)給出了所需數(shù)字輸出的范圍(0000h-2710h)。使用上面的表 1,理想的右移次數(shù)是 2710。為了使300h成為兩次右移后的最終輸出,我們可以得出結(jié)論,在右移之前,9mV的輸入必須導(dǎo)致40C9h的轉(zhuǎn)換。因此,對于40mV的輸入,內(nèi)部校準(zhǔn)將用于“增益”轉(zhuǎn)換至300C3h。一旦失調(diào)的內(nèi)部校準(zhǔn)和編程完成,將啟用兩個右移。表 <> 總結(jié)了我們的示例。
表 3.內(nèi)部校準(zhǔn)和右移示例
客戶信號接收功率 (dBm) | 施加于 MON3 引腳的電壓 (mV) | 校準(zhǔn)期間的數(shù)字輸出(0 右移)(十六進制) | 最終數(shù)字輸出(2 個右移)(十六進制) |
-40 | 10 | 0000 | 0000 |
50 | 0563 | ||
100 | 0C1F | ||
150 | 12分貝 | ||
200 | 1997 | ||
250 | 2051 | ||
0 | 300 | 9C40 | 2710 |
一旦確定了輸入和輸出之間的關(guān)系(如表3所示),數(shù)據(jù)手冊中提供的內(nèi)部校準(zhǔn)程序?qū)⒂糜趯ζ骷M行內(nèi)部校準(zhǔn)。例程首先執(zhí)行一些初步計算,如下所示。請注意,此處未使用數(shù)據(jù)手冊例程中顯示的90%,因為第二個校準(zhǔn)點(300mV = 9C40h)已經(jīng)小于滿量程值的90%。
給定表 3,進行以下計算:
LSB = (0.300V – 0.010V)/(9C40h – 0000h) = 0.290V/40,000 = 7.25μV
最大讀數(shù) = LSB x 65535 = 7.25μV x 65535 = 0.475128V
CNT1 = 0.010/LSB = 1379.3 => 1379(十進制)
CNT2 = 0.300/LSB = 41379.31 => 41379(十進制)
CNT1 和 CNT2 是應(yīng)用兩個校準(zhǔn)點時的預(yù)期(所需)數(shù)字輸出。內(nèi)部校準(zhǔn)例程將迭代,搜索盡可能接近由這兩個值確定的斜率的斜率。
例程的迭代部分經(jīng)歷了 16 個周期,以二叉搜索方式對斜率進行編程,然后檢查它是否等效于所需的斜率。在本例中,DS1863/DS1865采用內(nèi)部校準(zhǔn)程序進行校準(zhǔn);所有 16 次迭代的輸入和輸出如表 4 所示。
表 4 的第一列“迭代”等效于例程中的 n。列scale_result是每次迭代編程到Scale寄存器(設(shè)備表02h,寄存器98-99h)中的值。Meas2和Meas1列是從器件讀取的數(shù)字值,分別施加300mV和10mV輸入。最后,對于Meas2沒有鉗位的迭代,將Meas2 - Meas1與CNT2 - CNT1進行比較。如果 Meas2 - Meas1 大于 CNT2 - CNT1,則scale_result太大。對應(yīng)于該迭代的 Scale 位變?yōu)榱?,這反過來又決定了連續(xù)迭代的scale_result。完成所有 16 次迭代后,Scale 值就已知了。此示例中使用的設(shè)備導(dǎo)致縮放值為 5038h。
表 4.實際內(nèi)部校準(zhǔn)值
從表 3 中,我們看到迭代 3 中達到了最小增量(其中 Meas2 - Meas1 和 CNT2 - CNT1 都在 40000)。用戶可以在算法中添加一個變量,用于檢查在哪個迭代時達到最小增量,然后將該迭代的scale_result值用作 Scale 寄存器的值,而不是最終值。
將器件編程為其新的標(biāo)度值時,通過強制10mV(我們想要讀取0000h的電壓)并讀取數(shù)字結(jié)果來確定偏移量。本例中使用的器件輸出值為0558h,施加10mV。使用偏移公式(公式 1),偏移計算如下:
MON3 偏移量 = -(-0558h/4) = 0156h
最后,新的鉗位值可以計算為:
新鉗位值(右移前)= FFF8h - 0558h = FAA0h
內(nèi)部校準(zhǔn)完成后,通過向表20h寫入02h,寄存器8Fh來啟用兩個右移位。
結(jié)論
DS1863/DS1865的內(nèi)部校準(zhǔn)和右移功能提供了最大的靈活性,使器件適合各種應(yīng)用。本應(yīng)用筆記提供了DS1863/DS1865數(shù)據(jù)資料中沒有的信息,特別是為什么內(nèi)部校準(zhǔn)和右移是有益的,以及如何實現(xiàn)它們。本文還提供了一個動手示例,將概念關(guān)聯(lián)在一起,并顯示內(nèi)部校準(zhǔn)過程中從DS1863/DS1865讀取的實際數(shù)據(jù)。
審核編輯:郭婷
-
控制器
+關(guān)注
關(guān)注
112文章
16103瀏覽量
177075 -
寄存器
+關(guān)注
關(guān)注
31文章
5294瀏覽量
119816 -
adc
+關(guān)注
關(guān)注
98文章
6391瀏覽量
543774
發(fā)布評論請先 登錄
相關(guān)推薦
評論