軟件實(shí)現高分辨率的非易失性數字電位器的方法
巧妙的利用軟件編程,將x9241內部的四個(gè)64抽頭數字電位器組成一個(gè)高分辨率低成本的數字電位器
本文引用地址:http://dyxdggzs.com/article/20619.htm
數字電位器(dcp)是專(zhuān)為替代傳統機械電位器、可變電阻器而設計的新型集成電路。其通過(guò)i2c、spi以及cs,u/d,inc三線(xiàn)方式與mcu接口,可實(shí)現應用程控調節,也有按鈕控制方式,從而實(shí)現與傳統機械電位器或可變電阻器相同的電位、電阻調節功能的特殊集成電路。與傳統機械電位器相比,數字電位器具有數字調節、長(cháng)壽命、易于裝配、節省空間、不受振動(dòng)影響等突出優(yōu)點(diǎn),已被廣泛應用于醫用設備、儀器儀表、工業(yè)控制、計算機、家用電器、手機、數碼產(chǎn)品等各個(gè)領(lǐng)域。
在有些應用中,如激光二極管的動(dòng)態(tài)偏置調節,使用數字電位器或者微調dac來(lái)控制電壓,就受到了分辨率、接口、成本的限制。為了解決這類(lèi)問(wèn)題,我們將在這里介紹使用低分辨率(64抽頭)、低成本的intersil(xicor)公司i2c總線(xiàn)控制數字電位器x9241組成一個(gè)高分辨率(8001抽頭)的數字電位器的解決方法。
實(shí)現高分辨率的原理
我們假設有三個(gè)數字電位器,pot1和pot2為64抽頭dcp,pot3為128抽頭dcp,其中pot1和pot2用作pot3的vh和vl的設置,并且必須保證pot1和pot2始終為“1”個(gè)位置間隔,那么就有63種不同的電壓間隔施加到pot3上。理論上,當pot3在特殊電壓抽頭127和下一個(gè)電壓間隔的抽頭0之間跳動(dòng)時(shí),應該還有一個(gè)多余的抽頭位置,但是這些抽頭不是多余的,它們的作用可以改善輸出的線(xiàn)性度,因為在相鄰的兩個(gè)電壓間隔中的抽頭0和抽頭127的電壓是一樣的。對于63個(gè)不同間隔的每一個(gè),又借助127個(gè)不同的輸出,就會(huì )有8001(63×127=8001)個(gè)不同的vw輸出可以在vh和vl之間獲得。圖1就是說(shuō)明的這個(gè)概念。

intersil(xicor)公司的x9241把四個(gè)非易失性數字電位器集成在一個(gè)單片cmos微電路中,它的功能框圖如圖2。x9241包含四個(gè)電阻陣列,每個(gè)陣列包含63個(gè)電阻單元。在每個(gè)單元之間和兩個(gè)端點(diǎn)都有可以被滑動(dòng)單元訪(fǎng)問(wèn)的抽頭點(diǎn)?;瑒?dòng)單元在陣列中的位子由用戶(hù)通過(guò)i2c總線(xiàn)控制。每個(gè)電阻陣列與一個(gè)滑動(dòng)端計數寄存器(wcr)和四個(gè)8位數據寄存器聯(lián)系在一起,四個(gè)數據寄存器和滑動(dòng)端計數寄存可以由用戶(hù)直接寫(xiě)入和讀出?;瑒?dòng)端計數寄存器的內容控制滑動(dòng)端在電阻陣列中的位置。數據寄存器的內容可以傳輸到滑動(dòng)端計數寄存器以設置滑動(dòng)端位置,當前滑動(dòng)端的位置也可以傳輸到任何與之聯(lián)系的數據寄存器中?;瑒?dòng)端計數寄存器是易失性的,器件上電時(shí),滑動(dòng)端計數寄存器自動(dòng)的裝入數據寄存器0(r0)中的值。四個(gè)數據寄存器是非易失性的,如果在應用中不需要對電位器有多種設置保存時(shí),可以用作通用存儲單元,用來(lái)保存系統參數或用戶(hù)數據。


x9241極適用于這個(gè)任務(wù),因為其內部正好有四個(gè)獨立的dcp,并且有相鄰dcp串聯(lián)的機制,而且其采用i2c總線(xiàn)控制接口,抽頭位置可以在軟件中直接改變而不需要通過(guò)每個(gè)中間位置轉換。
圖4是使用x9241u(49.37k、49.38k、49.32k、49.24k)器件對電路進(jìn)行測試得到的相鄰抽頭之間的典型結果。大圖表示每個(gè)抽頭的滑動(dòng)端電壓占所加總電壓的百分比,其中插圖為相鄰抽頭之間的分辨率占所加總電壓的百分比。

為了方便理解實(shí)現控制的細節,我們提供了c語(yǔ)言源代碼(代碼由xicor公司提供,我們做了一定的修改)。用戶(hù)只需要自己再編寫(xiě)適用于不同單片機的i2c硬件接口函數(函數名稱(chēng)同程序中介紹一致),在應用程序中加入我們提供的源代碼,簡(jiǎn)單的調用程序中介紹的5個(gè)函數,就可以方便地實(shí)現dcp的高分辨率控制。
關(guān)于x9241實(shí)現高分辨率的軟件源代碼,工程師可到http://www.icbase. com/download/x9241.c去下載。
光敏電阻相關(guān)文章:光敏電阻工作原理
評論