AD7705 采用SP I Q SP I兼容的三線串行接口,能夠方便地與各種微控制器和DSP 連接, 也比并行接口方式大大節(jié)省了CPU的 I O口。那么AD7705與51單片機的數(shù)字電壓表是怎么表示的我們一起來看看。
摘要:在比賽中我們通過 A/D 芯片(AD7705)對外部電壓值 進行采集, 經(jīng)轉(zhuǎn)換后傳輸給單片機 (89C52) , 使用液晶 (1602) 輸出測量得到的電壓值。該實驗板可以測量不同增益下對應(yīng) 范圍的電壓值,并使部分量程下精確度理論上達到 8 增益。 對于-20~20V,增益值為 1。在拓展中,我們根據(jù)閉合電路歐 姆定律,改進程序及實驗板,使之能夠測量電流、電阻,同 時能對短路狀態(tài)做出檢測。
總設(shè)計流程圖
方案比較
本次比賽基礎(chǔ)要求設(shè)計量程為 0-5V,精確度至少為 0.02V 的電壓表。根據(jù)精確度計算公式:精確度=量程/2^n(n 為 ADC 的位數(shù)) ,結(jié)合擴展的 25V,做出以下方案比較:
? ? ? ? 方案一:使用 STC12C51 進行模數(shù)轉(zhuǎn)換,但由于其內(nèi)置 ADC 精度 不夠(8 位) ,勉強能夠滿足基礎(chǔ)要求,但無法達到擴展要求。 故舍棄此方案。
? ? ? ? 方案二:ADC 選用 AD7705,單片機采用 89C52,使用 AD780 提 供基準電壓。16 位 AD 處理 25V 時精度為 0.0004。同時使用繼電 器完成自動量程轉(zhuǎn)換,但由于電路的復(fù)雜程度和比賽時間,最終 我們沒有做此擴展。
?
? ? ? ? 方案三:ADC 選用 AD7705,單片機采用 89C52,使用 AD780 提 供基準電壓。 充分利用 89c52 的豐富 I/O 口及 AD7705 的高精度、 雙極性特性將作品設(shè)計成擁有五檔電壓測量、五檔電流測量、七 檔電流測量及短路檢測的多用表。 最終我們組決定使用方案三完成比賽。
各單元設(shè)計原理
1、供電電壓選取
? ? ? ? ? 由于實驗要求使用 A/D 測量 0~5V 電壓, 使用 DC Power Supply 提供外部供電電壓,或以 USB 接口給系統(tǒng)上電,經(jīng)過 AD780 芯 片,對 A/D 輸入適合工作的基準電壓,為 AD7705、單片機提供 穩(wěn)定的 2.5V 工作電壓。
2、AD7705 對模擬量的采集及轉(zhuǎn)換(測量電壓)
? ? ? ? ?(1)AD7705 為 16 位雙極性模數(shù)轉(zhuǎn)換器,它包括一個Σ -Δ (或 電荷平衡)ADC、片內(nèi)帶靜態(tài) RAM 的校準微控制器、時鐘 振蕩器、數(shù)字濾波器和一個雙向串行通信端口。該器件的電 源電流僅為 320μ A,使得它理想地用于電池供電的儀器中。 器件具有兩種可選電源電壓范圍分別是 2.7~3.3V 或 4.75~ 5.25V。它具有高精度校準、測量的能力,適應(yīng)電壓表的精 度要求。
? ? ? ? (2)設(shè)計實驗板共有 5 個量程,分別為: -200mV~200mV -2~2V -20~20V -200~200V -500~500V 對應(yīng)增益值為 8 對應(yīng)增益值為 1 對應(yīng)增益值為 1 對應(yīng)增益值為 1 對應(yīng)增益值為 1
(3)實驗通過開關(guān)使不同阻值分壓電阻接入電路來改變電壓表量程。開關(guān)抬起有效。如圖連接 A/D 與單片機,對 A/D 進行初始 化, 設(shè)置為雙極性、 無緩沖、 增益為 1、 濾波器不工作、 自校準、 更新速率為 20Hz 的狀態(tài)。通過編譯的讀、寫程序,完成 A/D 對 外部模擬量的采集和處理,并將數(shù)據(jù)傳送給單片機。
3、單片機數(shù)據(jù)處理(直流電壓)
? ? ? ? (1)本作品設(shè)計有五個電壓檔位。在程序中我們通過設(shè)置 switch 語句實現(xiàn)對不同檔位的選取和控制,AD 轉(zhuǎn)換后的數(shù) 據(jù)被傳輸至單片機中對應(yīng)檔位的數(shù)據(jù)處理函數(shù), 單片機根據(jù) 相應(yīng)檔位的參數(shù)設(shè)置將數(shù)據(jù)處理還原為真實電壓值, 并轉(zhuǎn)換 為可被液晶讀取的 2 進制形式。
?。?)測量直流電壓的公式為: 電壓真值=數(shù)據(jù) V/增益值*對應(yīng)的檔位參數(shù)
? ? ? ?4、1602 液晶顯示器
? ? ? ?(1)對 1602 進行初始化,設(shè)置相關(guān)功能。
1602 液晶初始化程序:
顯示器模塊原理圖:
?。?)關(guān)于顯示正負號及小數(shù)點,本次顯示 000.00000 精度
?。?)關(guān)于數(shù)據(jù)處理之后的輸出,將經(jīng)過單片機處理得到的數(shù) 據(jù) V 發(fā)送至 1602 液晶,通過 display 函數(shù)(部分程序如下) ,實 現(xiàn)液晶對數(shù)據(jù)的顯示。同時設(shè)計保護數(shù)據(jù),當(dāng)測得數(shù)據(jù)大于檔位 上限時,系統(tǒng)輸出檔位上限值。
? ? ? ? void display() (部分程序)
{
chardisp[9]=“12345678”;
? ? ? ? disp[0]= (v/10000000)+0x30; v%=10000000; disp
? ? ? ?[1]= (v/1000000)+0x30; v%=1000000;disp
? ? ? ?[2]= (v/100000)+0x30; v%=100000; disp
? ? ? ?[3]= (v/10000)+0x30; v%=10000; disp
? ? ? ? ?[ 4]= (v/1000)+0x30; v%=1000;disp
? ? ? ? [5]= (v/100)+0x30; v%=100; disp
? ? ? ? [6]= (v/10)+0x30; v%=10;disp
? ? ? ? [7]= (v/1)+0x30;
……
擴展部分
1、電流測量
? ? ? ?m利用閉合電路歐姆定律,在測電壓的基礎(chǔ)上可以實現(xiàn)對電流 的測量。實驗中共有五個檔位,分別為: -2~2mA -20~20mA -200~200mA -2~2A -15~15A 對應(yīng)增益值為 8 對應(yīng)增益值為 8 對應(yīng)增益值為 8 對應(yīng)增益值為 8 對應(yīng)增益值為 1
對于電流數(shù)據(jù)的處理,將 AD 采集到的數(shù)據(jù) v 輸入單片機后, 根據(jù)計算公式對 v 進行處理,以第一檔程序舉例:
其中對數(shù)據(jù)處理的公式為: 電流真值=數(shù)據(jù)/增益值*對應(yīng)的檔位參數(shù)
? ? ? ? 2、電阻測量
? ? ? (1)本次比賽的電阻測量在說明中并沒有,我們組為了充分 利用 AD7705 資源、 鍛煉組員的能力, 額外做了電阻測量和短 路檢測的拓展。
? ? ? (2)電阻測量的原理為:根據(jù)閉合電路歐姆定律 R=U/I,由 于前兩步已完成對電壓與電流的測量,所以此處只需要在數(shù) 據(jù)處理時,使用某檔位電壓/對應(yīng)檔位流過待測電阻的電流值 即可。
?
? ? ? ?(3)電阻測量的檔位及對應(yīng)增益值 0~20Ω 0~200Ω 0~2kΩ 0~20kΩ 0~200kΩ 0~2MΩ 0~100MΩ 對應(yīng)增益值為 2 對應(yīng)增益值為 2 對應(yīng)增益值為 2 對應(yīng)增益值為 2 對應(yīng)增益值為 2 對應(yīng)增益值為 2 對應(yīng)增益值為 1
?。?)電阻測量的數(shù)據(jù)處理(20Ω 檔為例)
電阻測量的數(shù)據(jù)處理公式為: U/Rx=2.5/(Rx+Ro) Ro:相應(yīng)電阻檔的已知串聯(lián)電阻 3、短路檢測 在 P2.5 連接蜂鳴器系統(tǒng),當(dāng)表筆兩端電阻小于 15Ω 時,P2.5 賦低電平,蜂鳴器工作。
評論
查看更多