新聞中心

        EEPW首頁 > EDA/PCB > 設計應用 > 基于CPLD的DDS正弦信號發生器的設計簡介

        基于CPLD的DDS正弦信號發生器的設計簡介

        作者: 時間:2011-11-16 來源:網絡 收藏

        這幾天終于實現了正弦信號的發生,限于的128宏單元不夠用也不知道怎么優化,后來就干脆把按鍵、頻率顯示、頻率控制字交給單片機控制產生,再由單片機講頻率控制字傳送給,這樣就實現了頻率的控制。最終產生的正弦信號頻率范圍為1HZ~30KHZ,頻率可步進1HZ也可通過單片機預置,也可以自動掃頻信號。起先出來的頻最大誤差達到2HZ多,覺得不對勁出來的頻率應該很精確不會有這么大的誤差,后來發現原來是晶振不準有點誤差,后來經程序修改使輸出最大頻率誤差在0.1HZ以內,經過這幾天的努力總算感到了一點的欣慰。

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

        這是VHDL頂層模塊:

        1.jpg

        這是當k=001111111111111時的仿真波形:

        2.jpg

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

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



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 永城市| 柳江县| 平谷区| 万荣县| 彰化市| 高淳县| 福海县| 奈曼旗| 肇庆市| 鄂伦春自治旗| 泽库县| 苏尼特左旗| 阳谷县| 汝阳县| 来安县| 浦江县| 安溪县| 内丘县| 黄骅市| 通江县| 新田县| 牙克石市| 宁蒗| 独山县| 华安县| 屏边| 临沭县| 怀柔区| 垫江县| 五大连池市| 元氏县| 沂源县| 舟曲县| 五河县| 西平县| 陆丰市| 普格县| 比如县| 甘洛县| 开江县| 梓潼县|