新聞中心

        EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于CPLD的DDS正弦信號(hào)發(fā)生器的設(shè)計(jì)

        基于CPLD的DDS正弦信號(hào)發(fā)生器的設(shè)計(jì)

        作者: 時(shí)間:2016-10-18 來源:網(wǎng)絡(luò) 收藏

        這幾天終于實(shí)現(xiàn)了DDS正弦信號(hào)的發(fā)生,限于CPLD的128宏單元不夠用也不知道怎么優(yōu)化,后來就干脆把按鍵、頻率顯示、頻率控制字交給單片機(jī)控制產(chǎn)生,再由單片機(jī)講頻率控制字傳送給CPLD,這樣就實(shí)現(xiàn)了頻率的控制。最終產(chǎn)生的正弦信號(hào)頻率范圍為1HZ~30KHZ,頻率可步進(jìn)1HZ也可通過單片機(jī)預(yù)置,也可以自動(dòng)掃頻信號(hào)。起先出來的頻最大誤差達(dá)到2HZ多,覺得不對(duì)勁出來的頻率應(yīng)該很精確不會(huì)有這么大的誤差,后來發(fā)現(xiàn)原來是晶振不準(zhǔn)有點(diǎn)誤差,后來經(jīng)程序修改使輸出最大頻率誤差在0.1HZ以內(nèi),經(jīng)過這幾天的努力總算感到了一點(diǎn)的欣慰,呵呵。

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

        這是VHDL頂層模塊:

        1.jpg

        這是當(dāng)k=001111111111111時(shí)的仿真波形:

        2.jpg

        單片機(jī)控制6個(gè)數(shù)碼管顯示當(dāng)前的頻率,P1口接4個(gè)功能按鍵,分別是+、-、選擇和掃頻,再用兩片574向CPLD輸出頻率控制字。限于時(shí)間暫時(shí)做到這么多。

        在說一點(diǎn)吧,由于是用DAC0832轉(zhuǎn)換的(轉(zhuǎn)換時(shí)間1us)所以晶振就限制在1M之內(nèi)了,出來的最大頻率,根據(jù)奈奎斯特采樣定理也就限制在0.5MHZ之內(nèi)了(不過失真很大的,取小點(diǎn)好了),最后對(duì)出來的波形再做濾波就可以了。



        評(píng)論


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

        關(guān)閉
        主站蜘蛛池模板: 湘潭县| 泾阳县| 梓潼县| 肇州县| 葫芦岛市| 枣庄市| 博湖县| 时尚| 商水县| 田东县| 遂川县| 南安市| 高唐县| 黑山县| 全椒县| 鱼台县| 光山县| 额尔古纳市| 自治县| 高密市| 柏乡县| 阿坝县| 云和县| 墨竹工卡县| 台南县| 昌邑市| 军事| 得荣县| 霍林郭勒市| 靖州| 渝中区| 收藏| 绥中县| 陆河县| 青州市| 新乡市| 德庆县| 崇信县| 奉贤区| 宝清县| 宿州市|