• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 模擬技術 > 設計應用 > 模數轉換芯片AD7810的原理及應用

    模數轉換芯片AD7810的原理及應用

    作者: 時間:2012-05-08 來源:網絡 收藏

    是美國模擬器件公司(ANALOG Devices)生產的一種低功耗10位高速串行A/D轉換器。該產品有8腳DIP和SOIC兩種封裝形式,并帶有內部時鐘。它的外圍接線極其簡單,的轉換時間為2μs,采用標準SPI同步串行接口輸出和單一電源(2.7V~5.5V)供電。在自動低功耗模式下,該器件在轉換吞吐率為1kSPS時的功耗僅為27μW,因此特點適合于便攜式儀表及各種電池供電的應用場合使用。

    本文引用地址:http://www.czjhyjcfj.com/article/186461.htm

    1 引腳功能

    AD7810引腳排列如圖1所示,各引腳的功能如下:

    1.jpg

    1 腳CONVST:轉換啟動輸入信號。

    2 腳VIN+:模擬信號同相輸入端。

    3 腳VIN-:模擬信號反相輸入端。

    4 腳GND:接地端口。

    5 腳VREF:轉換參考電壓輸入端。

    6 腳DOUT:串行數據輸出端。

    7 腳SCLK:時鐘輸入端。

    8 腳VDD:電源端。

    2 AD7810主要參數

    AD7810的主要參數如下:

    分辨率:10位二進制;

    轉換時間:2μs;

    非線性誤差:±1LSB;

    電源電壓范圍:2.7~5.5V;

    電源功耗:高速方式時為17.5mW,低功耗方式時為5μW;

    參考電壓VEFR范圍:1.2V~VDD;

    模擬電壓輸入范圍:0V~VREF;

    輸出形式:SPI同步串行輸出,與TTL電平兼容。

    3.1 高速模式工

    圖2是AD7810工作在高速模式時的時序圖。在此模式下,啟動信號CONVST一般處于高電平。在CONVST端輸入一個負脈沖,其下降沿將啟動一次轉換。若采用內部時鐘,那么,轉換需要2μs的時間(圖中t1)。當轉換結束時(圖中A點),AD7810會自動將轉換結果鎖存到輸出移位寄存器中。此后,在每一個SCLK脈沖的上升沿,數據按由高到低的原則(首先發送DB9,最后發送DB0)依次出現在DOUT上。如果在轉換還未結束之前就發出SCLK信號來啟動數據輸出,那么,在DOUT上出現的將是上一次轉換的結果。

    2.jpg

    啟動信號CONVST應在轉換結束前變為高電平,即t3應小于t1,否則器件將自動進入低功耗模式。另外,串行時鐘SCLK的最高頻率不能超過20MHz。

    3.2 自動低功耗模式

    圖3是AD7810工作在自動低功耗模式時的時序圖。在此模式下,啟動信號CONVST為低電平時,器件處于低功耗休眠狀態。當在CONVST端輸入一個正脈沖時,可在其上升沿將器件從休眠狀態喚醒,喚醒過程需要1μs的時間(圖中t2)。當器件被喚醒后,系統將自動啟動一次轉換,轉換時間也是2μs(圖中t1)。轉換結束時,AD7810將轉換結果鎖存到輸出移位寄存器中,同時自動將器件再一次置于低拉耗狀態。

    3.jpg

    啟動信號CONVST正脈沖的寬度(圖2中t3)應小于1μs,否則器件被喚醒后將不會自動啟動轉換,而是將A/D轉換的啟動時間順延至CONVST的睛降沿處。自動低功耗模式是AD7810是一大特鐸,一般當數據吞吐率小于100kSPS時,應使器件工作在此模式下。在5V電源電壓下,當數據吞吐率為100kSPS時,器件的功耗2.7mW;而當數據吞吐率為 10kSPS時,功耗為270μW;若數據吞吐率為1kSPS,則其功耗僅27μW。

    4 AD7810的典型應用

    AD7810應用時幾乎不需外圍元件。圖4所示是其典型應用電路,其參考電壓VREF接至VDD,模擬輸入VIN-接至GND,而待轉換電壓則從VIN+輸入。

    4.jpg

    AD7810 幾乎可與各種MCU進行接口,圖4中的MCU可以是8051 或PIC16C6X/7X。當與PIC16C6X/7X系列單片機進行接口時,可將SCLK接至單片機的SCK(RC3),將DOUT接至SDI(RC4),而其啟動信號CONVST則可接至單片機的任意輸出口上(如RC0)。由于PIC單片機的 SPI方式每次只能接收8位數據,因此10位數據應分兩次讀取。當AD7810與8051接口時,電路采用的是一種模擬串口方式,AD7810的 SCLK、DOUT和CONVST分別接至8051的P1.0、P1.1和P1.2,只要嚴格按照AD7810的時序要求操作,一般接口都不會有問題。這種方式實際上可擴展到所有的MCU種類。另外,8051也可利用其串行口工作方式0與AD7810進行通訊(圖中未畫出),但這時應解決好兩個問題:一是由于8051在TXD的上升沿進行采樣,這樣,TXD應經過一個反相器再接到SCLK,而將RXD接至DOUT,然后將CONVST接至任意一個輸出端口。二是8051串行口首先接收低位數據,這一點與AD7810剛好相反,因此,編程時應當注意。

    下面給出PIC16C6X/7X和8051分別與AD7810進行通訊的兩段程序,作者只對與A/D轉換有關的部分進行了編寫(常用資源定義、芯片定義等均未列出),兩段程序均可鈄AD7810的工作控制在自動低功耗方式。8051與AD7810通訊程序如下:

    START:CLR P1.0 ;初始化

    SETB P1.0

    CLR P1.2

    LOOP:CALL CON0

    ... ;主程序省略

    ;A/D轉換子程序,返回時數據低8位在R2中,高2位在R3中

    CON0:MOV R1,#`10 ;10位數據

    MOV R2,#0

    SETB P1.2 ;喚醒啟動AD7810

    CLR P1.2

    CON1:SETB P1.0 ;發送SCLK信號

    MOV C,P1.1 ;讀一位數據

    CLR P1.0

    MOV A,R2 ;數據移位

    RLC A

    MOV R2,A

    MOV A,R3

    RLC A

    MOV R3,A

    DJNZ R1,CON1

    RET

    PIC16C6X/7X與AD7810的通訊程序如下:

    REG1 EQU 0X20 ;寄存器定義

    REG2 EQU 0X21

    CLRF PORTC ;端口初始化

    BSF STATUS,RP0

    MOVLW 0X30

    MOVWF TRISC

    BCF STATUS,PR0

    BCF SSPCON,SSPEN

    MOVLW 0X00 ;SPI初始化

    MOVWF SSPCON

    BSF SSPCON,SSPEN SPI開放

    LOOP CALL ADCON

    ... ;主程序省略

    ;A/D轉換子程序,返回時數據低8位在REFG1中,高2位在REG2中

    ADCON BSF PORTC,0 ;喚醒啟動AD7810

    BCF PORTC,0

    MOVWF SSPBUF ;啟動接收高8位

    BSF STATUS,RP0

    CON1 BTFSS SSPSTAT,BF ;數據已接收?

    GOTO CON1 ;沒有收到

    BCF STATUS,RP0

    MOVF SSPBUF,W

    MOVWF REG1 ;高8位送REG1

    MOVWF SSPBUF ;啟動接收低2位

    BSF STATUS,PR0

    CON1 BTFSS SSPSTAT,BF ;數據已接收?

    GOTO CON1 ;沒有收到

    BCF STATUS,RP0

    MOVF SSPBUF,W

    ANDLW B11000000 ;保留有效位

    MOVWF REG2 ;低2位送REG2

    BCF STATUS,C ;進位位清零

    RLCF REG2,1 ;數據調整

    RLCF REG1,1

    RLCF REG2,1

    RLCF REG1,1 ;低8位

    RLCF REG2,1 ;高2位

    RETURN

    更多資訊請關注:21ic模擬頻道



    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 突泉县| 双城市| 乳山市| 微博| 平定县| 交城县| 互助| 榆社县| 屏边| 邵武市| 宁乡县| 蛟河市| 化隆| 新泰市| 疏附县| 嘉祥县| 蒙自县| 阳朔县| 延庆县| 洛阳市| 津南区| 洛阳市| 台前县| 西丰县| 河东区| 庄河市| 祥云县| 汤阴县| 敦化市| 平南县| 岳西县| 盐津县| 大悟县| 滦南县| 惠州市| 邵阳县| 北票市| 杨浦区| 景东| 调兵山市| 策勒县|