AD7711與TMS320F240接口設計
Interface Design for AD7711 and TMS320F240
GUO Shaopeng, WU Lanjun, YAN Xianyong, LI Jianguo
(Institute of Electrical Engineering, Chinese Academy of Science,
Bei jing 100080, China)
Bei jing 100080, China)
Key words: temperature measure; constant current source; DSP
1AD7711外圍接口電路
圖1是采用三線式連接方法,來消除溫度傳感器導線電阻影響的外圍電路圖。
圖1是采用三線式連接方法,來消除溫度傳感器導線電阻影響的外圍電路圖。

REF+是AD7711進行AD轉換的參考正基準電源,REF+的安全電壓是VSS-~AVDD的任意電壓,在使用中應注意REF+的接入電壓大于模擬輸入量和編程放大倍數的乘積,否則將出現全1的轉換結果。
MODE(6)腳接地:表示控制串行數據讀寫的脈沖SCLK(1)是輸入引腳,由外部MCU控制;MODE(6)接高電平則表示SCLK是輸出引腳,MCU應根據SCLK的輸出脈沖讀寫串行數據。
RTD1(9),RTD2(10)是兩個初始相對誤差小于1%,溫漂跟隨精度3×10-6/℃的一致性非常好的一對200μA電流源。圖示溫度傳感器采用三線連接方式,三根線的長度基本相同,電阻都是r,所以在IN+、IN-輸入端產生相同的共模電壓;經差分輸入的電壓信號只剩下IC激勵Pt100所產生的電壓。這樣便消除了導線電阻,提高了測試精度。
TFS=0:表示MCU向AD7711輸出數據允許(寫允許),RFS=0表示讀允許,但是讀/寫不可同時有效。A0=0:表示對控制寄存器的讀寫;A0=1:表示對數據寄存器或標定寄存器進行讀寫;由控制寄存器高三位的值來選擇數據寄存器或標定寄存器。MCU通過SCLK(1)/A0(4)/TFS(19)/RFS(20)/DRDY(21)/SDATA(22)六個管腳來完成對它的操作,圖1用MCU(TMS320F240)的六個IO口與AD7711相連接。對器件進行讀操作時DRDY和SDATA是輸出管腳,其余是輸入管腳;寫操作時SDATA是輸入管腳,DRDY仍是輸出,但是對寫操作無影響。
MODE(6)腳接地:表示控制串行數據讀寫的脈沖SCLK(1)是輸入引腳,由外部MCU控制;MODE(6)接高電平則表示SCLK是輸出引腳,MCU應根據SCLK的輸出脈沖讀寫串行數據。
RTD1(9),RTD2(10)是兩個初始相對誤差小于1%,溫漂跟隨精度3×10-6/℃的一致性非常好的一對200μA電流源。圖示溫度傳感器采用三線連接方式,三根線的長度基本相同,電阻都是r,所以在IN+、IN-輸入端產生相同的共模電壓;經差分輸入的電壓信號只剩下IC激勵Pt100所產生的電壓。這樣便消除了導線電阻,提高了測試精度。
TFS=0:表示MCU向AD7711輸出數據允許(寫允許),RFS=0表示讀允許,但是讀/寫不可同時有效。A0=0:表示對控制寄存器的讀寫;A0=1:表示對數據寄存器或標定寄存器進行讀寫;由控制寄存器高三位的值來選擇數據寄存器或標定寄存器。MCU通過SCLK(1)/A0(4)/TFS(19)/RFS(20)/DRDY(21)/SDATA(22)六個管腳來完成對它的操作,圖1用MCU(TMS320F240)的六個IO口與AD7711相連接。對器件進行讀操作時DRDY和SDATA是輸出管腳,其余是輸入管腳;寫操作時SDATA是輸入管腳,DRDY仍是輸出,但是對寫操作無影響。
在完成AD7711正確的線路連接后,需對其控制寄存器進行正確的配置才能工作。AD7711控制寄存器是一3字節RAM(即24位),如表1。

(0\0\0)器件進入正常A/D轉換模式,轉換的結果保存在數據寄存器中。(0\0\1)對器件自身進行0輸入校準和滿量程自身校準。(0\1\0)、(0\1\1)把(0\0\1)的0輸入校準和滿量程校準分兩步實現。(1\0\0)系統漂移校準。(1\0\1)連續后臺自動校準。(1\1\0)、(1\1\1)分別對AD7711的0標定寄存器和滿量程標定寄存器進行選擇。
G2\G1\G0:設置可編程放大器的放大倍數。A=2g,g是(G2/G1/G0)二進制轉為十進制數。
CH:選擇輸入通道(0:表示選擇差分通道(IN+\IN-);1:表示選擇IN2(17)輸入通道)。
PD:功率控制。0:正常運行;1:低功耗。
WL:AD轉換結果位數設置。0:16位轉換結果;1:24位轉換結果。
RO:供給傳感器的激勵電流。0:關斷200μA激勵電流;1:開通200μA激勵電流。值得注意的是,在測量鉑電阻兩端電壓時,需要分別選擇通道1、2(CH=0、1),并使RO=1;否則并沒有電流輸出。
BO:判斷傳感器燒斷的4.5μA供給電流。0:關斷;1:開通。當鉑電阻傳感器意外處于斷開狀態時,通過打開BO電流,AD轉換結果全1,判斷傳感器處于斷路的故障狀態。正常工作時BO=0關斷電流。
B/U:AD轉換極性選擇。0:雙極性;1:單極性。
FS11~FS0:濾波頻率設置。片內低通濾波器頻率設置公式:
?
fclk是外接晶振的頻率,一般為10MHz;code是FS11~FS0二進制轉為十進制的值。計算出的頻率(frequency)是AD7711轉換數據刷新的頻率,約為截止頻率的3.8倍。
2.1控制寄存器的讀寫
對控制寄存器寫:寫控制寄存器的時序如圖2所示。A0(4)=0選中控制寄存器,TFS(19)=0/RFS(20)=1表示寫允許,使能SCLK。在SCLK脈沖的上升沿,把SDATA(22)的數據送入控制寄存器,所以SDATA上的送入數據應比SCLK的上升沿信號先有效。每個SCLK送入一位,高位在前低位在后,必須一次送入24位,如果少于24位,該次寫命令無效,如果多于24位多于部分被忽略。
G2\G1\G0:設置可編程放大器的放大倍數。A=2g,g是(G2/G1/G0)二進制轉為十進制數。
CH:選擇輸入通道(0:表示選擇差分通道(IN+\IN-);1:表示選擇IN2(17)輸入通道)。
PD:功率控制。0:正常運行;1:低功耗。
WL:AD轉換結果位數設置。0:16位轉換結果;1:24位轉換結果。
RO:供給傳感器的激勵電流。0:關斷200μA激勵電流;1:開通200μA激勵電流。值得注意的是,在測量鉑電阻兩端電壓時,需要分別選擇通道1、2(CH=0、1),并使RO=1;否則并沒有電流輸出。
BO:判斷傳感器燒斷的4.5μA供給電流。0:關斷;1:開通。當鉑電阻傳感器意外處于斷開狀態時,通過打開BO電流,AD轉換結果全1,判斷傳感器處于斷路的故障狀態。正常工作時BO=0關斷電流。
B/U:AD轉換極性選擇。0:雙極性;1:單極性。
FS11~FS0:濾波頻率設置。片內低通濾波器頻率設置公式:

