PSoC單芯片任意波形發(fā)生器的設(shè)計(jì)與實(shí)現(xiàn)._第1頁
PSoC單芯片任意波形發(fā)生器的設(shè)計(jì)與實(shí)現(xiàn)._第2頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、PSoC 單芯片任意波形發(fā)生器的設(shè)計(jì)與實(shí)現(xiàn)作者:沈陽理工大學(xué) 李軍杰 李斌 楊永強(qiáng) 來源:電子設(shè)計(jì)應(yīng)用 2009 年第 5 期引言波形發(fā)生器常被稱作信號發(fā)生器,在教學(xué)實(shí)驗(yàn)或?qū)嶋H工作中作為信號源為電路提供所需的激勵信號,因而是一種必不可少的工具?,F(xiàn)代新型信號發(fā)生器的研制都采用直接數(shù)字頻率合成(DDS)技術(shù)進(jìn)行,這種技術(shù)是第三代頻率合成技術(shù)的標(biāo)志,主要特點(diǎn)是計(jì)算機(jī)參與頻率合成,既可以用軟件來實(shí)現(xiàn),也可以用硬件來實(shí)現(xiàn),或者二 者結(jié)合。本設(shè)計(jì)研制的任意波形發(fā)生器基于美國賽普拉斯公司生產(chǎn)的混合信號可編程芯片PSoC 平臺。該芯片內(nèi)不僅集成了 M8C 微控制器,還集成了各種數(shù)字模塊和模擬模塊,各個模塊可以

2、通過系統(tǒng)內(nèi)部總線相互通信, 所以只用一顆芯片就能夠完成整個系統(tǒng)的研制。DDS 原理簡介DDS 是從相位概念岀發(fā)直接合成所需波形的一種頻率合成技術(shù)。一個直接數(shù)字頻率合成器由相位累加器、加法 器、波形存儲 ROM、D/A 轉(zhuǎn)換器和低通濾波器(LPF)構(gòu)成。DDS 的原理框圖如圖 1 所示。其中 K 為頻率控制字,P 為相位控制字,W 為波形控制字,fc 為參考時鐘頻率, N 為相位累加器的字長,D 為 ROM 數(shù)據(jù)位及 D/A 轉(zhuǎn)換器的字長。相位累加器在時鐘 fc 的控制下以步長 K 作累 加,輸出的 N 位二進(jìn)制碼與相位控制字 P、波形控制字 W 相加后作為波形 ROM 的地址,對波形 ROM

3、進(jìn)行尋 址,波形 ROM 輸出 D 位幅度碼 S(n)經(jīng) D/A 轉(zhuǎn)換器變成階梯波形 S(t),再經(jīng) LPF 平滑后就可以得到合成的信 號波形。合成的信號波形的形狀取決于波形ROM 中存放的幅度碼,因此用 DDS 可以產(chǎn)生任意波形。DDS 系統(tǒng)中除了 D/A 轉(zhuǎn)換和低通濾波電路外都是數(shù)字電路,以往的設(shè)計(jì)都基于純數(shù)字芯片設(shè)計(jì),很難實(shí)現(xiàn)單芯片的解 決方案,而PSoC 的出現(xiàn)剛好滿足了這種單芯片、全集成的要求。圖1 DDS原理框圖系統(tǒng)總體結(jié)構(gòu)及主要功能模塊根據(jù)以上介紹的 DDS 原理,結(jié)合具體的設(shè)計(jì)給出系統(tǒng)的總體結(jié)構(gòu)如圖2 所示。在 PSoC Designer 中設(shè)計(jì) PSoC 各個模塊的硬件結(jié)構(gòu),

