AD7705應用總結

2021-08-17 11:10:30 字數 2996 閱讀 9231

ad7705應用總結: 

yw2314r12專案中用到了ad7705,先將ad7705的應用經驗以及注意要點總結如下,這些經驗同樣適用於ad7799、ad7706等ad公司的擁有校準功能的ad晶元。 

1.時序注意要點:數字介面迷失的時候可以通過adin輸入持續32個脈衝週期(dclk)以上的高電平將復位ad7705的數字介面,復位之後要等待500us以上才能訪問ad7705晶元,這種復位方式不會影響ad7705內部的任何暫存器,所有的暫存器將保持復位之前的內容,但所有的暫存器在數字介面迷失的狀態下內容是不確定的,因此強烈建議在復位之後重新設定ad7705內部所有的暫存器,防止錯誤。而晶元管腳reset的復位將使片內所有的暫存器恢復到上電的預設值。時鐘輸入訊號dclk是一種施密特出發訊號,能夠適應光耦合器的慢速邊沿,其他數字輸入訊號的上公升和下降時間不應超過1us。 

2.ad7705時鐘大於2m時,時鐘設定暫存器的clk位應置1,小於2m時應置0。dclk的脈衝寬度要滿足最小的脈寬要求。在時鐘dclk下降之後的低電平期間讀取資料adout。在時鐘dclk的低電平期間設定要寫入資料adin,然後在dclk的上公升沿寫入到7705。寫入資料以及讀取資料的時鐘dclk的數目要與(被寫入或被讀取的暫存器)的位數長度一致,多於或少於(暫存器位長度)的時鐘dclk數目都將導致操作錯誤。在兩次寫操作之間,adin應最好保持在高電平:因為任何(讀或寫)操作都必須從寫通訊暫存器開始,而且寫入通訊暫存器的8個位中的第1位必須為0,後續的位才能被寫入到通訊暫存器。所以當adin為0的時候,萬一時鐘dclk受到干擾導致0寫入通訊暫存器,ad7705會誤認為是寫通訊暫存器的操作開始而等待後續的7位位串,發生這種干擾之後會導致ad7705的數字介面迷失,從而導致內部暫存器的內容也許會變得未知狀態。此外,時鐘訊號dclk在兩次操作ad7705之間要保持高電平。即:在不訪問ad7705的空閒時刻,或者兩次操作之間的空閒時刻,adin、dclk都最好保持高電平為最可靠。 

3.drdy訊號為資料ad轉換完成的指示訊號,低電平期間表示ad轉換完成,可以讀取資料暫存器的內容,高電平期間表示ad轉換正在進行,這時不能訪問資料暫存器。對於系統校準和內部校準也一樣,低電平期間表示校準完成,可以讀取校準暫存器的內容,高電平期間表示校準正在進行,這時不能訪問校準暫存器。違反這些規定的操作,結果時未知的。此外程式中千萬不能把drdy的邏輯搞反,否則結果不可預料。 

4.不管是校準還是資料ad轉換,數字濾波器同步位fsync都要置為0,這樣ad7705的校準或者資料ad轉換工作才能進行,否則校準和ad轉換不會進行,drdy訊號也不會變低。當fsync=0時,在校準或ad轉換結束後drdy訊號將變低,此時可以讀取校準係數或者資料暫存器。 

5.採用非緩衝模式時,ad7705模擬輸入前端的電阻電容的變化對ad轉換精度影響很大。若系統工作時的訊號源、溫度環境、器件引數變化很大,導致ad7705模擬輸入前端電路的引數跟系統校準時的引數不一致,誤差會非常大。緩衝模式能解決這種問題,當使能緩衝模式時,ad7705會在模擬輸入端和ad轉換器之間接入乙個緩衝器buffer,這樣ad7705就能適應模擬輸入前端訊號源的大阻抗、器件引數(電阻電容)的變化、溫度環境的變化等各種與系統校準時的不一致情況(即器件工作條件的變化)。所以,ad7705的校準和正常工作最好都要在緩衝模式下進行。 

