DSP實(shí)現(xiàn)EAS掃頻信號(hào)源設(shè)計(jì)
軟件的流程如圖5所示,主要包括復(fù)位、初始化、寫頻率字和控制字等部分。
初始化部分包括對(duì)DSP多通道緩沖串行口的初始化及其配置和對(duì)AD9834寫入控制字,應(yīng)設(shè)置多通道緩沖串行口工作模式和DDS的SLEEP、RE-SET、SIGNPIB、HLB等位。在該系統(tǒng)設(shè)計(jì)中,AD9834采用串行控制比特位方式選擇相位、頻率寄存器;PIN/SW=0.選擇控制字模式;FSEI=0,選擇使用頻率寄存器0(FREQ0);D13=0,將28位的頻率寄存器分成2個(gè)14位的寄存器工作,且頻率字的高14位和低14位可以獨(dú)立改變。由于系統(tǒng)要求在上電后立即工作,故將AD9834的RESET引腳接低電平。必要時(shí),也可以由系統(tǒng)中的其他模塊如CPID控制DDS啟動(dòng)。SDATA、SCLK和FSYNC 3個(gè)引腳向AD9834中寫數(shù)據(jù)和控制字。當(dāng)FSYNC=0時(shí),表示正向AD9834寫入1個(gè)新字,并將在下1個(gè)SCL.K的下降沿讀人第1位,其余的位在隨后的SCLK的下降沿讀入,經(jīng)過16個(gè)SCLK下降沿后,置 FSYNC=1,實(shí)現(xiàn)了DSP對(duì)AD9834的控制。
由于將C5410的McBSP配置為時(shí)鐘停止模式,串口接收控制寄存器SPCRl的時(shí)鐘停止模式位cLKSTP和串口引腳控制寄存器PCR的發(fā)送時(shí)鐘極性位CLKXP配置為CLKSTP=11,CLKXP=1(時(shí)鐘開始于下降沿,有延時(shí)),因此,發(fā)送時(shí)鐘模式引腳設(shè)為內(nèi)部時(shí)鐘輸出(BCLKX=I);采樣率發(fā)生器時(shí)鐘源來自CPU時(shí)鐘(CLKSM=I);發(fā)送幀同步模式引腳設(shè)置為輸出(FSXM=1);發(fā)送幀同步極性引腳設(shè)置為低電平有效(FSXP=1);發(fā)送時(shí)鐘極性設(shè)置為下降沿采樣 (CLKXP=1);數(shù)據(jù)發(fā)送和接收延時(shí)時(shí)間為l位(RDATDLY=XDATDLY=01b);采樣率發(fā)生器時(shí)鐘的降頻因子為49(CLKGDV=49)。因?yàn)?6xbaud rateCLKOUT/1+CLKGDV為100/49,所以MCBSP的采樣率發(fā)生器產(chǎn)生2MHz的時(shí)鐘信號(hào)。
下面是通過McBSP口向AD9834傳送頻率為8.2MHz的頻率字和控制字的程序段: L
程序設(shè)計(jì)中應(yīng)該注意的重點(diǎn)就是對(duì)發(fā)送和接收準(zhǔn)備好位的查詢,如果在程序中沒有查詢或者查詢的地點(diǎn)不對(duì),則程序在單步運(yùn)行時(shí)可能會(huì)正確發(fā)送和接收數(shù)據(jù),但是當(dāng)全速運(yùn)行時(shí),由于速度較高,因而不能進(jìn)行正確的數(shù)據(jù)收發(fā)。正確的查詢應(yīng)該是在數(shù)據(jù)發(fā)送前查詢SPCRl或SPCR2中的RRDY位或XRDY位,當(dāng)RRDY位或XRDY位為0時(shí),表明尚未接收或發(fā)送完數(shù)據(jù),一直查詢到RRDY位或XRDY位為1,表明上一組數(shù)據(jù)已接收或發(fā)送完畢,可以進(jìn)行下一組數(shù)據(jù)的接收或發(fā)送。
5 結(jié)束語
由DDS技術(shù)產(chǎn)生的掃頻信號(hào)源不僅頻率穩(wěn)定、信號(hào)精度高、抗干擾能力強(qiáng),而且由于它是在計(jì)算機(jī)控制下直接實(shí)現(xiàn)的,因而易于實(shí)現(xiàn)智能化處理。在頻率迅速變化的場(chǎng)合,DDS中寄存器更新的速度有時(shí)會(huì)成為關(guān)鍵指標(biāo),這時(shí)必須使用高速電路和高速串行口,由合理的硬件設(shè)計(jì)和軟件流程來實(shí)現(xiàn)預(yù)期設(shè)計(jì)目標(biāo)。
評(píng)論