4、這些模塊主要有UART 模塊、EEPROM 模塊、DAC8模塊、PGA(可編程增益放大器)模塊以及 LPF2(二階低通濾波器)模塊。全局系統(tǒng)模塊的設(shè)計(jì)全局系統(tǒng)模塊主要是 PSoC 內(nèi)核的設(shè)計(jì),PSoC 內(nèi)核包括 CPU 內(nèi)核、SRAM、SROM、Flash 存儲器、中斷控 制器、睡眠與看門狗以及一組時鐘源等。全局系統(tǒng)模塊的設(shè)計(jì)可以通過在PSoC Designer 中的全局資源窗口中進(jìn)行選擇即可完成,本系統(tǒng)全局資源的配置主要有幾個選項(xiàng),如表1 所示。盤局責(zé)潭Power SettingfVcc/SysClK freq5.OV/24MHZCPU C)ockSysClk/1VC1=SysClk/N6V

5、C2=VC1/N4VC3 SourceSysClk/1VC3 Divider156Analog PowerSC On/Ret LowRef Mux(Vdd/2)+ABandGapWatchdog EnableDisatleUART 模塊的設(shè)計(jì)設(shè)計(jì) UART 的目的是讓系統(tǒng)和上位機(jī)進(jìn)行通信,主要作用是接收上位機(jī)傳送的各種波形信號數(shù)據(jù),然后存儲到模擬的 EEPROM 中,這樣我們所需要的任意波形的數(shù)據(jù)都可以由上位機(jī)產(chǎn)生,可以隨時進(jìn)行更改。在 PSoC 中,UART 模塊要占用 2 個基本數(shù)字模塊,另外還需要 1 個計(jì)數(shù)器模塊來產(chǎn)生 UART 通信所需要的波特率。本系統(tǒng) 選取一個 8位的計(jì)數(shù)器來產(chǎn)生

6、波特率, 波特率計(jì)數(shù)器及 UART 模塊的配置主要有幾項(xiàng)內(nèi)容, 如表 2 及表 3 所示。卜;EP眥#2皮特卡計(jì)數(shù)卷碘艾豹:弓#用戶揍坎聲斂S陌GlockVC3ClocKSyncSync to SysClkEnableHighTerminalCountOutRow_0_OlltpiIt_2Period155GompaTe TypeLess Than Or EqualinterputTypeTerminal CountinvertEnaWeNormal表3 UART權(quán)塊的設(shè)*用戶樓塊拳數(shù)at項(xiàng)豔數(shù)值ClockROW衛(wèi)-Output/RX InputRaw 0 lnptt 0TX OutputRo

7、wjCTOutp Jt 1TX Interrupt ModeTXCompJeteClockSyncSync to SysQkRXCmCB ufferEnableEEPROM 模塊的設(shè)計(jì)EEPROM 是一種在 PSoC 的 Flash 存儲器中,運(yùn)用軟件機(jī)制來模擬硬件E2 功能的虛擬 EEPROM。它不占用任何的 PSoC 系統(tǒng)資源,并且可以同時使用多個這樣的虛擬EEPROM 模塊。只要 Flash 的大小允許,可以實(shí)現(xiàn)較大容量的 EEPROM。在 PSoC 器件中,F(xiàn)lash 空間被分成多個 64Byte 的字節(jié)塊。PSoC 的這種結(jié)構(gòu)使在 讀取 Flash 數(shù)據(jù)的時候是基于一個一個字節(jié)地讀,

8、而寫Flash 數(shù)據(jù)的時候則是一塊一塊地寫,所以PSoC 中的EEPROM 就是在 Flash(按字節(jié)讀,按塊寫存儲設(shè)備)設(shè)備上模擬一個 EEPROM 設(shè)備(按字節(jié)讀,按字節(jié)寫存儲 設(shè)備)。EEPROM 模塊在本系統(tǒng)中的作用是存儲各種波形數(shù)據(jù),根據(jù)所選 PSoC 芯片 Flash 自身的大小以及產(chǎn)生波形精度的需要,可以在 Flash 上模擬出適合的 EEPROM。本系統(tǒng)設(shè)計(jì)的 EEPROM 的字節(jié)是 4096Byte ,在存儲一 種波形數(shù)據(jù)時,可以存儲 4K 個波形的抽樣值,有效提高輸岀波形的精度。裏4 DAC8模塊的設(shè)晝用戶援塊參數(shù)址項(xiàng)AnalogBusAnogBiiEOut 0GlockP

