可編程數(shù)字電位器與AVR單片機的通信說明
1 引言
AVR嵌入式單片機具有豐富的硬件、軟件資源,其中的串行I2C接口能滿足很多應(yīng)用場合的要求,兩個AVR單片機通過I2C總線直接連接就可實現(xiàn)單片機相互通信;AVR單片機還可以和任何具有I2C總線接口的外設(shè)直接連接而無須其它硬件電路支持。而X9221系列可編程數(shù)字電位器在智能測試設(shè)備上應(yīng)用非常廣泛,通過I2C總線可以簡單地構(gòu)成單片機與各種外設(shè)之間乃至與計算機之間的通信,建立友好的人機界面聯(lián)系。硬件設(shè)計簡單、靈活,只需要將所有設(shè)備的SDA和SCL信號線分別并聯(lián)在一起并加上拉電阻即可,有助于提高設(shè)備的自動化水平、可靠性、穩(wěn)定性及電氣裝配的工藝性。AVR單片機和X9221系列可編程數(shù)字電位器都有內(nèi)置的E2ROM單元,可以非常方便地為用戶保留一些工藝參數(shù);X9221系列電位器0~63級的變化可以將電位器調(diào)節(jié)到手動無法實現(xiàn)的平滑級別,調(diào)節(jié)過程中不會產(chǎn)生噪聲且壽命長、不受機械振動污染潮濕影響等。
2 X9221系列數(shù)字電位器介紹
2.1電氣特性及硬件結(jié)構(gòu)原理
X9221系列電位器共有15種規(guī)格型號,有雙列直插DIP20和表面貼裝SOIC20兩種封裝。電源電壓民品級、工業(yè)級為4.5~5.5V,軍品級為2.7~5.5V;一組封裝芯片內(nèi)有兩個數(shù)字電位器,參見圖1,X9221系列電位器封裝及引腳功能。內(nèi)置的E2ROM單元,可以在掉電時將數(shù)據(jù)很好地保存,上電時自動加載到自己的RAM單元,電位器接口是標準的I2C總線,其中的數(shù)據(jù)寄存器可通過I2C總線進行讀寫操作;電位器滑動端(VW0/RW0,VW1/RW1)相當于普通電位器中間抽頭,是無摩擦"觸點"。
X9221系列電位器總電阻配置有3種阻值2 kΩ、10kΩ、50kΩ,用戶可根據(jù)自己的設(shè)計需求來選型。每一個芯片有A0~A3四位二進制編程的器件地址以區(qū)分I2C總線上接入的不同外設(shè),因此,一條總線上最多可接入16個X9221器件。器件內(nèi)部有兩組類型的寄存器"DATA"和"WCR",他們的訪問則由串行數(shù)據(jù)線上的命令字來確定。電阻陣列通過內(nèi)部編碼可以有64種狀態(tài),0~63種狀態(tài)的連續(xù)變化,相當于電位器中心抽頭從普通電位器的一端滑動到另一端;所有的寄存器都可以通過I2C總線進行雙向操作,即可讀可寫。
"在線"實時的調(diào)節(jié)電位器"中間抽頭位置"可以有3種方法:通過I2C總線向WCR寄存器寫數(shù)據(jù)(串行加載)、通過對相應(yīng)的DATA類寄存器直接寫數(shù)據(jù)(并行加載)、以及增量減量命令(下面會討論到)直接寫數(shù)據(jù);概念上電位器"中間抽頭位置"可以由"WCR"寄存器來替代,其另一類寄存器可以由"DATA"寄存器來替代。
評論