日韩床上生活一级视频|能看毛片的操逼网站|色悠悠网站在线观看视频|国产免费观看A淫色免费|国产av久久久久久久|免费A级视频美女网站黄|国产毛片av日韩小黄片|热久久免费国产视频|中文字幕无码色色|成人在线视频99久久久

機電之家資源網(wǎng)
單片機首頁|單片機基礎(chǔ)|單片機應(yīng)用|單片機開發(fā)|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
基于P87LPC764的Σ-ΔADC應(yīng)用設(shè)計方法
基于P87LPC764的Σ-ΔADC應(yīng)用設(shè)計方法
 更新時間:2008-8-18 10:00:26  點擊數(shù):28
【字體: 字體顏色

  由以上關(guān)系可得圖7所示關(guān)聯(lián)圖。


圖7  信噪比及精度轉(zhuǎn)換關(guān)系圖

  圖7中,左邊縱軸為信噪比SNR(或動態(tài)范圍DR),單位為3dB;右邊縱軸為位數(shù);橫軸為過采樣率(OSR)。函數(shù)線由式(1)計算所得,n為調(diào)制器的階數(shù)。右縱軸的分布由式(2)計算所得。

  DR為信號的動態(tài)范圍,即最大信號與雜散信號之比。由于此處輸入的為理想信號,無諧波分量,雜散信號只有量化噪聲,故動態(tài)范圍即為信噪比SNR。

  由圖7可知,8位ADC的理想信噪比大致為45dB,采用一階調(diào)制器實現(xiàn)需要大于64的過采樣率。實現(xiàn)12位精度需要大于380的過采樣率,16位需大于2415。

三、實現(xiàn)

1. 基本方案

  如圖8所示為用單片機實現(xiàn)一階Σ-ΔADC的原理圖,虛線框內(nèi)為MCU。


圖8  一階Σ-ΔADC的基本方案原理圖

  其中,阻抗變換器實際為一跟隨器,用于減小信號源內(nèi)阻的影響。如果不考慮邊緣的非線性,積分器可用簡單的RC網(wǎng)絡(luò)替代,如圖9所示。


圖9  一階Σ-ΔADC的簡化方案原理圖

  一位量化器可用單片機的內(nèi)部比較器,也可以用普通口線替代,只是不同的單片機口線翻轉(zhuǎn)電平不一樣,測量結(jié)果差別很大。一位DAC用口線置高或置低來模擬,需較強的高電平驅(qū)動能力。圖10所示為用P87LPC764內(nèi)部比較器實現(xiàn)的8位ADC原理圖,比較器偏置在(1/2)VCC,輸入信號的內(nèi)阻必須足夠小,必要時可加跟隨器。


圖10  8位Σ-ΔADC的基本方案原理圖

;特殊功能寄存器定義
  P1M1 DATA 91H ;P1方式寄存器1
  P1M2 DATA 92H ;P1方式寄存器2
  PT0AD DATA 0F6H
  P0M1 DATA 84H ;P0方式寄存器1
  P0M2 DATA 85H ;P0方式寄存器2
  CMP1 DATA 0ACH ;比較器1控制寄存器
  CMP2 DATA 0ADH ;比較器2控制寄存器
;變量定義
;端口定義
  AD_CON BIT P1.6
  ORG 0000H
  AJMP START
;*******************************************
START:
  MOV SP,#60H
  MOV PT0AD,#24H ;禁止CMPREF、CIN2A
  ANL P0M2,#0DBH
  ORL P0M1,#24H
  MOV CMP2,#20H ;CIN2A為輸入端
MAINLOOP:
  LCALL AD_CONV
  SJMP MAINLOOP
;*******************************************
;Σ-Δ ADC轉(zhuǎn)換程序
;占用R2,R3,R4,R5結(jié)果于A中
;*******************************************
AD_CONV:
  ORL P1M2,#40H
  ANL P1M1,#0BFH ;AD_CON設(shè)為上拉