9、naseNormalDataFcrmatTwosComplement用戶塊Gsiiti2.000inputAnalcgGdumn lnputSeleGt 2HefHenceAGNDAnalcgBusDisable表名LPF2蕃數(shù)配置用戶樓塊第數(shù)遶項(xiàng)寥戳C11G21G38324CA32GB32InputACB02AnalogBusAnak)gOutSLE 2PQlarityNcn-lnverttngDAC8 模塊的設(shè)計(jì)DAC8 是一種電壓輸出的 8 位數(shù)模轉(zhuǎn)換器,占用 2 個開關(guān)電容模擬 PSoC 模塊,147Byte 閃存。它可以將 8 位二進(jìn)制數(shù)轉(zhuǎn)換為相應(yīng)的電信號,其轉(zhuǎn)換速率為125kHz。

10、DAC8 數(shù)模轉(zhuǎn)換器的數(shù)字輸入碼的數(shù)據(jù)格式有:原碼、補(bǔ)碼和符號數(shù)值。當(dāng)輸入碼為二進(jìn)制補(bǔ)碼時,其取值范圍為-127+127;當(dāng)輸入碼為原碼時,其取值范圍為 0254 ;模擬電壓輸出值主要根據(jù)系統(tǒng)級參數(shù)RefMux 的選擇來確定。DAC8 占用的 2 個相鄰的 PSoC開關(guān)電容模擬模塊分別作為 LSB 和 MSB,兩個模塊之間通過“BCap 電容 C4 相耦合。內(nèi)部的操作是以符號數(shù)值的數(shù)據(jù)格式為基準(zhǔn)的。 以 2 為權(quán)值的電容陣列 C3 的值由 5 位最高數(shù)值位來確定,而電容陣列 C1 的值由低 2 位數(shù)值位設(shè)定。C3 的值可以為 031 個電容單位值,C1 只能被設(shè)定為0,8,16,24中的一種電

11、容單位。輸出電壓的值是由數(shù)值電容 C1 和 C3、反饋電容 C2 和 C5、耦合電容 C3 以及參考電壓 VREF 的值來決定的,而參 考電壓的極性由 Asign 位來設(shè)定。LSB 模塊的輸出范圍又按電容 C3 與反饋電容 C5 的比值來放大。輸出電壓 的值可以用以下公式來計(jì)算:H心D當(dāng)全局參數(shù) RefMux 在器件編輯器中設(shè)置為 2 倍間隙電壓時,則模擬地的電壓值為 2.6V,參考電壓值為 1.3V, 相應(yīng)的輸出為:(7)轉(zhuǎn)角頻率c c2中天尹尋DAC8 在 PSoC Designer 中的設(shè)置比較簡單,本系統(tǒng) DAC8 的設(shè)置內(nèi)容如表 4 所示。PGA 模塊的設(shè)計(jì)PGA 是一種放大倍數(shù)可配

12、置的放大器功能模塊,每個 PGA 模塊在 PSoC 中占用一個連續(xù)時間模擬模塊、52Byte的閃存。PGA 功能模塊實(shí)現(xiàn)了一個基于非反相放大器及用戶配置放大倍數(shù)的運(yùn)算放大器,它具有輸入阻抗大、 帶寬寬及基準(zhǔn)電壓可選擇的特點(diǎn)。PGA 將輸入的內(nèi)部信號或外部輸入的信號放大,反相端的基準(zhǔn)電壓可選為內(nèi)部模擬地 Vss 或其它可選項(xiàng)。用戶設(shè)定功能模塊實(shí)現(xiàn)一定的放大倍數(shù)后,通過設(shè)定一個電阻陣列的選擇開關(guān)及PSoC 連續(xù)時間基本模塊的反饋開關(guān)來配置以實(shí)現(xiàn)相應(yīng)的放大倍數(shù)。當(dāng)增益大于等于 1 時,電阻列的頂端連到運(yùn)算放大器的輸岀端,電阻選擇開關(guān)連到運(yùn)算放大器的反相輸入端。 放大器有如下的傳遞函數(shù):;=% -匕斗

