新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于EZ-USB單片機的正弦信號發生器

        基于EZ-USB單片機的正弦信號發生器

        作者: 時間:2013-02-20 來源:網絡 收藏

          ③ 判斷是否重新定位描述符表,以確保描述符表的存放地址位于片內RAM;

          ④ 使能 USB中斷,并允許所選擇的中斷;

          ⑤ 判斷是否有來自系統的“重新枚舉”命令,如有,則重新枚舉;

          ⑥ 初始化 模塊內部寄存器以及缺省模式下的信號配置;

          ⑦ 判斷是否接收到 setup令牌包,如有,則調用相應函數響應 USB設備請求命令;

          ⑧ 判斷是否進入睡眠狀態,如是,則將 CY7C68013置于睡眠狀態;

          ⑨ 查詢是否有來自上位機的修改波形命令,按照程序執行與波形修改有關的任務;

          ⑩ 返回⑦,循環接收并執行來自上位機的各種命令。

          2 工作流程 工作流程共包含40位控制碼(D39~D0),其作用為:

          (1)D39、D38用來控制AD9851數據輸入的模式。AD9851的數據輸入模式分為并行輸入模式和串行輸入模式兩種。在并行輸入模式下,模式控制碼為“00”,每次8bit數據輸入端D0~D7分5次數輸入頻率控制字。

          (2)D37用來調節AD9851輸出的功率。

          (3)D36~D32相位調制碼,用來控制AD9851的相位調制量。

          (4)D31~D0用來控制AD9851輸出的頻率。這32位頻率控制碼是由輸入的頻率控制字轉換過來的。具體轉換關系為:


          (5) AD9851 中的 DDS內核所需輸入控制字由單片機提供。在進行頻率控制時, 首先送入相位調制碼、功率調節碼和輸入模式控制碼, 然后送入 32bit頻率控制碼。本系統設置AD9851工作在并行數據輸入模式。系統啟動后,接受用戶從鍵盤所輸入的功能,調用相應的子程序,根據信號的頻率值、以及 2psk功能下相位值,單片機將頻率值根據公式轉換為頻率相位控制字,初始相位值按照公式Phase(度)/11.25°轉換為 5位二進制數相位調制字,準備送往 AD9851頻率控制輸出。在傳輸數據之前,單片機先向 AD9851產生一個 RESET上升沿信號, 并延時 7ns,使整個下位機系統復位, 再依次傳輸一個 8 bit的相位調制碼和置AD9851工作模式碼以及 32bit的頻率控制碼。每傳輸一次 8bit的控制碼后,需由軟件產生一個有效的 WCLK上升沿信號,將控制碼送入 AD9851輸入數據寄存器中,重復五次后即可將40位的控制碼全部加載到AD9851內部的數據寄存器中,昀后產生一個有效的 FQUD上升沿信號,將 40bit的控制碼全部加載到 AD9851中的 DDS頻率合成單元中,經過 13到 18個時鐘周期后,就可獲得所需的頻率輸出信號。

          3 驅動程序設計在 Cypress 公司的 EZ-USBFX2 開發包中,提供了完整的 CY7C68013 驅動程序源代碼、控制面板程序及固件的框架,可以大大加快用戶開發的進度。用戶只需對所帶驅動程序稍加

          修改,再經過 DDK 編譯后使用,使得軟件開發者大量的時間主要集中在應用程序和固件的開發上。本設計采用的 USB設備驅動程序就是對 FX2開發包所帶的驅動程序做了一些修改,主要是修改了 DeviceIoControl例程,增加了控制數據傳輸函數、啟動和停止 AD9851等。四結束語

          本文提出了一種基于 EZ-USB和 AD9851的系統方案,利用 EZ-USB的優點,通過上位機軟件的簡單數據輸入,可以產生供實驗所需要的信號源,極大的提高了系統的靈活性和可配置性。通過實驗測定,測試的輸出頻率準確度與穩定度達到 10 -6。參考文獻:

        [1].CY7C68013datasheethttp://www.dzsc.com/datasheet/CY7C68013_.html.
        [2].AD9851datasheethttp://www.dzsc.com/datasheet/AD9851_251850.html.
        [3].EZ-USBdatasheethttp://www.dzsc.com/datasheet/EZ-USB_305660.html.
        [4].AD811datasheethttp://www.dzsc.com/datasheet/AD811_1055521.html.


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 沁阳市| 呼图壁县| 白山市| 沅江市| 禹城市| 通江县| 长宁县| 资兴市| 阿尔山市| 萨迦县| 康定县| 米脂县| 台北市| 额敏县| 黔南| 霞浦县| 龙泉市| 章丘市| 宣汉县| 资中县| 永川市| 大城县| 清徐县| 迭部县| 原阳县| 全椒县| 长白| 蒙山县| 宜阳县| 永寿县| 兴国县| 临猗县| 个旧市| 左权县| 澄迈县| 织金县| 巴楚县| 民丰县| 通渭县| 都匀市| 历史|