新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于DDS的高精度函數(shù)信號發(fā)生器的研制

        基于DDS的高精度函數(shù)信號發(fā)生器的研制

        作者: 時間:2009-04-20 來源:網(wǎng)絡(luò) 收藏

        軟件設(shè)計主要分為菜單操作和頻率控制值計算兩部分。不同的按鍵代表著不同的數(shù)字和功能,除了正常的10個數(shù)字鍵0~9外,為了方便頻率值輸入,還設(shè)計了左右移動鍵、刪除鍵、Output確認輸出鍵等功能鍵。相應(yīng)的數(shù)值如頻率、相位、幅度輸入完成后按Output輸出鍵,即產(chǎn)生相應(yīng)的信號輸出。整體軟件設(shè)計流程圖如圖4所示。

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

        2.3 48 b頻率控制字的處理
        由于C語言中數(shù)據(jù)運算最多為32 b,如單精度Float型、Long長整型,而Double雖是64 b但Keil C編譯時出錯,故將介紹一種在中計算48 b頻率控制字的方法。
        在該設(shè)計中取參考時鐘頻率fosc為300 MHz,在的原理中介紹了輸出頻率的計算方法為:


        那么根據(jù)式(1)就能推導(dǎo)出計算頻率控制字的表達式:


        當(dāng)fo≤fL1時,頻率控制字計算公式為:
        FTW=(248*fo)/300 000 000△938 249.922 369*fo
        當(dāng)fo>fL1時,通過把48 b頻率控制字分成8 b+32 b+8 b,令最前面的8 b和最后面的8 b等于O,引入臨界頻率fL2,可由算式(1)計算得到:

        fL2=300000000*2 40/2 48△1.17172MHz
        當(dāng)fL1fo≤fL2時,得到頻率控制字計算公式為:FTW=(240*fo)/300 000 000△3 665.038 759*fo最后當(dāng)fo大于fL2,即把后16 b定為0,這時式(1)中N=32,則頻率控制字計算公式為:


        此時頻率分辨率為(300 000 000*216)/248△0.07 Hz。同理可得當(dāng)輸出頻率小于fL1、大于fL1小于fL2時分辨率分別為1.07e一6 Hz和2.73e一4 Hz,本方案設(shè)計為輸出頻率低于1 MHz時分辨率為O.001 Hz,高于1 MHz時分辨率為O.1 Hz。由上可見此方法合理有效,解決了48 b頻率控制字算法,同時也達到了很高的頻率分辨率和精確度。


        3 結(jié) 語
        針對目前市場上的發(fā)生器存在的頻帶范圍窄、精度不高、準確度低、頻譜純度差等缺點,設(shè)計了一款高頻數(shù)控,該發(fā)生器具有頻帶范圍寬、精度高、頻譜純度好、頻率輸出穩(wěn)定等優(yōu)點。經(jīng)測試頻率范圍可以達到50 MHz,頻率分辨率為0.001 Hz,并可以產(chǎn)生正弦波、FSK與BPSK波形。可應(yīng)用于日常教學(xué)與科研工作中,在晶體濾波器測試、復(fù)雜通信系統(tǒng)測試、音頻系統(tǒng)測試、高性能視頻測試等領(lǐng)域有廣泛的應(yīng)用前景。


        上一頁 1 2 下一頁

        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 嘉善县| 行唐县| 甘孜县| 秭归县| 雷山县| 嘉荫县| 和硕县| 株洲市| 喜德县| 朝阳市| 嘉鱼县| 特克斯县| 上虞市| 福泉市| 阿勒泰市| 龙山县| 武冈市| 保康县| 泰州市| 周宁县| 万年县| 宣城市| 安平县| 鸡西市| 喀什市| 贵州省| 揭阳市| 阜南县| 大厂| 竹山县| 宁晋县| 嘉黎县| 绥滨县| 宜良县| 调兵山市| 玛曲县| 定州市| 抚远县| 通许县| 泸定县| 东兰县|