AD_START:
  MOV R4,#2 ;循環(huán)次數(shù)
  MOV R2,#0 ;總計數(shù)值256次
AD_TEST:
  MOV R3,#0 ;TON計數(shù)值256,開始轉(zhuǎn)換
AD_LOOP:
  MOV A,CMP2
  JB ACC.1,AD_HIGH
  SETB AD_CON ;輸出正脈沖
  NOP
  NOP
  SJMP AD_COUNT
AD_HIGH:
  CLR AD_CON ;輸出負脈沖
  CJNE R3,#255,AD_INC
  SJMP AD_COUNT
AD_INC:
  INC R3
  NOP
AD_COUNT:
  LCALL DELAY10us
  DJNZ R2,AD_LOOP ;未完成256次循環(huán),繼續(xù)
  DJNZ R4,AD_TEST
  MOV A,R3 ;轉(zhuǎn)換完成,存結(jié)果于A
  RET
;----------------------------------------------
DELAY10us:
  MOV R5,#10
  DJNZ R5,$
  RET

2. 試驗結(jié)果

  表1為試驗測試報告。測試條件:VCC = 4.92V,晶振12MHz,采用以上線路和源代碼。由于沒有采用跟隨器,結(jié)果有些偏差。

表1  測試報告

3. 擴充方案

  (1)  原理

  圖11所示為一階Σ-ΔADC原理圖。該方案由于相對于被測信號量化,被測信號即為比較基準,被測信號和基準之間無電壓差,其積分為零,故只對反饋信號求積。電容C的信號圍繞Vin上下變化,完成Σ-ΔADC差值(Δ)和積分(Σ)的作用,實現(xiàn)比較巧妙,完全符合一階Σ-Δ模型。輸入信號端加一電阻電容,形成一階RC低通濾波器,濾除高頻雜散信號,有抗混疊濾波的作用,同時也可補償比較器的失調(diào)誤差。


圖11  一階Σ-ΔADC的擴充方案原理圖

  圖11所示電路,采樣頻率500kHz(20μs采樣一次),過采樣率OSR=256>64,輸出數(shù)據(jù)速率 1.95kHz,采用一級256階梳狀濾波后完全可滿足8位精度的要求。

  另外,這種電路形式對信號源的輸入阻抗沒有要求,因而可達到更高的精度。

  為了進一步認識其工作過程,作一下時域分析。1位DAC輸出可看作PWM脈沖。

  對于RC時間常數(shù)遠大于脈沖寬度標準PWM信號,有

Vin=Vref [Ton/(Ton+Toff)] (1)

  如果分級地調(diào)整波形使較大的時間常數(shù)穩(wěn)定下來,這將消耗很長的時間。如采用對分搜索,可大大加快計算過程,可能效果會比較理想,但要花費較大的軟件資源。

  這里,我們采用一種新的思路(Σ-Δ),使用相對小的時間常數(shù),每20μs對比較器作一次采樣。VC<Vin時,輸出為正脈沖,反之為負脈沖。這種方法在固定周期內(nèi)把PWM波形分解成數(shù)個小脈沖,代替表示占空比的單脈沖。

Vin=Vref [ΣTon/Σ(Ton+Toff)] (2)

  我們把該系統(tǒng)看作一個動態(tài)的控制系統(tǒng),系統(tǒng)動態(tài)平衡時,電容的充電電荷等于其放電電荷。VC在Vin上下波動,VC≈Vin,故充放電公式寫作:

Vcharge = (Vout-VC) [1-exp(-t/RC)] ≈

(Vout-Vin) [1-exp (-t/RC)]

Vdischarge = (VC-V0) [1-exp(-t/RC)] ≈

(Vin-V0) [1-exp (-t/RC)]

  令 n=Ton脈沖的總次數(shù);

m=Toff脈沖的總次數(shù);

t=采樣時間。

  則 n (Vout-Vin) [1-exp(-t/RC)] =

m (Vin-V0) [1-exp(-t/RC)]

  解得

