王洪
摘 要:本系統基于DDS信號源的工作原理,以單片機8051為控制核心,采用CPLD“EPC570”并聯合硬件描述語言作為系統的硬件組合,利用雙口RAM“IDT7132”來存儲數據,用DAC0800來將RAM中存儲的數據轉化為模擬信號,用DAC0832來提供基準電壓,從而實現了在1Hz到1MHz的頻率范圍內正弦信號的無失真輸出,輸出采用橢圓濾波器進行濾波以提高輸出信號的精確性,輸出的峰—峰值在0到5V內可調。
關鍵詞:DDS信號發生器;系統設計;正弦信號
1 方案論證與選擇
所設計的系統可以輸出且存儲較寬頻帶且頻率穩定度做夠高的正弦信號(也包括方波和三角波),并且可以用鍵盤來實現三者之間轉換。
1.1 正弦信號的產生
直接數字頻率合成(DDS)方案。其主要組成為:相位累加器、波形存儲器、D/A 轉換器和低通。直接數字頻率合成DDS是正弦信號產生的方式之一,在具體實施該方法的過程中,伴隨著時鐘脈沖的輸入相應相位累加器將會輸出一定增量值,與此同時在波形儲存器中存有一份函數查詢表,而這份函數查詢表將針對各種相位碼所呈現出的不同幅度進行編碼并輸出。同時相位進步量取決于頻率控制字k,通過相位累加器所輸出的數值對波形儲存器展開尋址,促使波形儲存器對相應幅度進行編碼。最后,波形儲存器所輸出的編碼需要通過濾波器濾波、數模轉換從而順利獲取所需頻率信號。
DDS所形成的頻率信號具有高精度、高純度等特點。
1.2 存儲器模塊
DDS所采用的存儲器是RAM,隨機存儲數據,具有實現簡單、方便的優勢。若是將RAM直接掛在系統總線上,將會出現總線沖突的問題,所以,DDS通常采用雙口RAM,可以避免系統總線的隔離。它擁有左右兩種完全一致的I/O口,包含了兩套地址總線、兩套控制總線、兩套數據總線,同時還具備一套競爭仲裁電路,能夠憑借左右兩邊任一組I/O完成全異步的存儲器讀寫操作。這樣能夠有效降低CPLD與單片機之間的通訊,降低了單片機的資源耗損,保證了系統的安全性和可靠性。
輸出模塊若要有效實現幅度控制與數模轉換功能,則需要相應的后級處理模塊,其中濾除主要通過采集樣點時所產生的高次諧波分量及DAC所形成的高頻分量,維持所輸出波形的穩定性有效保證其平滑且不失真。
(1)針對系統的后級濾波部分進行分析。系統的后級濾波部分主要采用的是二階巴特沃茲濾波器。即使相應的幅度函數,呈現出單調下降發展趨勢,但其仍然能夠實現幅度濾波的平坦度最大顯示。信號發生器形成并輸出的波形與預設計的輸出波形頻率存在巨大差距,其原因主要歸結為D/A轉換過程中所形成的高頻分量噪聲所致。雖然是單調下降的,相對而言,巴特沃茲濾波器的衰減陡度遠不及其能夠實現最大平坦度濾波重要而且更為符合實際情況。針對巴特沃茲濾波器來講,橢圓濾波器具有幅值影響在阻帶及通帶內都屬于等波紋,并且針對已設定的波紋及階數要求,橢圓濾波器能夠有效獲取比其他任何一種濾波器更窄的過渡帶寬等突出優勢。
(2)針對系統幅度控制部分進行分析。幅度控制部分及數模轉換部分均選用雙D/A技術,并通過單片機進行控制,首級D/A所輸出的波形主要作為二級D/A波形的基準電壓源,如此有效對信號發生器所輸出的相應電壓幅度進行控制。該方法與其他方法相對比所呈現的優勢在于,該方法電路相對更簡單、明了,且僅憑計算機軟件即能實現對其高強度控制的目的。
2 系統設計
各模塊具體實現與分析
(1)單片機控制模塊。作為系統的控制中心,單片機具有以下的功能:首先是單片機可以對LCD顯示輸入信息進行控制,從而有效完成功能選擇及按鍵識別的控制;其次,單片機能夠與CPLD進行有機結合,有效實現直接頻率的合成。不僅如此,單片機還能夠為CPLD提供控制端口,選擇及控制CPLD內部,從而進一步實現讀取雙口RAM內存儲數據的目的;另一方面,單片機還可以與兩片D/A連接,有效控制D/A。
遵循DDFS理論,考慮要達到的要求,選取晶振頻率為4.000MHz,理論上所輸出的頻率步進是0.25Hz。
單片機在等待按鍵的過程中即默認狀態時不輸出,在不同的按鍵指令下,系統輸出不同的波形。
(2)針對CPLD內部設計的分析。CPLD內部設計的原理在于,在其內部構建適于DDFS的相位累加器。同時,在雙口RAM與單片機通信過程中,P0口不僅能夠提供低八位地址,同時還能滿足所需鎖存器同時在CPLD內部實現的要求,有效減少了硬件安裝。
單片機的P2.4, P2.5, P2.6, P2.7為CPLD提供控制信號,同時還為頻率選擇字提供地址。另外,因為P2.3、P2.2、P2.4分別是RAM、LCD、DAC0832的片選信號,同時還設定由P0口根據P2.1、P2.2口的不同組合,根據不同時段提供相應數據,并按一定規律有效組合成累加器所需要的二十四位輸入數據。為了保證時序的穩定性、規律性、準確性,還需要在單片機WR端中為相應低電頻率輸入數據。
(3)鍵盤模塊的設置。鍵盤上各鍵的功能:鍵盤上的數字鍵,顧名思義就是輸入數值。按下‘Reset鍵是表示復位,單片機狀態回到開始狀態;按下‘enter鍵表示確定;按下Am+鍵表示幅度加;按下Am-鍵表示幅度減;按一下波形鍵輸出為正弦波,再按一下輸出為方波,再按一下輸出為三角波,再按一下輸出為正弦波,如此循環。
按下‘FRE鍵表示準備改變頻率,即按下‘FRE鍵后,在按數字鍵所要變成的頻率值,即可將頻率改變成相應的頻率值。
(4)后級濾波模塊的設計。在后級濾波模塊找那個,鑒于橢圓濾波器的種種優點,我們采用5階橢圓濾波器。
3 相關理論的分析和計算
所輸出波形的頻率以及相應分辨率。預設參考晶振(頻率源)的頻率為,選用計數容量作為相位累加器(既相位累加器位數),頻率控制字為位,則:
由DDS系統所輸出的信號頻率為:
頻率分辨率為:
在此過程中,主要選擇4M晶振,二十四位頻率控制字,二十四位相位累加器。
從理論層面來看,通過抽樣定理可以明確,在保證不失真前提下最大限度步進可以取,最小時為1,那么:
相應所輸出的頻率為:
頻率分辨率為:
參考文獻:
[1]黃根春,陳小橋,張望先編著.電子設計教程[S].電子工業出版社.
[2]黃智偉主編.全國大學生電子設計競賽訓練教程[S].電子工業出版社.
[3]【美】Samir Palnitkar.Verilog HDL數字設計與綜合[M].電子工業出版社.