- 相關(guān)推薦
一種高精度波形發(fā)生器的設(shè)計(jì)
摘要:隨著電子技術(shù)的發(fā)展,在諸如測(cè)量、控制等領(lǐng)域,經(jīng)常要求信號(hào)的幅度保持在某個(gè)高精度的整數(shù)值上。但由于一般數(shù)據(jù)轉(zhuǎn)換器在最小量化電平上的限制,其輸出的信號(hào)電平很難在整數(shù)值上得到較高的精度。針對(duì)該問題,介紹一種高性能的16位數(shù)據(jù)轉(zhuǎn)換器AD7846,使用TMS320VC54X系列DSP作為核心控制器,設(shè)計(jì)出幅度可精確至1mV的波形發(fā)生器。文中給出具體的硬件實(shí)現(xiàn)框圖以及用來產(chǎn)生波形的DSP匯編源程序。關(guān)鍵詞:波形發(fā)生器高精度AD7846DSP
引言
隨著電子技術(shù)的發(fā)展,波形發(fā)生器已經(jīng)廣泛的應(yīng)用在通信、控制、測(cè)量等各個(gè)領(lǐng)域。在很多地方,如測(cè)試測(cè)量領(lǐng)域,需要輸出的波形能夠精確地定位在某一整數(shù)值上,但通常由于ADC參考電平的限制,使之很難達(dá)到所需的精度,給系統(tǒng)的調(diào)試及軟件設(shè)計(jì)帶來諸多不便。本文采用了高精度的電壓參考芯片ADR434為模數(shù)變換器提供參考電平,使波形發(fā)生器的最低可調(diào)電壓達(dá)到125μV,為精確地輸出數(shù)據(jù)值電壓及其相應(yīng)波形提供了方便的硬件環(huán)境。本設(shè)計(jì)具有輸出精確,控制靈活方便等特點(diǎn)。
1系統(tǒng)設(shè)計(jì)
本系統(tǒng)采用TI公司生產(chǎn)的TMS320VC54X系列DSP作為核心控制器件,并采用Cypress工司生產(chǎn)的CY7C1021V(64K×16位RAM)來擴(kuò)充DSP的外部數(shù)據(jù)存儲(chǔ)空間。在DSP與ADC及RAM之間的數(shù)據(jù)接口加入74LVC16245(16位總線變換器)以增加DSP的驅(qū)動(dòng)能力,并用來隔斷器件間的干擾。DSP與DAC之間的邏輯控制采用CPLD實(shí)現(xiàn),這樣可以方便系統(tǒng)的設(shè)計(jì)與調(diào)試,本文中采用的CPLD為Altera公司的EPM7064SLC84-10。
整個(gè)系統(tǒng)的方框圖如圖1所示。
2器件簡(jiǎn)介
本系統(tǒng)所采用的數(shù)模轉(zhuǎn)換器為AD7846,它是美國AD(AnalogDevice)公司基于LC2MOS工藝生產(chǎn)的16位數(shù)模轉(zhuǎn)換器。它有VREF+和VREF-兩個(gè)參考電平輸入端以及一個(gè)片內(nèi)放大器。標(biāo)準(zhǔn)情況下可以將其配置為單極性輸出(0~+5V,0~+10V)或雙極性輸出(±5V,±10V)。當(dāng)然,改變VREF+VREF-兩個(gè)參考電平輸入端的電平,也可以改變其輸出的動(dòng)態(tài)范圍。如本文中的采用高精度電壓參考芯片AD434提供參考電平,使D/A的動(dòng)態(tài)范圍設(shè)置為±4.096V。
AD7846采用分段式結(jié)構(gòu)。DAC鎖存器的高4位選通16個(gè)電阻串中的一段,段的兩端接有運(yùn)放作為緩沖,運(yùn)放的輸出反饋至12位的模數(shù)變換電路,并由該電路提供后12位分辨率。這種結(jié)構(gòu)可以確保16位單調(diào)性,兩個(gè)緩沖運(yùn)放間輸入失調(diào)電壓的高度匹配還確保了優(yōu)良的積分非線性。
除了優(yōu)良的精度指標(biāo)外,AD7846與微處理器的連接也非常方便。它有16位數(shù)據(jù)I/O以及4根控制線(CS,R/W,LDAC以及CLR)。R/W與CS用來控制對(duì)I/O鎖存器的讀寫,LDAC信號(hào)用于多DAC系統(tǒng)中同步更新多片DAC數(shù)據(jù),CLR用于將DAC的輸出復(fù)位至0V。
3AD7846參考電壓的設(shè)計(jì)
為了使系統(tǒng)的輸出波形在幅度上能夠精確到1mV,本文采用AD434為AD7846提供參考電壓。ADR434為AD公司生產(chǎn)的低噪聲、高精度、低溫漂的電壓參考芯片。它采用了AD公司的溫漂曲率修正專利技術(shù),可以使其電壓對(duì)溫度的非線性達(dá)到最小。二者的具體連接如圖2所示。
圖2所示的連接方式使AD7846工作在雙極性輸出狀態(tài)下。AD434為D/A提供+4.096V的參考電平,D/A根據(jù)此電平經(jīng)過雙極十六位線性分解,所得的最低可調(diào)電壓為4.096V/215=125μV。具體的編碼表如表1所列。
表1AD7846編碼表
DAC鎖存器中的二進(jìn)制數(shù)
模擬輸出VOUT/V
1111111111111111+4.096C(32767/32768)=+4.0958751000000000001000+1.096V(8/32768)=+0.0011000000000000001+4.096V(1/32768)=+0.0001251000000000000000+4.096V(0/32768)=00111111111111111-4.096V(1/32768)=-0.0001250000000000000000-4.096V(32768/32768)=-4.096
4邏輯控制及軟件實(shí)現(xiàn)
本文使用CPLD作為DSP控制D/A映射在DSP的I/O口,地址為4000H~7FFFH。AD7846一共有4根控制線,它們組成的控制邏輯如表2所列。
表2AD7846控制邏輯真值表
CSR/WLDACCLR
功能
1XXX使DAC的I/O鎖存器呈高阻態(tài)00XX數(shù)據(jù)(DB1~5DB0)裝入I/O鎖存器01XXI/O鎖存器中的數(shù)據(jù)輸出到數(shù)據(jù)線上XX01I/O鎖存器中的數(shù)據(jù)裝入DAC鎖存器X0X0DAC鎖存器裝入數(shù)據(jù)000...000X1X0DAC鎖存器裝入數(shù)據(jù)100...000
CPLD中燒入的邏輯圖如圖3所示。
對(duì)于波形的產(chǎn)生,通常有兩種方法。一種方法為使用算法計(jì)算輸出波形某點(diǎn)的幅度編碼值(如正弦波可通過泰勒級(jí)數(shù)展開得到),這種方法可直接精確地計(jì)算出每個(gè)角度的波形值,所占用的存儲(chǔ)空間小,但對(duì)于任意波形的輸出,所需的算法較為復(fù)雜,系統(tǒng)實(shí)時(shí)性也會(huì)受到影響。另一種方法為查表法,該方法可能需要占用較大的存儲(chǔ)空間,但軟件控制卻非常方便,實(shí)時(shí)性也更高。采用查表法的軟件控制可由如下代碼實(shí)現(xiàn)。
.mmregs
.globalmain
main:nop
ori:stm#SINtable,ar2;將數(shù)據(jù)表頭地址送入ar2
ld#13H,a;循環(huán)輸出20個(gè)樣點(diǎn)值
JUMP:portw*ar2+,4000h;AD4846被配置在I/O口的4000H~7FFFFH處
Rpt#1fffh;改變r(jià)pt的值可以改變正弦波的頻率
Nop
Sub#1d,a
BcJUMP,aneq
bori
SINtable;正弦波幅度編碼表
.word7FFFH.word0A78DH.word0CB3CH.word0EF8DH
.word0F9BCH.word0FFFFH.word0F9BCH.word0E78DH
.word0cB3CH.word0A78DH.word8000H.word5872H
.word34C3H.word1872H.word0643H.word0000H
.word0643H.word1872H.word34C3H.word5872H
.end
該段程序可使AD7846輸出標(biāo)準(zhǔn)正弦波,幅度范圍為±4.096V,頻率可通過改變r(jià)pt的值加以調(diào)節(jié)。若提供大量采樣點(diǎn),可使其實(shí)時(shí)輸出高精度的任意波形。當(dāng)然,利用DSP強(qiáng)大的運(yùn)算處理能力,也可用軟件計(jì)算出所需波形的各點(diǎn)采樣值,這樣可以節(jié)省存儲(chǔ)空間,降低系統(tǒng)硬件成本。
結(jié)語
本系統(tǒng)已經(jīng)過實(shí)際測(cè)量,系統(tǒng)各部分工作正常,AD7846可精確穩(wěn)定地輸出所需波形。該方案不僅達(dá)到了很高的精度與系統(tǒng)實(shí)時(shí)性,還具有控制靈活方便等特點(diǎn),是一種很好的波形發(fā)生器。
【一種高精度波形發(fā)生器的設(shè)計(jì)】相關(guān)文章:
基于CPLD的三相多波形函數(shù)發(fā)生器設(shè)計(jì)08-06
SDRAM在任意波形發(fā)生器中的應(yīng)用08-06
一種超寬脈沖發(fā)生器的設(shè)計(jì)08-06
一種簡(jiǎn)易數(shù)字波形存儲(chǔ)器的實(shí)現(xiàn)08-06
GPS高精度的時(shí)鐘的設(shè)計(jì)和實(shí)現(xiàn)08-06