新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > AD9850實現(xiàn)嵌入式信號源設計

        AD9850實現(xiàn)嵌入式信號源設計

        作者: 時間:2011-09-19 來源:網絡 收藏
        2 系統(tǒng)軟件

        本文引用地址:http://www.104case.com/article/150203.htm

          軟件主要分為菜單操作和頻率控制值計算兩部分。在系統(tǒng)中通過外接4×4軟鍵盤輸入設定頻率和調整步進。一共16個按鍵,不同的按鍵代表著不同的數(shù)字和功能,除了正常的10個數(shù)字鍵0~9外,為了方便頻率值的輸入,還了菜單鍵、刪除鍵、步進一、步進十、確認鍵、輸出鍵等功能鍵。通過輸入0~9數(shù)字鍵,輸入設定頻率;按下確認鍵,輸出相應頻率的波形;按下菜單鍵,可根據(jù)需要按下1,2,3數(shù)字鍵,分別選擇1 Hz,10 Hz,100 Hz三個檔位的頻率步進;按下確認鍵,此后按下步進+、步進一即可對輸出信號進行頻率的步進調整;欲重新設定頻率只需按下刪除鍵,再次輸入預設的頻率即可。

          該系統(tǒng)中單片機與采用串行通信方式連接。其中,頻率控制字的計算:的時鐘信號采用30 MHz,根據(jù)式(1)得:

          

          式中:fo為從鍵盤上輸入的頻率值。式(3)計算的結果在不影響精度的情況下舍去小數(shù)部分,轉換為32位的頻率控制字。有40位控制字,32位用于頻率控制,5位用于相位控制,1位用于電源休眠(PowerDown)控制,2位用于選擇工作方式。這40位控制字可通過并行方式或串行方式輸入到AD9850。實際應用中,工作方式選擇位通常設定成00,該系統(tǒng)中AD9850的40位控制字高8位設置為00H。串行接口方式下需滿足的時序關系為:在W_CLK的上升沿,引腳D7上的數(shù)據(jù)自最低有效位開始逐位串行移人輸入寄存器,40位數(shù)據(jù)輸入結束后,任何W_CLK上升沿到來,都會造成數(shù)據(jù)順序移出并導致原來數(shù)據(jù)無效。此時,F(xiàn)Q_UD端的上升沿將40位數(shù)據(jù)裝入頻率/相位控制寄存器,更新芯片的輸出頻率和相位,同時把地址指針復位到第一個輸入寄存器,等待下一組新數(shù)據(jù)的寫入。AD9850的控制字串行輸入時序圖如圖6所示。

          

          該系統(tǒng)的總程序框圖如圖7所示,程序開始后,運行初始化程序,包括初始化單片機MSP430F149、初始化AD9850、初始化液晶顯示模塊1602等。然后掃描鍵盤狀態(tài),檢查到有鍵按下就運行鍵值處理程序,對按鍵值進行查表處理,之后執(zhí)行相應的子程序。輸入的信號相關信息通過運行液晶顯示程序,在LCD上顯示正確的輸入數(shù)據(jù)和提示字符。在按下確認鍵后,MSP430F149計算出所需信號的數(shù)據(jù)或控制命令,將其傳送到AD9850,輸出最終信號。

          

          3 系統(tǒng)測試與結果分析

          為了檢驗本系統(tǒng)的實際性能,在完成所有設計后,使用HDSTO22M型示波表對該系統(tǒng)進行實測,經過實驗測試系統(tǒng)達到下列性能指標:輸出信號頻率范圍為1 Hz~10 MHz;步進調整為1 Hz,10 Hz,100 Hz三檔步進;失真度無明顯失真;輸出電壓峰峰值為1~10 V;頻率穩(wěn)定度優(yōu)于10-4。

          4 結 語

          在此給出一種基于DDS芯片AD9850和MSP430F149單片機的設計方法,該可輸出頻率范圍為1 Hz~10 MHz的正弦波和方波,且具有頻率設定1 Hz,10 Hz,100 Hz多檔步進調整和幅度調節(jié)的功能。可以通過按鍵進行頻率值設定,并有LCD顯示波形的頻率等信息,經實驗測試,在1 Hz~10 MHz頻率范圍內,得到的正弦波方波信號具有頻率穩(wěn)定性好,頻率準確度高及頻率分辨率高等特點。

        linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 航空| 菏泽市| 长宁区| 敖汉旗| 堆龙德庆县| 临泉县| 浦东新区| 西充县| 江津市| 会宁县| 崇阳县| 余江县| 清原| 年辖:市辖区| 西昌市| 如东县| 盐池县| 依兰县| 无为县| 毕节市| 兴和县| 周口市| 曲麻莱县| 泰安市| 洛隆县| 牡丹江市| 福泉市| 疏附县| 达日县| 苗栗市| 宕昌县| 红河县| 武隆县| 兴山县| 荆州市| 江都市| 海原县| 儋州市| 德安县| 河西区| 宜良县|