6.電壓輸入範圍:對於非緩衝模式,模擬輸入訊號範圍是【gnd-30mv】至【vdd+30mv】之間。對於緩衝模式,模擬輸入訊號範圍是【gnd+50mv】至【vdd-1.5v】之間。 

7.非緩衝模式、單極性、增益為gain:此時ad7705的反相輸入端vin-的範圍是【gnd-30mv】至【vdd+30mv-vref/gain】之間,其中vref為ad7705的參考電壓。正相輸入端vin+的範圍是【v-】至【v-+vref/gain】。如右圖,即v+和v-都必須大於gnd小於vdd,同時還要考慮單極性的輸入範圍,即v-還必須小於vdd+30mv-vref/gain,才不至於模擬輸入為v+max=【v-+vref/gain】時大於vdd+30mv。 

8.非緩衝、雙極性、增益為gain:此時v+和v-都必須大於gan小於vdd,v-還必須小於vdd+30mv-vref/gain,這樣輸入v+max=【v-+vref/gain】不至於大於vdd+30mv。v-還必須大於gnd-30mv +vref/gain,才不至於輸入v+min=【v――vref/gain】時小於gnd-30mv。正相輸入端vin+的正訊號輸入範圍是【v-】至【v-+vref/gain】,正相輸入端vin+的負訊號輸入範圍是【v-】至【v--ref/gain】。如右圖:其中v+max為正的最大輸入,v+min為負的最大輸入。 

txc註解::實際開發中可以開啟緩衝模式以提公升效能。

txc註解:單極性:即訊號不過零點,此處的單極性指的是ain+ - ain-  > 0;雙極性:即訊號過「零」點,此處指的是ain+ - ain-  > 0或ain+ - ain-  < 0。

9.緩衝模式、單極性、增益為gain

:此時ad7705的反相輸入端

vin-的範圍是【gnd+50mv】至【vdd-1.5v-vref/gain】

,其中vref為ad7705的參考電壓。正相輸入端

vin+的範圍是【v-】至【v-+vref/gain】

。如右圖,即v+和v-都必須大於gnd+50mv小於vdd-1.5v,同時還要考慮單極性的輸入範圍,即v-還必須小於vdd-1.5v-vref/gain,才不至於輸入v+max=【v-+vref/gain】時大於vdd-1.5v。 

10.緩衝模式、雙極性、增益為gain

:此時ad7705的反相輸入端

vin-的範圍是【gnd+50mv+vref/gain】至【vdd-1.5v-vref/gain】

,這樣才不至於輸入vin+max=【v-+vref/gain】時導致vin+大於vdd-1.5v、輸入vin+min=【v――vref/gain】時導致vin+小於gnd+50mv。其中vref為ad7705的參考電壓。正相輸入端vin+的正訊號輸入範圍是【v-】至【v-+vref/gain】,正相輸入端vin+的負訊號輸入範圍是【v-】至【v--ref/gain】。如右圖:其中v+max為正的最大輸入,v+min為負的最大輸入。

txc註解:(即

vin+的輸入範圍為【v--ref/gain】至

【v-+vref/gain】

)

MSP430的AD7705驅動程式

2014年8月4日 在網上找了半天msp430的7705的驅動程式,沒乙個能用!現在貼出乙個能用的 ifndef ad7705 define ad7705 define uint unsigned int define uchar unsigned char define adclk h p3out...

AD7705 TM7705使用注意事項

1 空閒是sclk 1 c poa din 1 因為寫暫存器都是從寫通訊暫存器開始,此時第8位必須為0,若din上存在干擾使bit8 1則會持續等待後面7bits,從而rdy不拉低。2 緩衝和非緩衝 非緩衝模式時,ad7705模擬輸入前端的電阻電容的變化對ad轉換精度影響很大,造成測量不準確,所以通...

AD取樣問題總結

說明 論壇討論 乙個100hz的正弦波,我用300hz的取樣率去取樣,那麼根據夏農定律是不是一秒鐘就採集到300個點,因為這個波形是100hz,所以這一秒鐘內就有一百個波形經過,那麼300個點平均到每個波形上就只有3個點了,也就是乙個波形上採集3個點,取樣率一般是sps為單位,而不是用hz,例如30...