劉大成,張洪水,楊 陽
(92785部隊(duì) 遼寧 綏中125200)
基于AD9958的雙通道正弦信號(hào)源的設(shè)計(jì)
劉大成,張洪水,楊 陽
(92785部隊(duì) 遼寧 綏中125200)
為實(shí)現(xiàn)獲取高精度雙通道正弦信號(hào)源的目的,針對(duì)高性能頻率合成器AD9958的性能特點(diǎn),結(jié)合增強(qiáng)型、低功耗51單片機(jī),設(shè)計(jì)一種基于DDS技術(shù)的高精度雙通道正弦信號(hào)源。介紹了AD9958的主要功能特點(diǎn),并對(duì)其內(nèi)部結(jié)構(gòu)進(jìn)行說明,通過SPI接口通信實(shí)現(xiàn)了與FPGA的通信控制,介紹了系統(tǒng)硬件原理及接口關(guān)系,最后選取3個(gè)頻率點(diǎn)進(jìn)行測量,結(jié)果為系統(tǒng)誤差小、精度高、響應(yīng)快,證明系統(tǒng)滿足設(shè)計(jì)使用要求,達(dá)到了預(yù)期目的。
信號(hào)源;AD9958;STC12C5412;SPI接口
在通訊、雷達(dá)、宇航、電視廣播、遙控遙測和電子測量等領(lǐng)域,高精度正弦信號(hào)源廣泛應(yīng)用,其中信號(hào)頻率的控制和穩(wěn)定度是其主要指標(biāo)因素。目前,常用的LC振蕩器、RC振蕩器已不能滿足要求,隨著DDS技術(shù)的快速發(fā)展,以DDS芯片為核心設(shè)計(jì)信號(hào)源已成為潮流。本文根據(jù)實(shí)際使用需要設(shè)計(jì)高精度雙通道正弦波信號(hào)源,它以DDS芯片AD9958為核心,采用單片機(jī)控制的方式產(chǎn)生正弦波信號(hào),信號(hào)頻率、幅度和相位精度可控。
AD9958是美國ADI公司生產(chǎn)的雙路輸出的DDS器件,每路可單獨(dú)控制頻率、相位和幅度,能產(chǎn)生500 MHz的模擬正弦波,具有頻率轉(zhuǎn)換時(shí)間短、頻率分辨率高、功耗低等優(yōu)點(diǎn),同時(shí)由于兩個(gè)通道共享一個(gè)公共系統(tǒng)時(shí)鐘,具有固有的同步性,可支持多個(gè)設(shè)備同步,因此可以很容易地對(duì)信號(hào)實(shí)現(xiàn)全數(shù)字式調(diào)制。
單片機(jī)選擇宏晶科技公司生產(chǎn)的STC12C5412,它是新一代增強(qiáng)型、低功耗51單片機(jī),具有2K非易失E2PROM和SPI接口,非常方便與AD9958[1]接口,實(shí)現(xiàn)對(duì)信號(hào)的控制。同時(shí)由于STC12C5412具有先進(jìn)的RISC精簡指令集結(jié)構(gòu)、硬件看門狗、4路PWM、8路高速A/D轉(zhuǎn)換、超強(qiáng)抗干擾、寬電壓和低功耗等特點(diǎn),在此作為控制芯片使用[2]。
1.1 主要性能特點(diǎn)
1)2路帶10位DAC的DDS通道;
2)最高取樣頻率為500MSPS;
3)內(nèi)部時(shí)鐘4倍頻至20倍頻可編程選擇;
4)大于72dB的通道隔離度;
5)16級(jí)頻率、相位、幅度調(diào)制;
6)32位頻率分辨率;
7)14位相位失調(diào)分辨率;
8)10位輸出幅度可縮放的分辨率;
9)有800Mbps增強(qiáng)數(shù)據(jù)吞吐量的串行I/O口(SPI);
10)內(nèi)置多器件同步功能。
1.2 結(jié)構(gòu)說明
AD9958有2個(gè)DDS核,能夠提供2個(gè)內(nèi)部同步、獨(dú)立編程的輸出通道;可進(jìn)行獨(dú)立頻率、相位和幅度控制;可編程的通道控制,可以對(duì)由于模擬處理(例如濾波、放大)或者PCB布線的失配而產(chǎn)生的外部信號(hào)通道的不均衡進(jìn)行校正,也能夠?qū)Χ嗤ǖ佬盘?hào)之間的不平衡提供有效的校正控制,實(shí)現(xiàn)同步;如果需要增加通道,允許通過菊花鏈方式連接多片DDS芯片。AD9958的內(nèi)部結(jié)構(gòu)如圖1所示。
它由相位累加器、數(shù)據(jù)寄存器、時(shí)序與控制邏輯電路、模數(shù)轉(zhuǎn)換器、多路選擇器、相位寄存器和SPI串行通信接口控制器等組成。圖中CS為芯片的片選信號(hào)輸入端,高電平有效。SDIO_0~SDIO_3為雙向引腳,用于串行操作的數(shù)據(jù)輸入和輸出。SCLK為I/O串行操作時(shí)鐘輸入端,在該端的上升沿寫入數(shù)據(jù),下降沿讀出數(shù)據(jù)。IOUT為輸出引腳,兩個(gè)通道各有一個(gè)互補(bǔ)輸出端,使用時(shí)需接高拉電阻至電源。
圖1 AD9958的內(nèi)部原理圖
AD9958具有SPI串行通信接口[3],極易實(shí)現(xiàn)與單片機(jī)的通信。SPI通信是通過SDIO_0~SDIO_3、CS和SCLK等引腳實(shí)現(xiàn)的。為保證能正確傳送數(shù)據(jù)到AD9958的數(shù)據(jù)寄存器,要嚴(yán)格按照通信命令格式及時(shí)序的要求進(jìn)行。讀取寄存器命令格式見表1,命令序列由8位二進(jìn)制數(shù)組成,第一位為讀/寫控制位,為“1”則讀取寄存器數(shù)據(jù),為“0”則向寄存器中寫入數(shù)據(jù);中間兩位為無關(guān)位;最后五位為寄存器選擇位,D0~D4分別對(duì)應(yīng)寄存器A0~A4。圖2說明了向AD9958寫指令或數(shù)據(jù)的操作時(shí)序。
表1 命令字格式
AD9958與單片機(jī)的通訊周期分為兩個(gè)階段,第一階段為指令周期,當(dāng)SCLK為上升沿時(shí),將8位數(shù)據(jù)依次寫入AD9958中;第二階段為數(shù)據(jù)傳送周期,此時(shí)傳送波形參數(shù)的控制字。其中CS低電平的時(shí)間必須為16個(gè)時(shí)鐘的整數(shù)倍,否則將中止命令。
STC12C5412單片機(jī)為了和AD9958的SPI通信相對(duì)應(yīng),單片機(jī)選擇主模式作為主機(jī)工作,AD9958作為從機(jī)工作。按照AD9958的時(shí)序圖要求,STC12C5412配置如下:控制位CPHA=1,前時(shí)鐘沿驅(qū)動(dòng),后時(shí)鐘沿采樣,CPOL=0,SPICLK空閑時(shí)為低電平,前時(shí)鐘沿為上升沿,后時(shí)鐘沿為下降沿。SPI時(shí)鐘速率選擇為CPUCLK/16[4]。
圖2 SPI時(shí)序波形圖
系統(tǒng)硬件設(shè)計(jì)[5-6]原理如圖3所示。電路由DDS芯片AD9958、晶體振蕩器、放大濾波電路、輸入模塊、分壓電阻和單片機(jī)STC12C5412等組成。
通過輸入模塊向單片機(jī)發(fā)送指令參數(shù),設(shè)置信號(hào)源的輸出信號(hào)。單片機(jī)通過SPI接口與AD9958連接,完成對(duì)其內(nèi)參數(shù)的寫操作。電路設(shè)計(jì)中,為提高SPI通信的可靠性,在時(shí)鐘SLK、SDIO_0~SDIO_3各線上可加100 pF的對(duì)地電容濾除掉干擾毛刺。為保證采樣精度,AD9958的引腳VDD和VSS對(duì)地各接一只0.1 μF的陶瓷電容,并且電容應(yīng)盡可能的靠近芯片引腳。
由于AD9958的IOUT輸出端采用的是電流輸出方式,所以在輸出端需接對(duì)地電阻,將電流信號(hào)變?yōu)殡妷盒盘?hào)。IOUT端輸出范圍為10~30 mA,在此選擇阻值為30 Ω的電阻接地,這時(shí)經(jīng)過電流電壓轉(zhuǎn)化后,其輸出電壓峰值約為900 mV。
圖3 系統(tǒng)原理圖
該雙通道正弦信號(hào)源的軟件設(shè)計(jì)主要完成SPI數(shù)據(jù)讀取及處理工作,程序采用VC語言編寫,程序流程框圖如圖4所示。
圖4 主程序框圖
所有命令都是通過將CS引腳設(shè)置為低電平,并隨后將命令字節(jié)和緊跟的數(shù)據(jù)字節(jié)移入16位移位寄存器完成的。當(dāng)CS上升后執(zhí)行命令。數(shù)據(jù)在時(shí)鐘上升沿送入,器件會(huì)記錄CS處于低電平時(shí)的時(shí)鐘數(shù)(上升沿),如果時(shí)鐘數(shù)不是16的倍數(shù),則中止所有命令。當(dāng)要將新數(shù)據(jù)寫入數(shù)據(jù)寄存器時(shí),命令選擇位C1和C0分別置為0,1,P0置為1。
選取3個(gè)頻率點(diǎn)進(jìn)行測量,測量數(shù)據(jù)如表2所示。其中頻率準(zhǔn)確度最高,測量設(shè)備為6位有效數(shù)字,幾乎測不到誤差值,這也表明了DDS技術(shù)的優(yōu)越性;由于系統(tǒng)響應(yīng)時(shí)間很快,設(shè)定頻率變化后,兩路頻率同時(shí)瞬時(shí)變化;幅度存在誤差,原因是后級(jí)濾波放大電路電容和電阻的電器特性不一致所造成,與AD9958的性能無關(guān)。
表2 測量數(shù)據(jù)
文中對(duì)雙通正弦道信號(hào)源的硬件系統(tǒng)和軟件系統(tǒng)進(jìn)行了設(shè)計(jì),給出了硬件框圖和軟件流程圖,同時(shí)搭建電路對(duì)設(shè)計(jì)成果進(jìn)行測量分析,得出的測量結(jié)果滿足設(shè)計(jì)要求,表明設(shè)計(jì)的可行性和科學(xué)性,為工程應(yīng)用提供科學(xué)依據(jù)。
以AD9958作為核心設(shè)計(jì)的信號(hào)源除具有高穩(wěn)定性、高精度、高分辨率、高速建立信號(hào)等突出優(yōu)點(diǎn),還具有可以輸出2路同步信號(hào)、可以多片芯片同步鏈接等優(yōu)點(diǎn),可應(yīng)用在各種工作領(lǐng)域,有著廣闊的應(yīng)用前景。
[1]Microship Technology Inc.MCP41100 Data Sheet[EB/OL].(2006).http://www.ortodoxism.ro/datasheets/microchip/11195c.pdf.
[2]宏晶科技公司.STC12C5412AD Data Sheet[EB/OL].(2002).http://soft.laogu.com/download/stc12c5412ad.pdf.
[3]詹俊鵬,張鵬愷,李鵬.基于AD9958多波形雷達(dá)信號(hào)源軟硬件的設(shè)計(jì)[J].電子設(shè)計(jì)工程,2009(1):69-71.
[4]宋征,許國宏,李星.基于AD9959的高精度多通道雷達(dá)信號(hào)源設(shè)計(jì)[J].電子設(shè)計(jì)工程,2012(9):95-97.
[5]周美麗,劉生春,白宗文.基于AD9957的雙通道高速數(shù)字調(diào)制信號(hào)源的設(shè)計(jì)[J].電子設(shè)計(jì)工程,2007(7):39-41.
[6]陳凌云.C波段頻率合成源的研制[D].南京:南京理工大學(xué),2005.
[7]劉靜,段建東,陸海龍,等.基于電流固有頻率的VSCHVDC直流線路保護(hù)[J].陜西電力,2015(11):31-36.
Design of double-phasic high precision sine wave signal source based on AD9958
LIU Da-cheng,ZHANG Hong-shui,YANG Yang
(92785 Troops,Suizhong 125200,China)
To obtain high precision dual sine signal source to achieve the purpose,according to the performance characteristics of high performance frequency synthesizer AD9958,with enhanced,low power 51 microcontroller,design a DDS based high precision double channel sine signal source.This paper introduces the main function characteristics of AD9958,and its internal structure is described,through the SPI interface communication with communication control FPGA,introduced the system hardware principle and interface relations,finally selected 3 frequency points were measured,results for the system error is small,high precision,fast response,that the system meets the design requirements,to achieve the expected goal.
signal source;AD9958;STC12C5412;SPI interface
TN761
B
1674-6236(2016)18-0191-03
2015-09-07 稿件編號(hào):201509053
劉大成(1982—),男,河北遷安人,工程師。研究方向:雷達(dá)工程。