正弦信號發(fā)生器的設(shè)計與實現(xiàn)
正弦信號源在實驗室和電子工程設(shè)計中有著十分重要的作用,而傳統(tǒng)的正弦信號源根據(jù)實際需要一般價格昂貴,低頻輸出時性能不好且不便于自動調(diào)節(jié),工程實用性較差。本文的設(shè)計以較低的成本制作正弦信號發(fā)生器,可用作核磁共振中引發(fā)磁場測量儀的激勵一般的正弦信號,也可作為調(diào)制用的教學(xué)演示信號源。
正弦信號發(fā)生器主要由兩部分組成:正弦波信號發(fā)生器和產(chǎn)生調(diào)幅、調(diào)頻、鍵控信號。正弦波信號發(fā)生器采用直接數(shù)字頻率合成DDS技術(shù),在CPLD上實現(xiàn)正弦信號查找表和地址掃描,經(jīng)D/A輸出可得到正弦信號。具有頻率穩(wěn)定度高,頻率范圍寬,容易實現(xiàn)頻率步進100 Hz。全數(shù)字化結(jié)構(gòu)便于集成,輸出相位連續(xù),頻率、相位和幅度均可實現(xiàn)程控。
調(diào)幅、調(diào)頻、鍵控信號的產(chǎn)生可采用調(diào)頻、調(diào)幅專用芯片能分剮實現(xiàn),但是該方法實現(xiàn)的調(diào)頻調(diào)幅功能,對于某一特定頻率和特定的調(diào)制度、頻偏效果較好,在載波頻率可變和調(diào)制度、頻偏要求任意設(shè)定的情況下難以實現(xiàn)。本文利用CPLD和單片機AT89S52不僅可以實現(xiàn)頻率范圍可調(diào)的正弦波信號,而且在CPLD內(nèi)部加上相應(yīng)的數(shù)字控制算法就能方便地實現(xiàn)調(diào)頻FM,調(diào)幅AM和鍵控PSK、ASK數(shù)字調(diào)制功能有利于提高系統(tǒng)的整體性能和工作可靠性。正弦信號產(chǎn)生部分可在一片CPLD(EP1K30)中實現(xiàn),大大地簡化了硬件電路,便于功能擴展,并為進一步實現(xiàn)系統(tǒng)集成創(chuàng)造了條件。
1 理論分析與計算
1.1 正弦波形的產(chǎn)生
單向DDS由Nbit相位累加器和ROM只讀存儲器(正弦查找表)構(gòu)成的數(shù)控振蕩源(NCO),數(shù)模轉(zhuǎn)換器(DAC)、低通平滑濾波器(LPF)構(gòu)成,圖1所示為DDS的基本結(jié)構(gòu)。
圖1中fc為時鐘頻率,K為頻率控制字,N為相位累加器的字長,M為ROM地址線位數(shù),L為ROM數(shù)據(jù)線寬度,fo為輸出頻率。相位累加器由全加器和累加寄存器級聯(lián)組成。在時鐘頻率fc的控制下,對輸入頻率控制字K進行累加,累加滿量時就產(chǎn)生溢出。相位累加器的輸出對應(yīng)于該時刻合成周期信號的相位,并且這個相位是周期性的,在0~2π范圍內(nèi)變化。相位累加器位數(shù)為N,最大輸出為2N-1,對應(yīng)于2π的相位,累加1次就輸出1個相應(yīng)的相位碼,地址以查表方式,得到對應(yīng)相位的信號幅度值,經(jīng)過數(shù)模轉(zhuǎn)換,就可以得到一定頻率的信號輸出波形,低通濾波器對輸出的信號波形進行平滑處理,濾除雜波和諧波。由于控制字K經(jīng)過2N/K次累加,相位累加器滿量溢出,完成1個周期運算,所以輸出頻率fo由fc和K共同決定,即fo=fcK/2N且K2N-1,得到DDS的最小分辨率可達fc/2N。理論上通過設(shè)定DDS相位累加器的位數(shù)N、頻率控制字K和時鐘頻率fc的值,就可以產(chǎn)生任一頻率的輸出。根據(jù)頻率步進100Hz的要求,選取累加器的位數(shù)為19位,計算出時鐘頻率fc應(yīng)為52.4288 MHz。步進的累計誤差通過軟件補償?shù)姆椒ㄟM行修正,利用現(xiàn)有的52.416 0 MHz晶振完全精確地實現(xiàn)步進100 Hz的要求。
1.2 產(chǎn)生模擬幅度調(diào)制信號
用調(diào)制信號去控制高頻振蕩的幅度,使其幅度的變化量隨調(diào)制信號成正比地變化,這一過程稱為幅度調(diào)制。若載波為uc=Uc cosωct,調(diào)制信號為f(t)=cosΩt,則調(diào)幅波為
普通調(diào)幅波利用模擬相乘器實現(xiàn),但是外圍電路復(fù)雜,改變調(diào)制度需改變電路元件的參數(shù),實現(xiàn)起來繁瑣。可以采用CPLD芯片結(jié)合DDS技術(shù)靈活的實現(xiàn)數(shù)字調(diào)幅,原理如圖2所示。
由DDS產(chǎn)生的波形信號作為載波,在單片機內(nèi)部作調(diào)制信號為1 kHz的正弦波形存儲表,根據(jù)鍵盤所設(shè)定的調(diào)制度ma(10%~100%)與存儲表中的數(shù)據(jù)相乘的結(jié)果送CPLD與DDS得到的波形相乘,再與DDS信號相加就產(chǎn)生相應(yīng)的數(shù)字調(diào)幅波編碼,經(jīng)D/A轉(zhuǎn)換得到模擬調(diào)幅信號。
1.3 產(chǎn)生模擬頻率調(diào)制信號
在連續(xù)波調(diào)制中,載波可表示為uc=Uc cosωct,調(diào)制信號為UΩ(t),調(diào)頻波是瞬時頻率的變化量與調(diào)制信號成正比,因此調(diào)頻波的瞬時角頻率除了載波角頻率ωc外,還附加一項和調(diào)制信號成正比的部分,式中kf為比例系數(shù),是單位調(diào)制信號強度引起的頻率變化?!?omega;f(t)的最大值△ωf稱為最大頻偏,反映在頻率上為f(t)=fc+△fcos(2πft),調(diào)頻波的表達式:
圖3為CPLD數(shù)字調(diào)頻電路,頻偏為5 K時的控制字是50,將余弦波形與50相乘,并與單片機傳遞的頻率控制字相加,送入DDS模塊經(jīng)D/A轉(zhuǎn)換就可以輸出調(diào)頻波,其設(shè)計原理圖如圖4所示。
評論