基于單片機和CPLD的DDS正交信號源
由于傳統的多波形函數信號發(fā)生器需采用大量分離元件才能實(shí)現,且設計復雜,這里提出一種基于CPLD的多波形函數信號發(fā)生器。它采用CPLD作為函數信號發(fā)生器的處理器,以單片機和CPLD為核心,輔以必要的模擬和數字電路,構成的基于DDS(直接數字頻率合成)技術(shù)、波形穩定、精度較高的多功能函數信號發(fā)生器。
2 系統設計
圖1給出系統設計框圖,該系統設計主要由CPLD電路、單片機電路、鍵盤(pán)輸入液晶顯示輸出電路以及D/A轉換電路和低通濾波器等電路組成。
該系統設計采用直接數字式頻率合成DDS(Direct Digital Frequency Synthesis)技術(shù),采用ROM存儲所需的量化數據,按照不同頻率求出頻率控制字。以K為步進(jìn)對相位累加器進(jìn)行累加,每累加一次,取出累加器的高8 位數據送至ROM,ROM根據不同的地址取出不同的數據送TLC7524進(jìn)行轉換。再經(jīng)過(guò)濾波即可得到所需要波形。由于DDS具有相對帶寬很寬,頻率轉換時(shí)間極短,頻率分辨率高等優(yōu)點(diǎn)。此外,全數字化結構便于集成,輸出相位連續,頻率,相位和幅度均可實(shí)現程控。
2.2 幅度控制模塊
幅度控制模塊由DAC0832控制,利用其內部電阻分壓網(wǎng)絡(luò ),將其作為數控電位器。將 TLC7524的輸出波形作為DAC0832的基準電壓源輸入,其輸出波形為V=(N/256)×Vin,其中N為單片機輸入的幅度控制字。通過(guò)一簡(jiǎn)單的電阻分壓網(wǎng)絡(luò )調整運放輸出峰一峰值為0~5 V,再送至DAC0832由單片機控制其幅度實(shí)現幅度的步進(jìn),如圖2所示。
采用二階巴特沃茲低通濾波器。巴特沃茲低通濾波器的幅度函數是單調下降的,由于n階低通巴特沃茲低通濾波器的前(2n-1)階導數在ω=0處為零,所以巴特沃茲低通濾波器也稱(chēng)最大平坦幅度濾波器。由于該設計要求濾除的頻率分量主要為由D/A轉換器產(chǎn)生的高頻分量,與系統所要求保留的頻率相差很遠,所以濾波器在通頻帶內的平坦程度比其衰減陡度更為重要,而且巴特沃茲低通濾波器所要的元件值合乎實(shí)際情況,不像其他濾波器要求元件值那么苛刻。
3 硬件電路系統設計
3.1 總體設計思路
整個(gè)系統以CPLD(EPM7128)、AT89S51、AT28C64(EEP-ROM)為核心。CPLD通過(guò)相位累加產(chǎn)生讀取ROM的地址。以單片機為系統控制的核心,主要功能:給CPLD送頻率控制字,即相位累加器的累加值,以此控制頻率;給D/A轉換器送幅度控制字D,控制波形幅度;處理紅外遙控鍵盤(pán);送數據給液晶LCD。EEPROM存儲已固化好波形的數據。
3.2 CPLD模塊
該模塊通過(guò)一個(gè)4引腳的工業(yè)標準JTAG接口在系統編程(ISP),并且在編程過(guò)程中僅需5.0 V單電壓供電。編程過(guò)程中,I/O引腳處于三態(tài)并被上拉,以消除板上沖突。上拉阻值為1 kΩ。因為該器件是在線(xiàn)編程的,為了便于調試,所以把下載口直接做在電路板上??紤]到電源為自制的穩壓電源,CPLD受電源紋波干擾影響較大,所以在每個(gè)器件旁都加有去耦電容。
3.3 D/A轉換及幅度控制
D/A轉換采用TI公司的TLC7524,該器件轉換速度可達10 M,幅度控制D/A轉換采用MAX518,該器件是I2C總線(xiàn)的雙D/A轉換器,只需很少的端口線(xiàn)就可實(shí)現兩路幅度的控制,大大節省單片機的端口。圖3給出D/A轉換電路。
低通濾波器對階梯正弦波進(jìn)行傅里葉分析。其中若一周期采樣點(diǎn)數為N,則其高次諧波能量主要集中在輸出頻率的(N±1)倍頻上,其幅值為基頻的 1/(N±1)。低通濾波可以平滑其臺階。另外還需濾除由DAC0832和TCL7524產(chǎn)生的1MHz和10 MHz的高頻分量。因此根據設計的要求(輸出最大頻率為250 kHz,為了保證250 kHz頻帶內輸出幅度平坦,又要盡可能抑制諧波和高頻分量,綜合考慮選用寬帶運放LF351,用EWB仿真表明:截止頻率為1 MHz~250 kHz以?xún)确绕教?。為了保證穩幅輸出,選用AD817。該器件是一種低功耗、高速、寬帶運算放大器,具有很強的大電流驅動(dòng)能力。實(shí)際電路測量表明:當負載為100 Ω,輸出峰-峰值為10 V時(shí),其帶寬大于500 kHz,幅度變化小于±1%。
4 軟件設計
4.1 波形發(fā)生
在CPLD內設置25位相位累加器,高9位為ROM地址,低16 位為產(chǎn)生精確的讀ROM的點(diǎn)與點(diǎn)之間的時(shí)間間隔而設置的累加寄存器,即:?jiǎn)纹瑱C送一頻率控制字,由低16位寄存器每個(gè)時(shí)鐘都累加這個(gè)值,累加到低16位溢出,然后ROM的地址加1。ROM內的每個(gè)地址的數據表示當前波形的幅度,然后連續讀出數據并被平滑濾波后得出平滑、穩定的波形。波形產(chǎn)生流程如圖4所示。
系統的幅度控制由MAX518完成,利用其內部電阻網(wǎng)絡(luò )實(shí)現數字電位器功能,輸出電壓作為T(mén)LC7524的基準電壓。圖5為幅度控制流程。
調試與測試所用儀器PC機、雙蹤模擬示波器YUAN-LONG、SS7200通用智能計數器、DT9205三位半數字萬(wàn)用表。在戶(hù)1 kHz步進(jìn)為20 mV下,測試電壓幅度。表1為電壓幅度測試,表2為輸出頻率測試。
基于單片機和CPLD的DDS正交信號源,其頻率幅度可精密控制,擴展輸出頻率達300 kHz,增加掃頻輸出功能。采用紅外鍵盤(pán)控制頻率和幅度,采用液晶同步顯示信號的頻率和幅度;輸出端產(chǎn)生正弦波、方波、三角波、鋸齒波,梯形波、短形波、頻率突變的方波、尖脈沖數字信號等,且具有掃頻輸出的功能。測試結果表明,系統穩定可靠,人機交互界面友好,操作簡(jiǎn)單方便。
評論