13、善G龍乓(3)當(dāng)增益小于 1 時,運(yùn)算放大器配置為一個電壓跟隨器,功能模塊輸岀連接到電阻選擇開關(guān)。此時放大器的傳遞函數(shù)為:和 DAC8 一樣,PGA 的配置也非常簡單,本系統(tǒng)中PGA 的配置內(nèi)容如表 5 所示。LPF2 模塊的設(shè)計(jì)濾波器對信號具有濾波作用,在現(xiàn)代電子系統(tǒng)中具有非常重要的作用。濾波器可以用來消除任何不需要的頻率, 廣泛應(yīng)用中 ADC 輸入信號的抗混迭濾波器或做為平滑DAC 輸出信號的重構(gòu)濾波器。根據(jù)功能,濾波器一般可分為低通濾波器、高通濾波器、帶通濾波器和帶阻濾波器4 種。理想的低通濾波器允許截止頻率以下的信號通過,而濾除截止頻率以上的所有信號。在PSoC 中,利用可編程模擬系統(tǒng)

14、配置實(shí)現(xiàn)帶通和低通濾波器功能。本系統(tǒng)中,利用 LPF2 作為 DAC 輸出端的重構(gòu)濾波器。在 PSoC 中,LPF2 占用 2 個開關(guān)電容基本模擬模塊,109Byte 閃存,每個外部 I/O 對應(yīng) 1 個引腳。LPF2 模 塊是一種通用二階狀態(tài)可變的低通濾波器,其中心頻率和Q 值分別與時鐘頻率和用戶配置的電容值比例相關(guān)。LPF2 的中心頻率能夠準(zhǔn)確設(shè)定,也可通過調(diào)節(jié)采樣頻率來更改。 在頻域,一個雙極點(diǎn)低通濾波器的頻率響應(yīng)函數(shù)為:OUT .V(5)上式中, G 為增益系數(shù),d 為衰減率,3 0為基頻,3n為歸一化-3dB 頻率。在 PSoC 中,這些參數(shù)是由 LPF2的 6 個電容 C1、C2、

15、C3、C4、CA 和 CB 比值決定的,它們有如下關(guān)系:增益系數(shù)(6)衰減率 本系統(tǒng)中,LPF2 參數(shù)的配置內(nèi)容如表6 所示。軟件系統(tǒng)設(shè)計(jì)圖3軟件流程圖系統(tǒng)性能分析本系統(tǒng)設(shè)計(jì)的時鐘頻率是 24MHz,PC 機(jī)與 UART 通信的波特率為 19.2K,輸出波形的頻率范圍為0.1Hz40kHz,頻率分辨率為 0.1Hz,輸出的電壓幅度為 0V5V。在使用中可以通過鍵盤輸入改變頻率控制字K,得到不同頻率的波形,且輸岀頻率隨著頻率控制字的增大而增大。在測試過程中,可以從TDS2022 示波器上看到清晰的波形,通過計(jì)算機(jī)的輔助可以將所需要的任意形狀的波形數(shù)據(jù)下載到波形發(fā)生器中,這樣很容易得到想要的任何波形的信號源,滿足多種測試測量需求。從多次的測試結(jié)果分析可以看岀,這款任意波形發(fā)生器在合成正弦波及任意波時,輸岀最高頻率低于 40kHz 時可得到(8)系統(tǒng)軟件流程圖如圖 3 所示。純凈無雜散的信號波形,頻率的切換時間在 10ms 左右,輸出電壓最高幅度約為 4.87V ,基本上滿足設(shè)計(jì)的要 求。實(shí)驗(yàn)時還發(fā)現(xiàn), PSoC 系統(tǒng)產(chǎn)生的波形信號頻率不

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論