Vin = (nVout+mV0) / (n+m) (3)

  其中Vout=Vref-Vos,Vos為口線的失調(diào)電壓,Vref =VCC,V0為口線的低電平電壓。所以

Vin = nVref /(n+m)-(nVos-mV0) / (n+m) (4)

  前面一項為測量結(jié)果,后面為誤差,方程中不存在RC值,它不是誤差因子。比較器的失調(diào)電壓和口線的失調(diào)電壓均會影響測量精度。前者使VC不能正確地跟蹤Vin而造成誤差。

  (2)  利用P87LPC764 內(nèi)部比較器實現(xiàn)8位Σ-ΔADC

  這里,用P87LPC764的內(nèi)部比較器來實現(xiàn),如圖12所示。在正確測量之前,必須保證VC = Vin(實際有一微小誤差)。為此,進行兩次測量:第一次使VC鎖定Vin,扔掉測量結(jié)果;第二次進行真正測量。8位精度需256個計數(shù)。


圖12  8位Σ-ΔADC的擴充方案原理圖

  圖13是8位Σ-ΔADC實現(xiàn)原理流程圖。


圖13  8位Σ-ΔADC實現(xiàn)原理流程圖

;特殊功能寄存器定義
  PT0AD DATA 0F6H
  P0M1 DATA 84H ;P0方式寄存器1
  P0M2 DATA 85H ;P0方式寄存器2
  P1M1 DATA 91H ;P1方式寄存器1
  P1M2 DATA 92H ;P1方式寄存器2
  CMP1 DATA 0ACH ;比較器1控制寄存器
  CMP2 DATA 0ADH ;比較器2控制寄存器
;變量定義
;端口定義
  AD_CON BIT P1.7
;**************************************************
;Σ-Δ AD 轉(zhuǎn)換程序
;占用R2,R3,R4,R5結(jié)果于A中
;**************************************************
AD_CONV:
  ANL P1M1,#7FH
  ORL P1M2,#80H ;AD_CON設(shè)為上拉
  MOV PT0AD,#24H ;禁止CMPREF、CIN2A
  ANL P0M2,#0DBH
  ORL P0M1,#24H
  MOV CMP2,#20H ;比較器2的CIN2A為輸入端
AD_START:
  MOV R4,#2 ;循環(huán)次數(shù)
  MOV R2,#0 ;總計數(shù)值256次
AD_TEST:
  MOV R3,#0 ;Ton計數(shù)值256次,開始轉(zhuǎn)換
AD_LOOP:
  MOV A,CMP2
  JB ACC.1,AD_HIGH
  CLR AD_CON ;輸出負脈沖
  DEC R3
  SJMP AD_COUNT
AD_HIGH:
  SETB AD_CON ;輸出正脈沖
  NOP
  NOP
  NOP ;平衡時間
AD_COUNT:
  LCALL DELAY10us
  DJNZ R2,AD_LOOP ;未完成256次循環(huán),繼續(xù)
  DJNZ R4,AD_TEST
  MOV A,R3 ;轉(zhuǎn)換完成,存結(jié)果于A
  RET
;----------------------------------------------
DELAY10us:
  MOV R5,#10
  DJNZ R5,$
  RET

  表2為測試報告。測試條件:VCC = 4.87V,晶振6MHz采用以上線路和源代碼。

表2  測試報告

  由以上結(jié)果可知,Σ-ΔADC轉(zhuǎn)換具有非常高的準確度和線性度。

  (3)  利用P87LPC764雙比較器實現(xiàn)4路A/D


圖14  4路8位Σ-ΔADC的原理圖

  圖14為4路8位Σ-ΔADC原理圖。

;特殊功能寄存器定義
  PT0AD DATA 0F6H
  P0M1 DATA 84H ;P0方式寄存器1
  P0M2 DATA 85H ;P0方式寄存器2
  1M1 DATA 91H ;P1方式寄存器1
  P1M2 DATA 92H ;P1方式寄存器2
  CMP1 DATA 0ACH ;比較器1控制寄存器
  CMP2 DATA 0ADH ;比較器2控制寄存器