fclk是外接晶振的頻率,一般為10MHz;code是FS11~FS0二進制轉為十進制的值。計算出的頻率(frequency)是AD7711轉換數據刷新的頻率,約為截止頻率的3.8倍。
2.1控制寄存器的讀寫
對控制寄存器寫:寫控制寄存器的時序如圖2所示。A0(4)=0選中控制寄存器,TFS(19)=0/RFS(20)=1表示寫允許,使能SCLK。在SCLK脈沖的上升沿,把SDATA(22)的數據送入控制寄存器,所以SDATA上的送入數據應比SCLK的上升沿信號先有效。每個SCLK送入一位,高位在前低位在后,必須一次送入24位,如果少于24位,該次寫命令無效,如果多于24位多于部分被忽略。


在對控制寄存器高三位寫(1\1\0)或(1\1\1)指令后,下一條指令是對標定寄存器讀寫。(1\1\0)表示后序的操作針對0標定寄存器,(1\1\1)則表示針對滿量程標定寄存器。在對標定寄存器讀寫時A0=1,每次寫入都應是24位。所以對標定寄存器操作的時序圖與控制寄存器操作的時序圖唯一的不同是:A0是高電平而非低電平。
2.3數據寄存器的讀取
讀數據寄存器的時序如圖4所示。數據寄存器中保存AD的轉換結果,DRDY=0表示已有新結果數據保留其中,如果數據沒有被及時讀出,數據寄存器中的數據會被實時更新。當DRDY=0,在RFS的下降沿首先把MSB送出,然后在SCLK的下降沿依次把后序數據從數據寄存器輸出到SDATA上,當最后一位數據被送出后,DRDY輸出變為高電平,并關斷SDATA信號的輸出。
2.3數據寄存器的讀取
讀數據寄存器的時序如圖4所示。數據寄存器中保存AD的轉換結果,DRDY=0表示已有新結果數據保留其中,如果數據沒有被及時讀出,數據寄存器中的數據會被實時更新。當DRDY=0,在RFS的下降沿首先把MSB送出,然后在SCLK的下降沿依次把后序數據從數據寄存器輸出到SDATA上,當最后一位數據被送出后,DRDY輸出變為高電平,并關斷SDATA信號的輸出。

只要遵循時序圖,任意MCU都可以利用其通用I/O管腳對AD7711進行控制。使AD7711進行正常工作,最少要編寫寫控制寄存器和讀數據寄存器兩個子程序,若為了檢驗寫入控制寄存器內容是否正確,需要編寫控制寄存器讀子程序。如果編寫了標定寄存器的讀寫子程序還可以直接修改標定寄存器內容,增加控制的靈活性。由于編寫這些子程序都很類似,所以下面只給出控制寄存器寫子程序。


兩次調用該函數分別對IN2和IN1(IN+,IN-)通道進行設置。3a50c4表示:MD2/MD1/MD0=0/0/1即0輸入和滿量程輸入自校準;G2/G1/G0=1/1/0:放大倍數26=64;WL=0表示16位AD轉換,RO=1打開200μA激勵電流,濾波頻率10MHz/512/0x0c4=100Hz,對應的截止頻率是26Hz。需要注意的是:即使只使用一個通道,也要對兩個通道進行設置,否則兩個高精度跟隨電流源不會打開。


兩次調用該函數分別對IN2和IN1(IN+,IN-)通道進行設置。3a50c4表示:MD2/MD1/MD0=0/0/1即0輸入和滿量程輸入自校準;G2/G1/G0=1/1/0:放大倍數26=64;WL=0表示16位AD轉換,RO=1打開200μA激勵電流,濾波頻率10MHz/512/0x0c4=100Hz,對應的截止頻率是26Hz。需要注意的是:即使只使用一個通道,也要對兩個通道進行設置,否則兩個高精度跟隨電流源不會打開。
AD7711集成了Pt100調理電路的所需元件,簡化了電路設計,給高精度測溫帶來了極大方便,同時使可靠性、穩定性得到了保證。筆者把它用在高精度動態控溫儀器中,效果理想。
評論