音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

一種基于AT89C1051/2051的低成本A/D轉(zhuǎn)換方法

出處:sillboy 發(fā)布于:2007-10-29 10:56:21

摘要:介紹一種基于AT89C1051/2051的低成本A/D轉(zhuǎn)換電路和方法。該電路采用通用、廉價的器件,利用線性鋸齒波和單片機內(nèi)部的定時器來獲得A/D轉(zhuǎn)換結(jié)果,與單片機接口簡單。采用該方法除了能獲得較快的轉(zhuǎn)換速度以外,轉(zhuǎn)換的分辨率也可靈活設(shè)置,具有一定的實用價值。

  關(guān)鍵詞:A/D轉(zhuǎn)換  線性鋸齒波  模擬比較器  AT89C1051/2051

  在低成本智能儀表的設(shè)計過程中優(yōu)先考慮的是成本問題,作為部件的單片機通常選用低檔的8位機或4位機。就目前的情況而言,自帶A/D轉(zhuǎn)換的低檔單埏機價格昂貴,在需要進(jìn)行數(shù)據(jù)采集要時往往通過外部A/D轉(zhuǎn)換器件,這在很大程度上增加了系統(tǒng)的成本。例如,目前AT89C2051單片機的零售價僅7~8元,而中速A/D轉(zhuǎn)換器件的價格大都在20元以上。本文介紹的低成本A/D轉(zhuǎn)換方法僅使用兩片通用、廉價的器件就能達(dá)到中速A/D轉(zhuǎn)換的速度和低于16位的轉(zhuǎn)換分辨率。

1 原理

  有一線性良好的鋸齒波信號,幅度為Vmax,正程(0~Vmax)的掃描時間為t2(如圖1中的直線OB),
  在正程掃描期間的某一時刻t所對應(yīng)的電壓Vt為Vmax(t/t2)。圖1中的曲線CD為一待測模擬信號,兩信號在A點相交,時間為t1,不難理解,線性鋸齒波在A點的幅度就是待測的模擬信號的大小,其值Vt1可以表示為:Vt1=Vmax(t1/t2)。這就是說,可以采用一種方法將待測的模擬信號與線性鋸齒波進(jìn)行比較,當(dāng)線性鋸齒波在某一時刻的幅度超過待測模擬信號的幅度時就會引起比較器輸出狀態(tài)的改變。因此,測出比較器輸出狀態(tài)翻轉(zhuǎn)的時間,就能通過計算得到待測模擬信號的大小。

2 電路及A/D轉(zhuǎn)換的過程

  圖2給出了具有8位分辨率的A/D轉(zhuǎn)換電路。圖中,IC1為AT89C2051單片機,其P1.0和P1.1除了具有通用I/O口線的功能外,還是內(nèi)部模擬比較器的同相輸入端和反相輸入端,比較器輸出的結(jié)果在內(nèi)部連接到P3.6。IC2和IC3為線性鋸齒波產(chǎn)生電路,其正程開始掃描的時刻由單片機的P3.7控制。IC3為一雙輸入與非門緩沖驅(qū)動器,這里等效為一個開關(guān)。當(dāng)P3.7=0時,開關(guān)斷開,C1通過R1、W1充電,線性鋸齒波開始正程掃描,同時單片機內(nèi)部定時器0開始計數(shù),計數(shù)脈沖為單片機內(nèi)部時鐘。待測的模擬信號從P1.1輸入,因為線性鋸齒波電壓是從0開始線性遞增的,所以在開始正程掃描的時刻,P3.6為0.當(dāng)鋸齒波的電壓線性遞增到超過待測模擬信號的電壓時, 比較器的輸出翻轉(zhuǎn),P3.6為1,此時定時器0的數(shù)值就是A/D轉(zhuǎn)換的結(jié)果,也就是圖1中所示的t1,通過前面的公式就可以得到待測模擬電壓的值。其程序框圖如圖3所示。

