STM32的AD9854 DDS模塊調試總結_第1頁
STM32的AD9854 DDS模塊調試總結_第2頁
STM32的AD9854 DDS模塊調試總結_第3頁
STM32的AD9854 DDS模塊調試總結_第4頁
STM32的AD9854 DDS模塊調試總結_第5頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

STM32的AD9854DDS模塊調試總結DDS基本原理和特點1、DDS基本原理直接頻率合成技術實際上是通過將存儲的波形數據,通過特定算法,經過高速D/A轉換器轉換成所需要模擬信號的數字合成技術。其基本原理框圖如圖1所示。由圖1可見,其主要由標準參考頻率源、相位累加器、波形存儲器、數/模轉換器等部分組成。其中,參考頻率源一般是一個高穩定的晶體振蕩器,其輸出信號用于DDS中各部件同步工作。當頻率合成器正常工作時,在標準頻率參考源的控制下(頻率控制字K決定了其相位增量),相位累加器則不斷地對該相位增量進行線性累加,當相位累加器積滿量時就會產生一次溢出,從而完成一個周期性的動作,即合成信號的一個頻率周期。累加器的輸出地址對波形ROM進行尋址,從而把存儲在相位累加器中的抽樣值轉化成對應的正弦波幅度序列。通過高速D/A變換把數字量變成模擬量,經過低通濾波器進一步平滑并濾掉帶外雜散,得到所需的波形。2、DDS實現的正弦信號分析理想DDS的輸出頻譜就是指不存在相位舍入誤差、幅度量化誤差和DAC誤差時,系統輸出的頻譜。這時,整個DDS系統就相當于理想的采樣保持電路。其輸出信號的頻譜結構是以Sa(·)函數為包絡的一組離散譜線,如圖2(所選fc=200MHz,fo=40MHz)所示,只在f=nfc±fO=(n±K/2N)fc處存在離散譜線。DDS芯片——AD9854AD9854數字合成器是AD公司的一款高度集成的DDS器件,其內部集成了雙48位頻率累加器,雙48位相位累加器,正余弦波形表,雙12位正交數模轉換器,雙12位數字倍增器,可編程的基準時鐘倍增器以及調制和控制電路,能夠在單片機上實現頻率調制、相位調制,可編程的幅度調制以及I,Q兩路正交調制等多種功能。當AD9854作為一個精確的時鐘源時,它能產生高穩定度,頻率一相位一幅度均可編程的正弦和余弦輸出。其主要特點有:工作頻率高其工作頻率高達300MHz,其電路結構允許產生頻率達到150MHz的同時正交輸出信號。相位截斷到17位保證了優良的無雜散信號動態范圍(SFDR)。頻率分辨率高其創新的高速DDS核提供了48位的頻率分辨率(當SYSCLK為300MHz時有1μHz的調節分辨率)??删幊痰幕鶞蕰r鐘倍增器AD9854的可編程的4×~20×的REFCLK倍增器電路在內部從一個低頻的外部參考時鐘產生300MHz的系統時鐘,節省了用戶的花費,減小系統時鐘源的難度。內部集成高性能DAC兩個12b/300MHz的DAC使輸出信號的信噪比(SNR)滿足要求。簡單的高速串、并行數據接口并行口的數據傳輸速率達到100MHz,串行口也有10MHz的速度,頻率轉換時間最低能達到10ns。多種工作模式有五種可編程的工作模式:單音調模式、非斜升FSK、斜升FSK、線性調頻和BPSK,在使用中可以根據不同的需要進行轉換。STM32的AD9854DDS模塊調試最近一段時間因為比賽需要自己制作信號源,于是在某寶上選用了AD9854DDS模塊,內部結構就不介紹了,手冊上都有。該模塊可以產生I、Q兩路正交輸出信號,即一路正弦一路余弦信號,還有一路比較器的輸出信號,即方波信號。如果對輸出信號幅度沒要求的話也可以選擇AD9851這個模塊還是比較經典的。調試方法與9854類似。我采用的是串行通信模式,比較節省IO口。首先,對AD9854進行初始化,根據手冊中時序圖進行代碼編寫,串行模式下S/P必須接低電平,其余功能IO口設置的輸出輸入分別為推挽輸出模式和上拉輸入模式。初始化程序:[html]viewplaincopy《spanstyle=“font-size:18px;”》voidAD9854_Init_S(void){AD9854_M_Reset_H();AD9854_SP_L();AD9854_SCLK_L();AD9854_SDIO_L();AD9854_IO_UD_CLK_L();AD9854_CS_H();AD9854_IO_Reset_H();delay_int(10);AD9854_M_Reset_L();delay_int(10);DATA[3]=0X00;DATA[2]=0X4a;//10倍頻DATA[1]=0X00;DATA[0]=0X60;AD9854_Send_Data(0x07,DATA);}《/span》其次,開始給寄存器對應地址寫值,串行通信地址對應0x00~0x0B,并行通信寫地址方式與串行有所區別,具體參考手冊。簡單的頻率幅度控制的話,關心的地址只有0x02(I通道頻率控制地址)0x03(Q通道頻率控制地址)0x07(倍頻地址)0x08(I通道幅度控制地址)0x09(Q通道幅度控制地址)。寄存器寫值先寫低位,在寫高位。0X07地址一共4個字節,寫值為DATA[3]=0X00;DATA[2]=0X4a;DATA[1]=0X00;DATA[0]=0X60;如果只修改倍頻系數的話只需要修改DATA[2]的值(范圍4-20倍,實際最大10倍頻),若要其他功能對照手冊修改對應地址的值即可。0x02地址一共6個字節,100M對應頻率字為DATA[0]=55;DATA[4]=55;DATA[3]=55;DATA[2]=55;DATA[1]=55;DATA[0]=55;換算為16進制數后1M=940000000000;寫值后只需進行移位送入對應地址,方便以后頻率步進,掃頻功能。0x03同。有人就會問了:這里頻率設置了為什么還要設置倍頻系數呢?關于倍頻系數,如果輸出頻率比較高,而倍頻系數比較小的話,輸出波形會失真,因此倍頻系數根據你輸出的頻率要進行相應的設置。頻率設置函數代碼如下:[html]viewplaincopy《spanstyle=“font-size:18px;”》voidAD9854_SetFre(longlongfre)//最高輸入為2^48{DATA[5]=(u8)(fre》》40);DATA[4]=(u8)(fre》》32);DATA[3]=(u8)(fre》》24);DATA[2]=(u8)(fre》》16);DATA[1]=(u8)(fre》》8);DATA[0]=(u8)fre;AD9854_Send_Data(0x02,DATA);AD9854_Send_Data(0x03,DATA);}//若要I、Q輸出不同頻率,0X03輸入值重新定義個數組即可?!?span》0x08地址一共2個字節,經實測10mV=450;幅度設置函數代碼如下:[html]viewplaincopyvoidAD9854_SetSine(u16Shape)//最高輸入2^16{unsignedcharA[2]={0};A[1]=Shape》》8;A[0]=Shape&0XFF;AD9854_Send_Data(0x08,A);AD9854_Send_Data(0x09,A);}//若需兩路不同幅度輸出,參照上面頻率控制。這些步驟完成后,連線應該會輸出你想要的信號,但是可能會出現恒定輸出某個頻率,并且波形很不光滑有許多臺階,無論如何修改倍頻系數,輸出不會發生改變,修改頻率字輸出波形也不會按照你想得那樣變化。這個問題我整了好幾天,真的很是無奈,要求外部5V供電,剛開始用電腦USB供電以為輸入電流小而導致,后來改用穩壓電源5V供電,電流2A,還是沒有任何改善,9854模塊上的GND與單片機的GND是接著的,后來才發現,兩個GND之間存在電壓差,并沒有實現真正

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論