;變量定義
  AD_BUF DATA 30H ;結(jié)果單元
;端口定義
  AD_CON BIT P1.7
;----------------------------------------------
AD_4_CH:
  ANL P1M1,#7FH
  ORL P1M2,#80H ;AD_CON設(shè)為上拉
  MOV PT0AD,#3EH ;禁止CMPREF、CIN1A、;CIN1B、CIN2A、CIN2B數(shù)字輸入、輸出
  ANL P0M2,#0C1H
  ORL P0M1,#3EH
  MOV R0,#AD_BUF
  MOV CMP2,#30H ;比較器2的CIN2B為輸入端
  LCALL AD_START2
  MOV @R0,A ;存第一路結(jié)果
  INC R0
  MOV CMP2,#20H ;CIN2A為輸入端
  LCALL AD_START2
  MOV @R0,A ;存第二路結(jié)果
  INC R0
  MOV CMP1,#30H ;CIN1B為輸入端
  LCALL AD_START1
  MOV @R0,A ;存第三路結(jié)果
  INC R0
  MOV CMP1,#20H ;CIN1A為輸入端
  LCALL AD_START1
  MOV @R0,A ;存第四路結(jié)果
AD_START1:
  MOV R4,#2 ;循環(huán)次數(shù)
  MOV R2,#0 ;總計數(shù)值256次
AD_TEST1:
  MOV R3,#0 ;TON計數(shù)值256次,開始轉(zhuǎn)換
AD_LOOP1:
  MOV A,CMP1
  JB ACC.1,AD_HIGH1
  CLR AD_CON ;輸出負脈沖
  DEC R3
  SJMP AD_COUNT1
AD_HIGH1:
  SETB AD_CON ;輸出正脈沖
  NOP
  NOP
  NOP ;平衡時間
AD_COUNT1:
  LCALL DELAY10us
  DJNZ R2,AD_LOOP1 ;未完成256次循環(huán),繼續(xù)
  DJNZ R4,AD_TEST1
  MOV A,R3 ;轉(zhuǎn)換完成,存結(jié)果于A
  RET
;----------------------------------------------
  AD_START2:
  MOV R4,#2 ;循環(huán)次數(shù)
  MOV R2,#0 ;總計數(shù)值256次
AD_TEST2:
  MOV R3,#0 ;TON計數(shù)值256次,開始轉(zhuǎn)換
AD_LOOP2:
  MOV A,CMP2
  JB ACC.1,AD_HIGH2
  CLR AD_CON ;輸出負脈沖
  DEC R3
  SJMP AD_COUNT2
AD_HIGH2:
  SETB AD_CON ;輸出正脈沖
  NOP
  NOP
  NOP ;平衡時間
AD_COUNT2:
  LCALL DELAY10us
  DJNZ R2,AD_LOOP2 ;未完成256次循環(huán),繼續(xù)
  DJNZ R4,AD_TEST2
  MOV A,R3 ;轉(zhuǎn)換完成,存結(jié)果于A
  RET
;----------------------------------------------
DELAY10us:
  MOV R5,#10
  DJNZ R5,$
  RET

  • 上一篇: 嵌入式應(yīng)用軟件開發(fā)環(huán)境δOS/λTool的設(shè)計與實現(xiàn)
  • 下一篇: 按平臺模式設(shè)計的虛擬I²C總線軟件包VIIC
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發(fā)消息66821730(技術(shù)支持)點擊這里給我發(fā)消息66821730(廣告投放) 點擊這里給我發(fā)消息41031197(編輯) 點擊這里給我發(fā)消息58733127(審核)
    本站提供的機電設(shè)備,機電供求等信息由機電企業(yè)自行提供,該企業(yè)負責信息內(nèi)容的真實性、準確性和合法性。
    機電之家對此不承擔任何保證責任,有侵犯您利益的地方請聯(lián)系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機電一體化學(xué)會
    中國行業(yè)電子商務(wù)100強網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1