3 線性鋸齒波電路參數(shù)的確定

  AT89C2051單片機的定時器0是一個16位計數(shù)器,因此這種方法所能達(dá)到的分辨率為16位,在時鐘頻率下(24MHz)完成A/D轉(zhuǎn)換的長時間約為33ms。在實際應(yīng)用過程中不一定使用這么高的分辨率,在8位分辨率的情況下完成A/D轉(zhuǎn)換的長時間為128μs。下面以8位分辨率為例介紹鋸齒波電路參數(shù)的確定方法。

  對于圖2電路,當(dāng)P3.7輸出為低時,鋸齒波正程掃描開始,C1經(jīng)R1、W1充是,其電壓Vc1為:

    Vc1=Vcc×(1-e-(t/τ))

  其中τ=(R1+Rw1)C1

  如果運放IC2:B將Vc1放大10倍,其輸出為:

    Vo1=[1+(R3/R2)]Vc1

    =10Vcc(1-e-(t/τ))

  因為IC2:B的輸出并不是線性鋸齒波,所以增加IC2:A用作非線性補償,其輸出電壓Vo2可表示為:

    Vo2=Vi2=(Vo1+Vc3)/2

    =[10Vcc(1-e-(t/τ))+Vo2(1-e-(t/η)12)]/2

    式中:Vcc=5V;η=(R5+Rw2)C3

  上式經(jīng)過整理可得:

    Vo2=50(1-e-(t/τ))/(1+e-(t/η))

  上式就是線性鋸齒波的理論表達(dá)式,通過合理選擇τ、η的值,就可以得到線性良好的鋸齒波。

  在實際設(shè)計中,我們通過一段C語言程序可根據(jù)上式先從理論上求得的τ、η的值,再根據(jù)實驗結(jié)果進(jìn)行調(diào)整。其程序如下:

    #include<stdio.h>

    #include<math.h>

    int main(void)

    {

    int τ=640, η=610; /*預(yù)置τ、η的值*/

    double result,result-bak=0;

    double t,x,y;

    system(“cls”); /*清屏幕*/

    for(t=0;t<=127;t+=0.5)/*8位分辨率時,鋸齒波的正程為128微秒*/

    {

    x=-t/τ;

    y=-t/η;

    result=50*(-exp(x))/(1+exp(y));

    printf(“%4fmV”,(result-result-bak) 1000);/*每0.5微秒遞增的電壓(mv)*/

    result-bak=result;

    }

    }

  在τ=640μs、η=610μs時,通過上述編程處理,可使鋸齒波非常接近線性,每μs的線性誤差均在0.1mV以內(nèi),完全可達(dá)到8位分辨率A/D轉(zhuǎn)換的要求。

4 誤差分析及補償

  采用該方法進(jìn)行A/D轉(zhuǎn)換的誤差來源主要有兩個,是鋸齒波的非線性此起的誤差,根據(jù)上面的敘述,鋸齒波的非線性基本上對A/D轉(zhuǎn)換的結(jié)果不產(chǎn)生影響;第二是單片機在控制A/D轉(zhuǎn)換的過程中引出的,這包括三個方面:其一是在“打開轉(zhuǎn)換開關(guān)”和“定時器開始計數(shù)”這兩個動作中單片機不可能同時完成;其二是單片機判斷片內(nèi)模擬比較器翻轉(zhuǎn)的過程需要兩個機器周期,而計數(shù)器的計數(shù)單位為1個機器周期;第三個原因是單片機確認(rèn)模擬比較器輸出狀態(tài)翻轉(zhuǎn)和關(guān)閉定時器不可能同時完成。對于和第三種情況引起的誤差,由于它的確是指令執(zhí)行所引起的,其誤差的數(shù)值取決于指令執(zhí)行的時間,因而在轉(zhuǎn)換結(jié)束時將定時器0的值減去這個時間就可以了;而第二種情況引起的誤差是無法進(jìn)行補償?shù)摹?/P>

5 結(jié)束語

    采用本文所述的方法所設(shè)計的數(shù)據(jù)采集系統(tǒng)成本低廉,接口簡單,具有較高的性能價格比。需要指出的是,為保證系統(tǒng)的長期穩(wěn)定性,應(yīng)采用高穩(wěn)定的積分電容(C1、C3)。


  
關(guān)鍵詞:一種基于AT89C1051/2051的低成本A/D轉(zhuǎn)換方法AT89C20511000

版權(quán)與免責(zé)聲明

凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。

如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

1000萬的FPGA芯片長什么樣?
廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機號碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買家服務(wù):
賣家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線時間周一至周五
9:00-17:30

關(guān)注官方微信號,
第一時間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫提出的寶貴意見,您的參與是維庫提升服務(wù)的動力!意見一經(jīng)采納,將有感恩紅包奉上哦!