高分辨率數(shù)字電位器的軟件實現(xiàn)
3 程序設(shè)計
3.1 讀寫單個數(shù)字電位器函數(shù)設(shè)計
根據(jù)X9241的指令結(jié)構(gòu)和控制時序,可以編寫讀寫單個數(shù)字電位器的程序。
(1)改變電位器中間抽頭命令(寫WCR)時序以寫電位器POT0為例,把電位器0的中間抽頭WCR設(shè)置為20H(X9241每個電位器的最大抽頭數(shù)是 64,即有效值小于63)。命令控制字為101000000B,即AOH;若在電路中AOA1A2A3均接低電平,則器件地址為01010000B,即 50H。其命令序列如下:
Start→發(fā)送地址50H→Ack→發(fā)送命令字A0H→ACK→發(fā)送20H→ACK→Stop。
(2)讀電位器中間抽頭位置命令(讀WCR)時序以讀電位器POT1為例,把電位器1的中間抽頭WCR位置值讀回。命令控制字為100100000B,即90H;若在電路中AOA1A2A3均接低電平,則器件地址為01010000B,即50H。其命令序列如下:
Start→發(fā)送地址50H→Ack→發(fā)送命令字90H→ACK→接收1個字節(jié)→ACK→Stop。
3.2 主函數(shù)設(shè)計
本函數(shù)的功能是把設(shè)計的數(shù)字電位器POT的中間抽頭位置z轉(zhuǎn)換為4個獨立數(shù)字電位器POT0~POT3的中間抽頭位置寄存器WCR的值x0~x3,同時控制POT1、POT2的控制位CM和DW,如圖6所示。
在流程圖中,當(dāng)y64時,POT12(由POT1和POT2串聯(lián))的中間抽頭位置在POT2范圍內(nèi),所以POT1的中間抽頭失效,即置DM1=1;當(dāng)y≥64時,POT12的中間抽頭位置在POT1范圍內(nèi),所以POT2的中間抽頭失效,即置DM2=1。
結(jié) 語
采用軟硬件協(xié)同的方法,能以較低的成本實現(xiàn)高分辯率數(shù)字電位器的設(shè)計。同一芯片中4個數(shù)字電位器的良好匹配和電壓跟隨器的應(yīng)用,使設(shè)計的數(shù)字電位器具有更好的線性度。在實際應(yīng)用中,為了提高帶負(fù)載能力,需要在滑動輸出端接一輸出緩沖器。
評論