《電子技術應用》
您所在的位置:首頁 > 電源技術 > 設計應用 > 高分辨率數字電位器的軟件實現
高分辨率數字電位器的軟件實現
摘要: 與機械電位器相比,數字電位器有許多優點。但是在有些應用場合,數字電位器的分辨率往往達不到設計要求,通常最大抽頭數為1 024。以X9241為例,內部包括一個I2C接口和4個64抽頭的數字電位器,可獨立使用,也可串聯使用,如按常規方法使用,其分辨率較低,即使4個電位器串聯,也只能達到256個抽頭。本文提出了一種軟件、硬件結合的方法,可使電位器的中間抽頭數達到8 001個,分辨率達到O.008%。
Abstract:
Key words :

  引 言

  與機械電位器相比,數字電位器" title="數字電位器">數字電位器有許多優點。但是在有些應用場合,數字電位器的分辨率往往達不到設計要求,通常最大抽頭數為1 024。以X9241" title="X9241">X9241為例,內部包括一個I2C接口和4個64抽頭的數字電位器,可獨立使用,也可串聯使用,如按常規方法使用,其分辨率較低,即使4個電位器串聯,也只能達到256個抽頭。本文提出了一種軟件、硬件結合的方法,可使電位器的中間抽頭數達到8 001個,分辨率達到O.008%。

  1 設計原理

  1.1 基本原理

  高分辨率" title="高分辨率">高分辨率數字電位器POT由4個電位器組成,如圖1所示,4個數字電位器POT0、POT1、POT2、POT3均為64抽頭數字電位器。POTO、 POT3的固定端并聯,滑動端分別接POT12的固定端。POT12由POT1、POT2串聯,組成一個127抽頭的電位器。4個獨立電位器阻值相等,可根據需要選取。高分辨率數字電位器的固定端為VH、VL,滑動端為VW,VW由POT1、POT2的2個滑動端并連。

高分辨率數字電位器POT由4個電位器組成

  假設POT0、POT1、POT2、POT3、POT12的滑動端位置分別為x0、x1、x2、x3、y,POT的滑動端位置為z。

  現采取以下控制策略:

  ①若POT3的滑動端位置為x,則POTO的滑動端位置同步調節到x+1,即兩電位器始終保持1的間隔,相當于粗調節;

  ②調節POTl2滑動端位置y,相當于把間隔為1的區間再細分若干等分,即細調節。

  采用等校電路法,可得到z與x、y的關系。

  設VL、VH端電位分別為0、U,滑動端電位為UW,根據電學公式可得:

公式

  其中,U0W、U1W分別為POT1、POT1滑動端輸出電位,并加到POT12的兩個固定端。

  由式(1)、式(2)推出式(3),得VW端輸出電位。

公式

  即電位器POT的滑動端相對于VL的電阻阻值為:

公式

  若規定z的步進增量為1,則有:

公式

  其中,R為電位器固定端的阻值,x的取值范圍為0~62,y的取值范圍為0~127。z的取值范圍為0~8 001。分辨率為O.008%,中間抽頭數為8 001個。

  因為x、y、z均為整數,所以有:

公式

  即x為z/127的取整,y為z/127的取余。

  1.2 控制算法

  式(5)、(6)即為實現高分辨率數字電位器的基本公式。為了軟件設計,還必須建立POT的中間抽頭位置z與POT0、POT1、POT2、POT3的中間抽頭位置的關系。

  根據圖1可知:

公式

串聯電位器滑動端禁止控制

公式

  2 硬件電路

  2.1 X9241數字電位器

  X9241是Xicor公司生產的數字電位器,內部包括1個I2C接口和4個64位數字電位器POTO、POT1、POT2、POT3。每個數字電位器由電阻陣列及與之對應的滑動端計數寄存器WCR、4個位數據寄存器R0~R3等部分構成。其引腳配置如圖3所示。

X9241引腳配置

  每個電位器由63個電阻段組成,每個電阻陣列的物理終端等效于機械電位器的固定端(VH、VL)。每個陣列的VH和VL以及每個電阻段之間的接點(即抽頭)通過FET開關連接滑動輸出端,而滑動端在電阻陣列中的位置由從WCR控制。其中,VW、VW1、VW2、VW3分別為4個電位器的滑動端,VL0、 VL1、VL2、VL3分別為4個電位器的低端、VH0、VH1、VH2、VH3分別為4個電位器的高端。如果將4個電阻陣列中的2個、3個或4個串聯,可構成127、190或253抽頭的數字電位器。芯片采用I2C總線接口,SDA、SCL分別為串行數據和串行時鐘。A0~A3為芯片地址設置位。

  X9241提供了把陣列串聯起來的方法,可以把1個陣列的63個電阻元件與1個相鄰陣列的電阻元件串聯起來。其控制位在3字節的指令中,其數據字節包括用來定義滑動端位置的6位(LSB)加上高2位:CM(串聯方式)和DW(禁止滑動端)。數據字節如下所示:

