freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于dds芯片ad9951的信號發(fā)生器8(編輯修改稿)

2024-07-17 12:30 本頁面
 

【文章內(nèi)容簡介】 懸空不用,采用2線串口操作。第39腳(CS)為片選端,低電平有效,允許多芯片共用I/O總線,本應(yīng)用電路將此腳接地。第40引腳(SCLK)I/O操作的串行數(shù)據(jù)時鐘輸入端,通過對這個控制口線的編程操作,模擬控制時序,通過SDIO送入指令和數(shù)據(jù)到AD9951的內(nèi)部緩沖存儲器。第41腳(SDIO)采用3線串口操作時,SDIO為串行數(shù)據(jù)輸入端,采用2線操作時,SDIO為雙向串行數(shù)據(jù)端。,作為串行數(shù)據(jù)輸入端。第45腳 (SYNC_CLK)時鐘輸出腳,為內(nèi)部時鐘的1/4,可用作外圍硬件同步,本電路不用故懸空。第44腳(SYNC_IN)為同步多片AD9951輸入信號,使用時與主AD9951的SYNC_CLK的輸出相連,應(yīng)用電路只需要單個AD9951,因此此腳懸空。第46引腳(OSK)接地,OSK不能被編程。本電路圖將此腳接地。AD9951 時鐘輸入,可以選擇內(nèi)部振蕩源,也可以選擇外部振蕩源,在本設(shè)計中,選擇外部振蕩源,需要在AD9951的OSC引腳接一個外部晶振,此晶振電路圖如圖49:圖49由于AD9951采用全數(shù)字結(jié)構(gòu),不可避免地引入了雜散。其來源主要有三個:相位舍位誤差造成的雜散;幅度量化誤差(由存儲器有限字長引起)造成的雜散和DAC非理想特性造成的雜散。必須對AD9951輸出的頻率進(jìn)行濾波處理,同時AD9951輸出頻率上限值為160MHZ,對高于此值的頻率也必須進(jìn)行濾波處理;而且為了使濾波后衰減的信號放大,需要用放大電路。其電路圖如圖410所示。由于考慮到濾波緩沖放大電路與已有的 DDS的PCB板之間的電路的接口可能會帶來較大的干擾,所以該部分電路就沒有加入了該系統(tǒng)中了,等到以后有時間的時候再將所有模塊都做到一個板上的時候,就可以毫無顧忌的加上該部分電路了!圖410 電源電路其中包括9V電源、+、在此應(yīng)用電路中利用9V電源級接產(chǎn)生+5V的電壓輸出,(R1+R2)5V所得。得到的+;另一方面,可以提供給單片機(jī)系統(tǒng),包括為LCD、AT24C02及上拉電阻提供電壓。、。電平的要求是:第43引腳(DVDDI/O),第34引腳(DVDD). 電源電路圖如圖411。 圖411 該系統(tǒng)軟件采用混合語言在KEILC軟件下編寫。計算頻率控制字的函數(shù)由匯編語言編寫,其他的用C語言編寫。程序模塊主要包括:負(fù)責(zé)各種初始化工作和循環(huán)判鍵工作的主程序。負(fù)責(zé)用戶輸入所需各種頻率的鍵盤中斷管理程序。負(fù)責(zé)掉電數(shù)據(jù)保存的I2C通信程序。以及LCD顯示程序,計算頻率控制字程序等。每個模塊由單獨(dú)的一個文件來完成。整個系統(tǒng)的程序結(jié)構(gòu)框圖如圖51所示。主程序鍵盤中斷管理程序計算控制字程序LCD顯示程序IIC通信程序 圖51 系統(tǒng)的程序結(jié)構(gòu)框圖、主程序主程序主要完成系統(tǒng)的上電初始化工作,包括單片機(jī)資源的初始化、LCD顯示屏的初始化、AD9851 的初始化和循環(huán)判鍵工作。用戶可以通過兩種方法輸入所需頻率:用數(shù)字鍵輸入或者用加一、減一、移位功能鍵輸入。當(dāng)用數(shù)字鍵輸入時要配合OK鍵使用。狀態(tài)鍵是用來進(jìn)行狀態(tài)切換,即正常模式和晶振校正模式之間的切換。當(dāng)切換到晶振校正模式后數(shù)字鍵就無效,只能用功能鍵進(jìn)行晶振的校正操作。其流程圖見圖 52 所示,完整程序見附件1 。初始化單片機(jī)初始化LCD初始化AD9951循環(huán)判鍵校準(zhǔn)鍵保存鍵選擇鍵左移鍵右移鍵減一鍵加一鍵確定鍵 圖52 主程序流程圖 其程序的結(jié)構(gòu)組織如下:void main(void){ dog_eat()。 //開看門狗 beep=0。 //關(guān)蜂鳴器 read_lcd1(0x20)。 //從AT24C02取上次掉電時的數(shù)據(jù)送LCD osc=ChangeBin_OSC(0x10)。 //本振計算 dog_eat()。 //喂狗 trans_FTW()。 //算頻率控制字 lcd_init()。 //LCD顯示初始化 lcd_xie(lcd1)。 //LCD顯示 trans_ad9951()。 //初始化AD9951 dog_eat()。 //喂狗 posi_mark=0xcb。 lcd_mark(posi_mark)。 光標(biāo)定位 while(1) { key_port=0xff。 key=key_port。 //判斷按鍵////校準(zhǔn) 保存 選擇 左移 右移 + 確定// switch(key) { case 0xfe: xiaozhun()。delay5ms(10)。break。 //校準(zhǔn)鍵程序 case 0xfd: save()。delay5ms(10)。break。 //保存鍵程序 case 0xfb: choose()。delay5ms(10)。break。 //選擇鍵程序 case 0xf7: move_left()。break。 //左移鍵程序 case 0xef: move_right()。break。 //右移鍵程序 case 0xdf: data_sub()。break。 //減一鍵程序 case 0xbf: data_add()。break。 //加一鍵程序 case 0x7f: {make_sure()。delay5ms(10)。}break。 //確定鍵程序 default:dog_eat()。break。 } }} 6個寄存器設(shè)置由于設(shè)計只對輸出頻率進(jìn)行控制,使AD9951輸出相應(yīng)的頻率。對相位、幅度不作相應(yīng)的控制要求,所以對相位幅度的設(shè)置采用默認(rèn)狀態(tài),以下是在本設(shè)計中對AD9951內(nèi)部寄存器的相關(guān)設(shè)置??刂萍拇嫫?的設(shè)置:對于本應(yīng)用電路來說,先傳高位則設(shè)CFR18=0;不存在多片AD9951級連的情況,故涉及到多片同步問題的控制位都可以用默認(rèn)值0,具體見附錄中關(guān)于控制寄存器1的設(shè)置;為了使頻率控制字加載時本電路選擇當(dāng)前相位累加器狀態(tài)不改變的工作方式,則設(shè)置CFR113=0且設(shè)置CFR110=0相位累加器以普通方式工作;振幅、角度變換采用余弦函數(shù),則設(shè)置CFR112=0;允許時鐘輸入電路工作,則設(shè)置CFR14=0;SDIO引腳可進(jìn)行輸入輸出雙向串行操作,則設(shè)置CFR19=0;不對OSK引腳編程來控制幅度與時間斜率,則設(shè)置CFR125=0,此時CFR124不用,設(shè)為0即可;涉及到省電模式的都可用默認(rèn)0,故本應(yīng)用電路寫入到控制寄存器CFR1的32位數(shù)據(jù)為00 00 00 00 H. 控制寄存器2的設(shè)置:對于進(jìn)行多片同步設(shè)置的,我們都可以在此應(yīng)用電路圖中采用默認(rèn)值0,比如,設(shè)置CFR211=0,高速同步步進(jìn)關(guān)閉;設(shè)置CFR210=0。硬件手動同步功能無效;由于采用外部振蕩源則設(shè)置CFR29=0 ,CRYSTAL OUT引腳不工作;采用外部晶振30MHZ,為了將芯片工作頻率接近最大工頻400MHZ,設(shè)置CFR27:3為01101,即設(shè)置倍頻數(shù)為13;為了使VCO 操作范圍250MHZ~400MHZ,則設(shè)置CFR22=1;對于工作電流選擇最大工頻所需要的電流值150 UA,CFR21:0=11。故送入CFR2的數(shù)據(jù)是,00 00 6F H。ASF寄存器的設(shè)置:本應(yīng)用電路OSK不被編程操作故采用ASF寄存器默認(rèn)輸出,可設(shè)置為00 00 H。ARR寄存器的設(shè)置:本應(yīng)用電路由于不對幅度做特殊要求,故可以設(shè)置為00 00H。頻率控制寄存器FTW0的設(shè)置:應(yīng)用中采用外部振蕩源,外部晶振為30MHZ,AD9951工作頻率可達(dá)400MHZ,輸出頻率一般只為工作頻率的40%,最大輸出頻率達(dá)160MHZ,為了能輸出盡量高的頻率,所設(shè)的倍頻數(shù)是13,那么fs=1330MHZ,這樣開機(jī)初始化時要輸出fo=10MHZ的頻率, 可算得FTW=110127367,轉(zhuǎn)換成16進(jìn)制就是06906907H。頻率轉(zhuǎn)換程序算法就是基于FTW= 232fo /fs這個表達(dá)式的。初始化可以設(shè)置為06906907H對相位偏置寄存器POW0的設(shè)置:本應(yīng)用電路選擇的是相位零偏移 故可設(shè)POW=0,因此=0,設(shè)置送入到此寄存器的數(shù)據(jù)是:00 00 H。 AD9951寫入控制時序時序圖如圖53:圖53AD9951的控制數(shù)據(jù)格式:給出要寫入的寄存器的地址;把要寫入該寄存器的內(nèi)容送出;UPDATA發(fā)一個脈沖,把數(shù)據(jù)打入寄存器AD9951共有6個控制寄存器,可以通過設(shè)置這些寄存器的內(nèi)容完成多種功能。對于只關(guān)心頻率參數(shù)的應(yīng)用場合,可以只簡單地對控制寄存器2(CFR2)和頻率控制寄存器(FTW0)進(jìn)行設(shè)置即可。而CFR2的07位控制著內(nèi)部倍頻模塊的倍頻數(shù),其他位可以忽略不用管他(使用其默認(rèn)值)。CFR2寄存器的地址為0x01H。頻率控制寄存器(FTW0)的地址為0x04H,長度為32位,負(fù)責(zé)設(shè)置輸出信號的頻率值。在這種應(yīng)用場合,AD9951的控制數(shù)據(jù)格式為:送出CFR2寄存器的地址0x01H;送出要寫入CFR2寄存器
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1