基于EZ-USB單片機(jī)的正弦信號(hào)發(fā)生器
?、?判斷是否重新定位描述符表,以確保描述符表的存放地址位于片內(nèi)RAM;
?、?使能 USB中斷,并允許所選擇的中斷;
?、?判斷是否有來自系統(tǒng)的“重新枚舉”命令,如有,則重新枚舉;
?、?初始化 AD9851模塊內(nèi)部寄存器以及缺省模式下的信號(hào)配置;
?、?判斷是否接收到 setup令牌包,如有,則調(diào)用相應(yīng)函數(shù)響應(yīng) USB設(shè)備請(qǐng)求命令;
?、?判斷是否進(jìn)入睡眠狀態(tài),如是,則將 CY7C68013置于睡眠狀態(tài);
?、?查詢是否有來自上位機(jī)的修改波形命令,按照程序執(zhí)行與波形修改有關(guān)的任務(wù);
?、?返回⑦,循環(huán)接收并執(zhí)行來自上位機(jī)的各種命令。
2 AD9851工作流程 AD9851工作流程共包含40位控制碼(D39~D0),其作用為:
(1)D39、D38用來控制AD9851數(shù)據(jù)輸入的模式。AD9851的數(shù)據(jù)輸入模式分為并行輸入模式和串行輸入模式兩種。在并行輸入模式下,模式控制碼為“00”,每次8bit數(shù)據(jù)輸入端D0~D7分5次數(shù)輸入頻率控制字。
(2)D37用來調(diào)節(jié)AD9851輸出的功率。
(3)D36~D32相位調(diào)制碼,用來控制AD9851的相位調(diào)制量。
(4)D31~D0用來控制AD9851輸出的頻率。這32位頻率控制碼是由輸入的頻率控制字轉(zhuǎn)換過來的。具體轉(zhuǎn)換關(guān)系為:
(5) AD9851 中的 DDS內(nèi)核所需輸入控制字由單片機(jī)提供。在進(jìn)行頻率控制時(shí), 首先送入相位調(diào)制碼、功率調(diào)節(jié)碼和輸入模式控制碼, 然后送入 32bit頻率控制碼。本系統(tǒng)設(shè)置AD9851工作在并行數(shù)據(jù)輸入模式。系統(tǒng)啟動(dòng)后,接受用戶從鍵盤所輸入的功能,調(diào)用相應(yīng)的子程序,根據(jù)信號(hào)的頻率值、以及 2psk功能下相位值,單片機(jī)將頻率值根據(jù)公式轉(zhuǎn)換為頻率相位控制字,初始相位值按照公式Phase(度)/11.25°轉(zhuǎn)換為 5位二進(jìn)制數(shù)相位調(diào)制字,準(zhǔn)備送往 AD9851頻率控制輸出。在傳輸數(shù)據(jù)之前,單片機(jī)先向 AD9851產(chǎn)生一個(gè) RESET上升沿信號(hào), 并延時(shí) 7ns,使整個(gè)下位機(jī)系統(tǒng)復(fù)位, 再依次傳輸一個(gè) 8 bit的相位調(diào)制碼和置AD9851工作模式碼以及 32bit的頻率控制碼。每傳輸一次 8bit的控制碼后,需由軟件產(chǎn)生一個(gè)有效的 WCLK上升沿信號(hào),將控制碼送入 AD9851輸入數(shù)據(jù)寄存器中,重復(fù)五次后即可將40位的控制碼全部加載到AD9851內(nèi)部的數(shù)據(jù)寄存器中,昀后產(chǎn)生一個(gè)有效的 FQUD上升沿信號(hào),將 40bit的控制碼全部加載到 AD9851中的 DDS頻率合成單元中,經(jīng)過 13到 18個(gè)時(shí)鐘周期后,就可獲得所需的頻率輸出信號(hào)。
3 驅(qū)動(dòng)程序設(shè)計(jì)在 Cypress 公司的 EZ-USBFX2 開發(fā)包中,提供了完整的 CY7C68013 驅(qū)動(dòng)程序源代碼、控制面板程序及固件的框架,可以大大加快用戶開發(fā)的進(jìn)度。用戶只需對(duì)所帶驅(qū)動(dòng)程序稍加
修改,再經(jīng)過 DDK 編譯后使用,使得軟件開發(fā)者大量的時(shí)間主要集中在應(yīng)用程序和固件的開發(fā)上。本設(shè)計(jì)采用的 USB設(shè)備驅(qū)動(dòng)程序就是對(duì) FX2開發(fā)包所帶的驅(qū)動(dòng)程序做了一些修改,主要是修改了 DeviceIoControl例程,增加了控制數(shù)據(jù)傳輸函數(shù)、啟動(dòng)和停止 AD9851等。四結(jié)束語(yǔ)
本文提出了一種基于 EZ-USB和 AD9851的正弦信號(hào)發(fā)生器系統(tǒng)方案,利用 EZ-USB的優(yōu)點(diǎn),通過上位機(jī)軟件的簡(jiǎn)單數(shù)據(jù)輸入,可以產(chǎn)生供實(shí)驗(yàn)所需要的信號(hào)源,極大的提高了系統(tǒng)的靈活性和可配置性。通過實(shí)驗(yàn)測(cè)定,測(cè)試的輸出頻率準(zhǔn)確度與穩(wěn)定度達(dá)到 10 -6。參考文獻(xiàn):
[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.
評(píng)論