數據字節

  2.2 電路設計

  根據圖1的設計原理和圖3的引腳配置圖,可實現高分辨率數字電位器的電路設計,如圖4所示。

高分辨率數字電位器的電路設計

  ①SDA、SCL是I2C總線的串行數據和串行時鐘,與單片機的I/O線相連,單片機是主器件,X9241是從器件,器件地址為:

  0 1 0 1 A3 A2 A1 A0

  高4位固定,低4位由A3~A0的接線方式所決定,按照圖4電路的接線方式,X9241的從地址為50H。

  ②為了提高線性度,可在VW0與VL1之間加入1級運算放大器組成的跟隨器,VW3與VH2之間也加入1級。其改進電路如圖5所示。

改進電路

  3 程序設計

  3.1 讀寫單個數字電位器函數設計

  根據X9241的指令結構和控制時序,可以編寫讀寫單個數字電位器的程序。

  (1)改變電位器中間抽頭命令(寫WCR)時序以寫電位器POT0為例,把電位器0的中間抽頭WCR設置為20H(X9241每個電位器的最大抽頭數是 64,即有效值小于63)。命令控制字為101000000B,即AOH;若在電路中AOA1A2A3均接低電平,則器件地址為01010000B,即 50H。其命令序列如下:

 

  Start→發送地址50H→Ack→發送命令字A0H→ACK→發送20H→ACK→Stop。

  (2)讀電位器中間抽頭位置命令(讀WCR)時序以讀電位器POT1為例,把電位器1的中間抽頭WCR位置值讀回。命令控制字為100100000B,即90H;若在電路中AOA1A2A3均接低電平,則器件地址為01010000B,即50H。其命令序列如下:

  Start→發送地址50H→Ack→發送命令字90H→ACK→接收1個字節→ACK→Stop。

  3.2 主函數設計

  本函數的功能是把設計的數字電位器POT的中間抽頭位置z轉換為4個獨立數字電位器POT0~POT3的中間抽頭位置寄存器WCR的值x0~x3,同時控制POT1、POT2的控制位CM和DW,如圖6所示。

4個獨立數字電位器控制的程序流程圖

  在流程圖中,當y<64時,POT12(由POT1和POT2串聯)的中間抽頭位置在POT2范圍內,所以POT1的中間抽頭失效,即置DM1=1;當y≥64時,POT12的中間抽頭位置在POT1范圍內,所以POT2的中間抽頭失效,即置DM2=1。

  結 語

  采用軟硬件協同的方法,能以較低的成本實現高分辯率數字電位器的設計。同一芯片中4個數字電位器的良好匹配和電壓跟隨器的應用,使設計的數字電位器具有更好的線性度。在實際應用中,為了提高帶負載能力,需要在滑動輸出端接一輸出緩沖器。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 国产精品久久久久999 | 成人影片播放 | 日韩在线 中文字幕 | 制服诱惑中文字幕 | 成人观看视频 | 一级毛片免费完整视频 | 国产99热在线观看 | 农村黄a三级三级三级 | 国产精品视频免费播放 | 欧美在线播放成人a | 国产亚洲综合色就色 | 免费黄色网战 | 暴力调教抖s浪荡总裁受文 白洁性荡生活l六 | 在线观看av网站永久 | 亚洲午夜国产精品 | 正在播放的国产a一片 | 五月亚洲综合 | 欧美日韩中文字幕在线手机版本 | 麻豆视频一区二区 | 毛片在线视频 | 西西人体国模欢欢啪啪写真 | 你懂得在线播放 | 成人欧美一区二区三区 | 中文字幕日韩欧美一区二区三区 | 我要看黄色片 | 波多野结衣一区免费作品 | 日本中文字幕在线精品 | 国产精品欧美日韩一区二区 | 91短视频社区在线观看 | 色淫影院 | 黄色片网站在线播放 | 99v视频国产在线观看免费 | 成人高清在线观看 | 日日夜夜天天人人 | 三级黄网站 | 欧美日本在线观看 | 免费无遮挡无遮羞在线看 | 国产综合精品日本亚洲777 | 日日摸夜夜爽夜夜爽出水 | 欧美色精品天天在线观看视频 | 极品美女aⅴ高清在线观看 极品美女丝袜被的网站 |