版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 題 目 簡(jiǎn)易頻率特性測(cè)試儀 </p><p><b> 簡(jiǎn)易頻率特性測(cè)試儀</b></p><p> 摘要:簡(jiǎn)易頻率特性測(cè)試儀是以51單片機(jī)為控制核心的一種測(cè)量頻率的儀器,具有較寬的可測(cè)試帶寬。電路由正交掃頻信號(hào)源、被測(cè)網(wǎng)絡(luò)、混頻器、低通濾波器、ADC以及液晶顯示部分組成。正交掃頻信號(hào)源AD9854采用DDS技術(shù)產(chǎn)生高穩(wěn)定的頻率、相
2、位、幅度可編程調(diào)制的正弦和余弦信號(hào)。被測(cè)網(wǎng)絡(luò)是一個(gè)RLC串聯(lián)諧振電路,其前后分別添加電壓跟隨器和電阻網(wǎng)絡(luò)使其與相鄰電路電阻匹配?;祛l器采用性能高,功耗低的SA602A,將信號(hào)源輸出的正余弦信號(hào)與經(jīng)過(guò)被測(cè)網(wǎng)絡(luò)出來(lái)的處理信號(hào)進(jìn)一步處理,產(chǎn)生高頻與低頻兩種信號(hào)。低通濾波器采用max274芯片過(guò)濾較高頻信號(hào),外接元件少,參數(shù)調(diào)節(jié)方便,也具有良好的抗干擾性。ADC選用AD8317外置,提高AD轉(zhuǎn)換性能。整體電路實(shí)現(xiàn)了測(cè)量較高頻率信號(hào)的頻率測(cè)量及幅
3、頻特性與相頻特性的顯示。</p><p> 關(guān)鍵詞:DDS技術(shù)、中頻正交解調(diào)原理、RLC振蕩電路。</p><p> Abstract:Simple frequency characteristic tester is a metrical instrument which is operated by 51 single chip computer, It has a wide ba
4、ndwidth. The circuit is composed of orthogonal frequency sweep signal source, the measured network, mixer, low-pass filter, ADC and liquid crystal display part. Orthogonal frequency sweep signal source AD9854 using DDS t
5、echnology to produce frequency, phase, amplitude and high stability of the programmable modulation sine and cosine signal. The measured network i</p><p> Keywords:DDS technology、Quadrature demodulation, RLC
6、 oscillating circuit.</p><p><b> 目錄</b></p><p> 摘要--------------------------------------------------------1</p><p> 第1章 設(shè)計(jì)任務(wù)4</p><p><b> 1.1基本要求
7、4</b></p><p><b> 1.2發(fā)揮部分4</b></p><p> 第二章 方案論證5</p><p> 2.1信號(hào)源的選擇5</p><p> 2.2放大器的選擇5</p><p> 2.3混頻器的選擇6</p><p>&l
8、t;b> 2.4阻抗匹配7</b></p><p> 2.5整體電路方案7</p><p> 第三章 理論分析與計(jì)算7</p><p> 第四章 測(cè)試結(jié)果與誤差分析9</p><p> 第五章 結(jié)論、心得與體會(huì)10</p><p><b> 附錄1:11</b&
9、gt;</p><p><b> 附錄2:12</b></p><p><b> 第1章 設(shè)計(jì)任務(wù) </b></p><p><b> 1.1基本要求</b></p><p> ?。?)頻率范圍為1MHz~40MHz,頻率穩(wěn)定度≤10-4;頻率可設(shè)置,最小設(shè)置單位100
10、kHz。</p><p> ?。?)正交信號(hào)相位差誤差的絕對(duì)值≤5º,幅度平衡誤差的絕對(duì)值≤5%。</p><p> (3)信號(hào)電壓的峰峰值≥1V,幅度平坦度≤5%。</p><p> ?。?)可掃頻輸出,掃頻范圍及頻率步進(jìn)值可設(shè)置,最小步進(jìn)100kHz;要求連續(xù)掃頻輸出,一次掃頻時(shí)間≤2s。</p><p><b>
11、 1.2發(fā)揮部分</b></p><p> ?。?)使用基本要求中完成的正交掃頻信號(hào)源,制作頻率特性測(cè)試儀。</p><p> a. 輸入阻抗為50?,輸出阻抗為50?;</p><p> b. 可進(jìn)行點(diǎn)頻測(cè)量;幅頻測(cè)量誤差的絕對(duì)值≤0.5dB,相頻測(cè)量誤差的絕對(duì)值≤5º;數(shù)據(jù)顯示的分辨率:電壓增益0.1dB,相移0.1º。<
12、;/p><p> ?。?)制作一個(gè)RLC串聯(lián)諧振電路作為被測(cè)網(wǎng)絡(luò),如圖2所示,其中Ri和Ro分別為頻率特性測(cè)試儀的輸入阻抗和輸出阻抗;制作的頻率特性測(cè)試儀可對(duì)其進(jìn)行線性掃頻測(cè)量。</p><p> a. 要求被測(cè)網(wǎng)絡(luò)通帶中心頻率為20MHz,誤差的絕對(duì)值≤5%;有載品質(zhì)因數(shù)為4,誤差的絕對(duì)值≤5%;有載最大電壓增益≥-1dB;</p><p> b. 掃頻測(cè)量制作的
13、被測(cè)網(wǎng)絡(luò),顯示其中心頻率和-3dB帶寬,頻率數(shù)據(jù)顯示的分辨率為100kHz;</p><p> c. 掃頻測(cè)量并顯示幅頻特性曲線和相頻特性曲線,要求具有電壓增益、相移和頻率坐標(biāo)刻度。</p><p> 圖1—1 RLC串聯(lián)諧振電路</p><p><b> 第二章 方案論證</b></p><p><b>
14、; 2.1信號(hào)源的選擇</b></p><p> 方案一:采用反饋型LC振蕩原理,選擇合適的電容、電感就能產(chǎn)生相應(yīng)的正弦信號(hào)。此方案器件比較簡(jiǎn)單,但是難以達(dá)到高精度的程控調(diào)節(jié),而且穩(wěn)定度不高,故不采用。 </p><p> 方案二:采用DDS技術(shù)的基本原理。DDS技術(shù)是基于 奈奎斯特采樣定理,將模擬信號(hào)進(jìn)行采集,經(jīng)量化后存入存儲(chǔ)器中,通過(guò)CPLD或者FPGA進(jìn)行尋址查表輸
15、出波形的數(shù)據(jù),再經(jīng)D/A 轉(zhuǎn)換濾波即可恢復(fù)原波形。根據(jù) 奈奎斯特采樣定理知,要使信號(hào)能夠恢復(fù),必須滿足采樣頻率大于被采樣信號(hào)最高頻率的2倍,否則將產(chǎn)生混疊,經(jīng)D/A 不能恢復(fù)原信號(hào)。此方案產(chǎn)生的波形比較穩(wěn)定,在高頻輸出時(shí)會(huì)產(chǎn)生失真,而且電路比較復(fù)雜,故不采用。 </p><p> 方案三:直接采用DDS集成芯片。AD9854具有高達(dá)300MHz的系統(tǒng)時(shí)鐘,通過(guò)并行總線將數(shù)據(jù)寫入程序寄存器,內(nèi)含可編程DDS 系
16、統(tǒng)和高速比較器,能實(shí)現(xiàn)全數(shù)字編程控制的頻率合成。由于DDS集成芯片能達(dá)到要求,而且程控調(diào)節(jié)能夠方便實(shí)現(xiàn),本設(shè)計(jì)采用方案三,作為1M~40MHz正弦信號(hào)發(fā)生。</p><p><b> 2.2放大器的選擇</b></p><p> 方案一:由普通運(yùn)放芯片搭建的運(yùn)算放大器。這種方式計(jì)算簡(jiǎn)單,由電阻比值控制電壓放大倍數(shù)。但缺點(diǎn)是工作頻率范圍為低頻小信號(hào),頻率過(guò)高波形產(chǎn)生
17、失真。故不采用。</p><p> 圖2—1 運(yùn)算放大電路</p><p> 方案二:采用美信公司的max2650。這種芯片內(nèi)部偏置,可在高頻下工作并有較高的固定增益,除此之外工作電路外圍元器件少,不需要連接電阻?;谝陨戏矫娴目紤],選擇max2650。</p><p><b> 2.3混頻器的選擇</b></p>&
18、lt;p> 方案一:搭建混頻電路?;祛l電路可分為模擬相乘混頻器、二極管環(huán)形混頻器、三極管混頻器。</p><p> 圖2—2 模擬相乘混頻器</p><p> 圖2—3 二極管環(huán)形混頻器</p><p> 圖2—4 三極管混頻器</p><p> 變頻器的失真有頻率失真和非線性失真。除此之外,還會(huì)產(chǎn)生各種非線性干擾
19、,如組合頻率、交叉調(diào)制和互相調(diào)制等干擾。自己動(dòng)手搭建的電路不易完成精確條件,調(diào)試電路中比較費(fèi)時(shí)費(fèi)力。所以不選擇此方案。</p><p> 方案二:采用SA602A,是一個(gè)低功耗甚高頻單片雙平衡混頻器輸入放大器,頻率特性好,而且變頻器工作在非線性不太嚴(yán)重的區(qū)域,使之既能完成頻率變換,又能抑制各種干擾。結(jié)合種種優(yōu)點(diǎn),選擇使用SA602A作為混頻器。</p><p><b> 2.
20、4阻抗匹配</b></p><p> 方案一:計(jì)算前一級(jí)的輸出阻抗和后一級(jí)的輸入阻抗,計(jì)算應(yīng)該增加的元件參數(shù),把電容或電感與負(fù)載串聯(lián)起來(lái),即可增加或減少負(fù)載的阻抗值。這種方法計(jì)算麻煩,容易算錯(cuò),所以不選擇這種匹配。</p><p> 方案二:在兩極之間接入電壓跟隨器。由于電壓跟隨器的輸出電壓基本上等于輸入電壓,所以可以看成不改變信號(hào)值。而電壓跟隨器的輸入電阻可以看成無(wú)限大,
21、輸出電阻可以看成無(wú)窮小,所以可以自動(dòng)完成電阻匹配。選擇這種方案。</p><p><b> 2.5整體電路方案</b></p><p> 由以上各部分的討論與選擇,結(jié)合題中所給的框圖,我們將簡(jiǎn)易頻率特性測(cè)試儀的框圖畫在下面。</p><p> 圖2—5 整體框圖</p><p> 第三章 理論分析與計(jì)算<
22、;/p><p> 1.AD9854內(nèi)部包括一個(gè)具有48位相位累加器、一個(gè)可編程時(shí)鐘倍頻器、一個(gè)反sinc濾波器、兩個(gè)12位300MHz DAC,一個(gè)高速模擬比較器以及接口邏輯電路。其主要性能特點(diǎn)如下:</p><p> ?、俑哌_(dá)300MHz的系統(tǒng)時(shí)鐘;</p><p> ②能輸出一般調(diào)制信號(hào),F(xiàn)SK,BPSK,PSK,CHIRP,AM等;</p>&l
23、t;p> ?、?00MHz時(shí)具有80dB的信噪比;</p><p> ?、軆?nèi)部有4*到20*的可編程時(shí)鐘倍頻器;</p><p> ?、輧蓚€(gè)48位頻率控制字寄存器,能夠?qū)崿F(xiàn)很高的頻率分辨率。</p><p> ?、迌蓚€(gè)14位相位偏置寄存器,提供初始相位設(shè)置。</p><p> 帶有100MHz的8位并行數(shù)據(jù)傳輸口或10MHz的串行數(shù)據(jù)
24、傳輸口。</p><p> 用51單片機(jī)控制AD9854,由AD9854產(chǎn)生正交的兩路信號(hào)由于頻率范圍在1MHz-40MHz,頻率越高輸出的信號(hào)幅度將會(huì)越小,所以我們利用AD9854芯片自身的功能,通過(guò)編寫程序?qū)⒉煌l率段的幅度都限制到500mV以下。AD9854的模塊電路如下圖:</p><p> 圖7 AD9854原理圖</p><p> 2.信號(hào)由
25、AD9854輸出,幅度小于500mV,于是在DDS后面接一級(jí)放大,使其峰峰值≥1V,此時(shí)用到的放大器為美信公司的max2650低功耗低噪聲甲類放大器,它的增益固定,不需要外圍電路過(guò)多擴(kuò)展,降低了噪聲的引入途徑和調(diào)試的難度。max2650用于從直流至900MHz,它有一個(gè)平坦的增益響應(yīng)。單+5 V供電。MAX2650的低噪聲系數(shù)(噪聲系數(shù)3.9dB)和高驅(qū)動(dòng)能力(輸入、輸出阻抗50Ω),使它非常適合用于各種傳輸接收、緩沖應(yīng)用。該器件采用內(nèi)
26、部偏置,省去了外部偏置電阻或電感器。典型的應(yīng)用,唯一需要的外部元件就是輸入輸出隔離電容。輸入輸出耦合電容1C、2C的取值:</p><p> 3.余弦信號(hào)的另一條分支流入被測(cè)網(wǎng)絡(luò)。被測(cè)網(wǎng)絡(luò)由一個(gè)電阻、一個(gè)電容和一個(gè)電感組成。</p><p> 圖3—1 被測(cè)網(wǎng)絡(luò)原理圖</p><p> 由題中要求,此電路的輸入阻抗和輸出阻抗分別為50歐。R的值應(yīng)該盡可能小
27、,假設(shè)它的值為10歐,</p><p> Q=w0L/r0=2πf0/R</p><p> 將Q=4,f0=20MHz,R=10帶入式,可以求得L=0.32uH</p><p> 又由 w0=1/√LC</p><p> 將所得的L值帶入上式,求得C,C=199pF</p><p> 4
28、.峰峰值大于1V的信號(hào)與從被測(cè)網(wǎng)絡(luò)出來(lái)的信號(hào)共同輸入SA602A,SA602A將兩個(gè)信號(hào)重新混頻輸出新頻率的信號(hào)。這個(gè)過(guò)程是利用了三角函數(shù)的積化和差原理。假設(shè)信號(hào)Acocwt經(jīng)過(guò)被測(cè)網(wǎng)絡(luò)之后輸出為KAcos(wt+θ),也就是說(shuō)混頻器SA602A的兩個(gè)輸入端分別為Acocwt和KAcos(wt+θ)。</p><p> 三角形的積化和差公式為 </p><p> 所以I路輸出為(1/2
29、)KA²[cos(2wt+θ)+cosθ],通過(guò)低通濾波器將高頻部分濾掉,剩下一路直流量。</p><p> Q路的根據(jù)積化和差公式 同理進(jìn)行計(jì)算。</p><p> 5.低通濾波器出來(lái)的直流量流入ADC,單片機(jī)再次采集數(shù)據(jù)控制液晶顯示頻顯示頻率及幅頻特性曲線和相頻特性曲線。</p><p> 第四章 測(cè)試結(jié)果與誤差分析</p><
30、;p> AD9854由于快遞問(wèn)題,結(jié)題當(dāng)天才收到自制模塊板,故沒(méi)來(lái)得及調(diào)試成功。</p><p> 對(duì)被測(cè)網(wǎng)絡(luò)部分進(jìn)行測(cè)試,使用DDS函數(shù)信號(hào)發(fā)生器模擬輸出1VPP信號(hào),調(diào)試電路。</p><p><b> 最終的測(cè)試結(jié)果為:</b></p><p><b> 圖4—1測(cè)試結(jié)果</b></p>
31、<p> 測(cè)試得到當(dāng)頻率為20.6MHz時(shí),輸出的電壓幅值最大,為476mV,所以中心頻率為20.6MHz,誤差為|20.6-20|/20*100%=3%,滿足“要求被測(cè)網(wǎng)絡(luò)通帶中心頻率為20MHz,誤差的絕對(duì)值≤5%”要求。</p><p> 當(dāng)電壓為中心頻率時(shí)的電壓值的0.707倍,即為337mV時(shí),測(cè)得兩個(gè)相對(duì)應(yīng)的頻率分別為18.2和23.5MHz,則實(shí)際帶寬為23.5-18.2=5.3MHz
32、.而理論值應(yīng)為Bw=f0/Q=20.6/4=5.15MHz。誤差為|5.3-5.15|/5.15&100%=2.9%,滿足“有載品質(zhì)因數(shù)為4,誤差的絕對(duì)值≤5%”要求。</p><p> 有載最大電壓增益=20lg|476/500|=-0.43,滿足“有載最大電壓增益≥-1dB”要求。</p><p> 第五章 結(jié)論、心得與體會(huì)</p><p> 今年
33、,我們?nèi)齻€(gè)人組隊(duì)參加了全國(guó)電子設(shè)計(jì)大賽,經(jīng)過(guò)了初賽,校內(nèi)選拔,并參加了學(xué)校組織的前期培訓(xùn),在整個(gè)準(zhǔn)備和比賽過(guò)程中,我們學(xué)到了很多。</p><p> 在實(shí)驗(yàn)室,我們感受到了前所未有的學(xué)習(xí)方式,從前的學(xué)習(xí)只限于在書本上的勾,記記概念,算算公式,如此而已,學(xué)了很多專業(yè)知識(shí),卻不知道能做什么、怎么做,學(xué)了很多原理,卻不知道怎么去應(yīng)用,在實(shí)驗(yàn)室,面對(duì)各種專業(yè)儀器設(shè)備,我們完全將理論投入到了實(shí)踐,將書本上的知識(shí)變成了零件
34、的組裝、搭建的電路,將抽象的知識(shí)變?yōu)榱司唧w的應(yīng)用,但這是一個(gè)艱辛的過(guò)程,這個(gè)過(guò)程轉(zhuǎn)化當(dāng)中,遇到的很多問(wèn)題,都需要由我們自己來(lái)解決,在這個(gè)過(guò)程,我們深切體會(huì)到了團(tuán)隊(duì)合作和分工的重要性,學(xué)到了許多知識(shí),比如,電路的搭建,焊接、調(diào)試,一些芯片的使用和一些軟件的使用等,最重要的是我們擁有了解決問(wèn)題的能力。</p><p> 電子設(shè)計(jì)競(jìng)賽的組織為我們大學(xué)生提供了良好的科學(xué)研究和科技制作的機(jī)會(huì),使我們收益非淺。衷心地感謝大
35、賽評(píng)委,今后我們會(huì)更加努力,發(fā)揮潛能,培養(yǎng)團(tuán)隊(duì)精神,學(xué)會(huì)做人、做事、做學(xué)問(wèn)。</p><p><b> 附錄1:</b></p><p> AD9854模塊原理圖</p><p> 被測(cè)網(wǎng)絡(luò)原理圖及PCB</p><p> MAX2650、電壓跟隨器、SA602A混合電路</p><p>
36、<b> 附錄2:</b></p><p><b> AD9854程序:</b></p><p> //=====================================================================</p><p> // AD985
37、4 驅(qū)動(dòng)程序設(shè)計(jì)</p><p> //硬件連接: P0 ——Data; </p><p> // P2 ——Adr; </p><p> // RESET ——P3^7; </p><p> // UDCLK ——P3^6; </p>
38、<p> // WR ——P3.5; </p><p> // RD ——p3.4; </p><p> // FDATA ——P3^3; </p><p> // OSK ——P3^2; </p><p> /
39、/ VDD--邏輯電源(3.3V)</p><p> // VSS--GND(0V) </p><p> //AD9854.c</p><p> //說(shuō)明:本程序基于硬件的外接晶振為20MHZ</p><p> //=========================================
40、============================</p><p> #include <STC89C51RC.h> //STC單片機(jī)頭文件</p><p> #include <intrins.h> </p><p> #define uint unsigned int</p><p>
41、 #define uchar unsigned char</p><p> #define ulong unsigned long</p><p> uchar FreqWord[6]; //6個(gè)字節(jié)頻率控制字</p><p> //**********************以下為系統(tǒng)時(shí)鐘以及其相關(guān)變量設(shè)置*********************
42、*****</p><p><b> /* </b></p><p> 此處根據(jù)自己的需要設(shè)置系統(tǒng)時(shí)鐘以及與其相關(guān)的因子,一次需且只需開啟一個(gè) </p><p> CLK_Set為時(shí)鐘倍頻設(shè)置,可設(shè)置4~20倍倍頻,但最大不能超過(guò)300MHZ</p><p> Freq_mult_ulong和Freq_mul
43、t_doulle均為2的48次方除以系統(tǒng)時(shí)鐘,一個(gè)為長(zhǎng)整形,一個(gè)為雙精度型</p><p><b> */</b></p><p><b> /*</b></p><p> #define CLK_Set 4</p><p> const ulong Fre
44、q_mult_ulong = 3518437;</p><p> const double Freq_mult_doulle = 3518437.2088832;</p><p><b> */</b></p><p><b> /*</b></p><p> #define C
45、LK_Set 5</p><p> const ulong Freq_mult_ulong = 2814750;</p><p> const double Freq_mult_doulle = 2814749.76710656;</p><p><b> */</b></p><p>
46、 #define CLK_Set 6</p><p> const ulong Freq_mult_ulong = 2345625;</p><p> const double Freq_mult_doulle = 2345624.80592213;</p><p><b> /*</b></p&
47、gt;<p> #define CLK_Set 7</p><p> const ulong Freq_mult_ulong = 2010536;</p><p> const double Freq_mult_doulle = 2010535.54793326;</p><p><b> */&l
48、t;/b></p><p><b> /*</b></p><p> #define CLK_Set 8</p><p> const ulong Freq_mult_ulong = 1759219;</p><p> const double Freq_mult_dou
49、lle = 1759218.6044416;</p><p><b> */</b></p><p><b> /*</b></p><p> #define CLK_Set 9</p><p> const ulong Freq_mult_ulong =
50、 1563750;</p><p> const double Freq_mult_doulle = 1563749.87061476;</p><p><b> */</b></p><p><b> /*</b></p><p> #define CLK_Set
51、 10</p><p> const ulong Freq_mult_ulong = 1407375;</p><p> const double Freq_mult_doulle = 1407374.88355328;</p><p><b> */</b></p><p><b> /*&
52、lt;/b></p><p> #define CLK_Set 11</p><p> const ulong Freq_mult_ulong = 1279432;</p><p> const double Freq_mult_doulle = 1279431.712321164;</p><p&
53、gt;<b> */</b></p><p><b> /*</b></p><p> #define CLK_Set 12</p><p> const ulong Freq_mult_ulong = 1172812;</p><p> const d
54、ouble Freq_mult_doulle = 1172812.402961067;</p><p><b> */</b></p><p><b> /*</b></p><p> #define CLK_Set 13</p><p> const ulo
55、ng Freq_mult_ulong = 1082596;</p><p> const double Freq_mult_doulle = 1082596.064271754;</p><p><b> */</b></p><p><b> /*</b></p><p> #defi
56、ne CLK_Set 14</p><p> const ulong Freq_mult_ulong = 1005268;</p><p> const double Freq_mult_doulle = 1005267.773966629;</p><p><b> */</b></p>
57、<p><b> /*</b></p><p> #define CLK_Set 15</p><p> const ulong Freq_mult_ulong = 938250;</p><p> const double Freq_mult_doulle = 938249.922368
58、8533;</p><p><b> */</b></p><p> //**************************修改硬件時(shí)要修改的部分********************************</p><p> #define AD9854_DataBus P0</p><p> #defin
59、e AD9854_AdrBus P2</p><p> sbit AD9854_RST = P3^7; //AD9854復(fù)位端口</p><p> sbit AD9854_UDCLK = P3^6; //AD9854更新時(shí)鐘</p><p> sbit AD9854_WR = P3^5; //AD9854寫使能,低有效</p
60、><p> sbit AD9854_RD = P3^4; //AD9854讀使能,低有效</p><p> sbit AD9854_FDATA = P3^3; //AD9854 FSK,PSK控制</p><p> sbit AD9854_OSK = P3^2; //AD9854 OSK控制端</p><p>
61、 //**************************以下部分為函數(shù)定義********************************</p><p> static void AD9854_WR_Byte(uchar addr,uchar dat); </p><p> extern void AD9854_Init(void); </p>&l
62、t;p> static void Freq_convert(long Freq); </p><p> extern void AD9854_SetSine(ulong Freq,uint Shape); </p><p> static void Freq_double_convert(double Freq); </p>&l
63、t;p> extern void AD9854_SetSine_double(double Freq,uint Shape);</p><p> extern void AD9854_InitFSK(void);</p><p> extern void AD9854_SetFSK(ulong Freq1,ulong Freq2); </p>
64、<p> extern void AD9854_InitBPSK(void); </p><p> extern void AD9854_SetBPSK(uint Phase1,uint Phase2);</p><p> extern void AD9854_InitOSK(void); </p><p> ext
65、ern void AD9854_SetOSK(uchar RateShape); </p><p> extern void AD9854_InitAM(void); </p><p> extern void AD9854_SetAM(uint Shape);</p><p> extern void AD9854_InitR
66、FSK(void); </p><p> extern void AD9854_SetRFSK(ulong Freq_Low,ulong Freq_High,ulong Freq_Up_Down,ulong FreRate);</p><p> static void delay (uint us);</p><p> //=========
67、===========================================================================</p><p> //函數(shù)名稱:void AD9854_WR_Byte(uchar addr,uchar dat)</p><p> //函數(shù)功能:AD9854并行口寫入數(shù)據(jù)</p><p> //入口參數(shù):a
68、ddr 6位地址</p><p> // dat 寫入的數(shù)據(jù)</p><p><b> //出口參數(shù):無(wú)</b></p><p> //====================================================================================&
69、lt;/p><p> void AD9854_WR_Byte(uchar addr,uchar dat)</p><p><b> {</b></p><p> AD9854_AdrBus = (addr&0x3f) | (P2&0xc0);</p><p> AD9854_DataBus = da
70、t;</p><p> AD9854_WR = 0;</p><p> AD9854_WR = 1;</p><p><b> }</b></p><p> //=================================================================
71、===================</p><p> //函數(shù)名稱:void AD9854_Init(void)</p><p> //函數(shù)功能:AD9854初始化</p><p><b> //入口參數(shù):無(wú)</b></p><p><b> //出口參數(shù):無(wú)</b></p>
72、<p> //====================================================================================</p><p> void AD9854_Init(void)</p><p><b> {</b></p><p> AD9854_WR=
73、1;//將讀、寫控制端口設(shè)為無(wú)效</p><p> AD9854_RD=1;</p><p> AD9854_UDCLK=0;</p><p> AD9854_RST=1; //復(fù)位AD9854</p><p> AD9854_RST=0;</p><p> AD9854_WR
74、_Byte(0x1d,0x10); //關(guān)閉比較器</p><p> AD9854_WR_Byte(0x1e,CLK_Set); //設(shè)置系統(tǒng)時(shí)鐘倍頻 </p><p> AD9854_WR_Byte(0x1f,0x00); //設(shè)置系統(tǒng)為模式0,由外部更新</p><p> AD9854_WR_Byte
75、(0x20,0x60); //設(shè)置為可調(diào)節(jié)幅度,取消插值補(bǔ)償</p><p> AD9854_UDCLK=1; //更新AD9854輸出</p><p> AD9854_UDCLK=0;</p><p><b> }</b></p><p> //================
76、====================================================================</p><p> //函數(shù)名稱:void Freq_convert(long Freq)</p><p> //函數(shù)功能:正弦信號(hào)頻率數(shù)據(jù)轉(zhuǎn)換</p><p> //入口參數(shù):Freq 需要轉(zhuǎn)換的頻率,取值從0~SYSC
77、LK/2</p><p> //出口參數(shù):無(wú) 但是影響全局變量FreqWord[6]的值</p><p> //說(shuō)明: 該算法位多字節(jié)相乘算法,有公式FTW = (Desired Output Frequency × 2N)/SYSCLK</p><p> // 得到該算法,其中N=48,Desired Output Freq
78、uency 為所需要的頻率,即Freq,SYSCLK</p><p> // 為可編程的系統(tǒng)時(shí)鐘,F(xiàn)TW為48Bit的頻率控制字,即FreqWord[6]</p><p> //====================================================================================</p>&
79、lt;p> void Freq_convert(long Freq) </p><p><b> {</b></p><p> ulong FreqBuf;</p><p> ulong Temp=Freq_mult_ulong; </p><p> uchar Array_Fre
80、q[4]; //將輸入頻率因子分為四個(gè)字節(jié)</p><p> Array_Freq[0]=(uchar)Freq;</p><p> Array_Freq[1]=(uchar)(Freq>>8);</p><p> Array_Freq[2]=(uchar)(Freq>>16);</p><p>
81、 Array_Freq[3]=(uchar)(Freq>>24);</p><p> FreqBuf=Temp*Array_Freq[0]; </p><p> FreqWord[0]=FreqBuf; </p><p> FreqBuf>>=8;</p><p> Fr
82、eqBuf+=(Temp*Array_Freq[1]);</p><p> FreqWord[1]=FreqBuf;</p><p> FreqBuf>>=8;</p><p> FreqBuf+=(Temp*Array_Freq[2]);</p><p> FreqWord[2]=FreqBuf;</p>
83、<p> FreqBuf>>=8;</p><p> FreqBuf+=(Temp*Array_Freq[3]);</p><p> FreqWord[3]=FreqBuf;</p><p> FreqBuf>>=8;</p><p> FreqWord[4]=FreqBuf;</p>
84、<p> FreqWord[5]=FreqBuf>>8;</p><p><b> } </b></p><p> //====================================================================================</p><p>
85、 //函數(shù)名稱:void AD9854_SetSine(ulong Freq,uint Shape)</p><p> //函數(shù)功能:AD9854正弦波產(chǎn)生程序</p><p> //入口參數(shù):Freq 頻率設(shè)置,取值范圍為0~(1/2)*SYSCLK</p><p> // Shape 幅度設(shè)置. 為12 Bit,取值范圍為(0~409
86、5) ,取值越大,幅度越大 </p><p><b> //出口參數(shù):無(wú)</b></p><p> //====================================================================================</p><p> void AD9854_SetSine(ulon
87、g Freq,uint Shape)</p><p><b> {</b></p><p> uchar count;</p><p> uchar Adress;</p><p> Adress = 0x04; //選擇頻率控制字地址的初值</p>&
88、lt;p> Freq_convert(Freq); //頻率轉(zhuǎn)換</p><p> for(count=6;count>0;) //寫入6字節(jié)的頻率控制字 </p><p><b> {</b></p><p> AD9854_WR_Byte(Adress++,FreqWord[
89、--count]);</p><p><b> }</b></p><p> AD9854_WR_Byte(0x21,Shape>>8); //設(shè)置I通道幅度</p><p> AD9854_WR_Byte(0x22,(uchar)(Shape&0xff));</p><p> AD985
90、4_WR_Byte(0x23,Shape>>8); //設(shè)置Q通道幅度</p><p> AD9854_WR_Byte(0x24,(uchar)(Shape&0xff));</p><p> AD9854_UDCLK=1; //更新AD9854輸出</p><p> AD9854_UDCLK=0;&
91、lt;/p><p><b> }</b></p><p> //====================================================================================</p><p> //函數(shù)名稱:void Freq_doublt_convert(double Freq)&l
92、t;/p><p> //函數(shù)功能:正弦信號(hào)頻率數(shù)據(jù)轉(zhuǎn)換</p><p> //入口參數(shù):Freq 需要轉(zhuǎn)換的頻率,取值從0~SYSCLK/2</p><p> //出口參數(shù):無(wú) 但是影響全局變量FreqWord[6]的值</p><p> //說(shuō)明: 有公式FTW = (Desired Output Frequency
93、15; 2N)/SYSCLK得到該函數(shù),</p><p> // 其中N=48,Desired Output Frequency 為所需要的頻率,即Freq,SYSCLK</p><p> // 為可編程的系統(tǒng)時(shí)鐘,F(xiàn)TW為48Bit的頻率控制字,即FreqWord[6]</p><p> //注意: 該函數(shù)與上面函數(shù)的區(qū)別
94、為該函數(shù)的入口參數(shù)為double,可使信號(hào)的頻率更精確</p><p> // 谷雨建議在100HZ以下用本函數(shù),在高于100HZ的情況下用函數(shù)void Freq_convert(long Freq)</p><p> //==========================================================================
95、==========</p><p> void Freq_double_convert(double Freq) </p><p><b> {</b></p><p> ulong Low32;</p><p> uint High16;</p><p> double Tem
96、p=Freq_mult_doulle; //23ca99為2的48次方除以120M</p><p> Freq*=(double)(Temp);</p><p> //1 0000 0000 0000 0000 0000 0000 0000 0000 = 4294967295</p><p> High16 = (int)(Fr
97、eq/4294967295); //2^32 = 4294967295</p><p> Freq -= (double)High16*4294967295;</p><p> Low32 = (ulong)Freq;</p><p> FreqWord[0]=Low32; </p><p>
98、 FreqWord[1]=Low32>>8;</p><p> FreqWord[2]=Low32>>16;</p><p> FreqWord[3]=Low32>>24;</p><p> FreqWord[4]=High16;</p><p> FreqWord[5]=High16>&g
99、t;8;</p><p><b> } </b></p><p> //====================================================================================</p><p> //函數(shù)名稱:void AD9854_SetSine_double(dou
100、ble Freq,uint Shape)</p><p> //函數(shù)功能:AD9854正弦波產(chǎn)生程序</p><p> //入口參數(shù):Freq 頻率設(shè)置,取值范圍為0~1/2*SYSCLK</p><p> // Shape 幅度設(shè)置. 為12 Bit,取值范圍為(0~4095) </p><p><b>
101、; //出口參數(shù):無(wú)</b></p><p> //====================================================================================</p><p> void AD9854_SetSine_double(double Freq,uint Shape)</p><p
102、><b> {</b></p><p> uchar count=0;</p><p> uchar Adress;</p><p> Adress=0x04; //選擇頻率控制字1地址的初值</p><p> Freq_double_convert(Freq);
103、 //頻率轉(zhuǎn)換</p><p> for(count=6;count>0;) //寫入6字節(jié)的頻率控制字 </p><p><b> {</b></p><p> AD9854_WR_Byte(Adress++,FreqWord[--count]);</p><p>
104、;<b> }</b></p><p> AD9854_WR_Byte(0x21,Shape>>8); //設(shè)置I通道幅度</p><p> AD9854_WR_Byte(0x22,(uchar)(Shape&0xff));</p><p> AD9854_WR_Byte(0x23,Shape>>8)
105、; //設(shè)置Q通道幅度</p><p> AD9854_WR_Byte(0x24,(uchar)(Shape&0xff));</p><p> AD9854_UDCLK=1; //更新AD9854輸出</p><p> AD9854_UDCLK=0;</p><p><b>
106、 }</b></p><p> //====================================================================================</p><p> //函數(shù)名稱:void AD9854_InitFSK(void)</p><p> //函數(shù)功能:AD9854的FSK初始化&
107、lt;/p><p><b> //入口參數(shù):無(wú)</b></p><p><b> //出口參數(shù):無(wú)</b></p><p> //====================================================================================</p>
108、<p> void AD9854_InitFSK(void)</p><p><b> {</b></p><p> AD9854_WR=1; //將讀、寫控制端口設(shè)為無(wú)效</p><p> AD9854_RD=1;</p><p> AD9854_UDC
109、LK=0;</p><p> AD9854_RST=1; //復(fù)位AD9854</p><p> AD9854_RST=0;</p><p> AD9854_WR_Byte(0x1d,0x10); //關(guān)閉比較器</p><p> AD9854_WR_Byte(0x1e,C
110、LK_Set); //設(shè)置系統(tǒng)時(shí)鐘倍頻</p><p> AD9854_WR_Byte(0x1f,0x02); //設(shè)置系統(tǒng)為模式1,由外部更新</p><p> AD9854_WR_Byte(0x20,0x60); //設(shè)置為可調(diào)節(jié)幅度,取消插值補(bǔ)償</p><p> AD9854_UDCLK=1;
111、 //更新AD9854輸出</p><p> AD9854_UDCLK=0;</p><p><b> }</b></p><p> //====================================================================================</p>&l
112、t;p> //函數(shù)名稱:void AD9854_SetFSK(ulong Freq1,ulong Freq2)</p><p> //函數(shù)功能:AD9854的FSK設(shè)置</p><p> //入口參數(shù):Freq1 FSK頻率1 </p><p> // Freq2 FSK頻率2</p><p><
113、;b> //出口參數(shù):無(wú)</b></p><p> //====================================================================================</p><p> void AD9854_SetFSK(ulong Freq1,ulong Freq2)</p><p&g
114、t;<b> {</b></p><p> uchar count=6;</p><p> uchar Adress1,Adress2;</p><p> const uint Shape=4000; //幅度設(shè)置. 為12 Bit,取值范圍為(0~4095)</p><p> Adress1=0x
115、04; //選擇頻率控制字1地址的初值</p><p> Adress2=0x0a; //選擇頻率控制字2地址的初值</p><p> Freq_convert(Freq1); //頻率轉(zhuǎn)換1</p><p> for(count=6;count>0;) //寫入6字節(jié)的頻率控制字 <
116、;/p><p><b> {</b></p><p> AD9854_WR_Byte(Adress1++,FreqWord[--count]);</p><p><b> }</b></p><p> Freq_convert(Freq2); //頻率轉(zhuǎn)換2</
117、p><p> for(count=6;count>0;) //寫入6字節(jié)的頻率控制字 </p><p><b> {</b></p><p> AD9854_WR_Byte(Adress2++,FreqWord[--count]);</p><p><b> }</b>
118、;</p><p> AD9854_WR_Byte(0x21,Shape>>8); //設(shè)置I通道幅度</p><p> AD9854_WR_Byte(0x22,(uchar)(Shape&0xff));</p><p> AD9854_WR_Byte(0x23,Shape>>8); //設(shè)置Q通道幅度&l
119、t;/p><p> AD9854_WR_Byte(0x24,(uchar)(Shape&0xff));</p><p> AD9854_UDCLK=1; //更新AD9854輸出</p><p> AD9854_UDCLK=0;</p><p><b> }</b>&
120、lt;/p><p> //====================================================================================</p><p> //函數(shù)名稱:void AD9854_InitBPSK(void)</p><p> //函數(shù)功能:AD9854的BPSK初始化</p>
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)論文---基于labview的頻率特性測(cè)試儀設(shè)計(jì)
- 電子與信息工程畢業(yè)論文簡(jiǎn)易放大器頻率特性測(cè)試儀的設(shè)計(jì)(測(cè)試部分)
- 簡(jiǎn)易放大器頻率特性測(cè)試儀的設(shè)計(jì)(測(cè)試部分)【開題報(bào)告】
- 簡(jiǎn)易放大器頻率特性測(cè)試儀的設(shè)計(jì)(測(cè)試部分)【文獻(xiàn)綜述】
- 頻率特性測(cè)試儀系統(tǒng)的設(shè)計(jì).pdf
- 簡(jiǎn)易自動(dòng)電阻測(cè)試儀畢業(yè)論文
- 簡(jiǎn)易自動(dòng)電阻測(cè)試儀畢業(yè)論文
- 數(shù)字頻率特性測(cè)試儀的優(yōu)化設(shè)計(jì).pdf
- 基于DDS的頻率特性測(cè)試儀的設(shè)計(jì).pdf
- 基于FPGA的頻率特性測(cè)試儀的研制.pdf
- 基于單片機(jī)的頻率特性測(cè)試儀開題報(bào)告
- 低成本頻率特性測(cè)試儀的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于虛擬儀器技術(shù)的頻率特性測(cè)試儀.pdf
- 簡(jiǎn)易幅頻特性測(cè)試儀
- 基于虛擬儀器技術(shù)的頻率特性測(cè)試儀的設(shè)計(jì).pdf
- 電阻測(cè)試儀畢業(yè)設(shè)計(jì)---簡(jiǎn)易自動(dòng)電阻測(cè)試儀
- 電容測(cè)試儀設(shè)計(jì)【畢業(yè)論文】
- 基于AD9954的數(shù)字化頻率特性測(cè)試儀的研制.pdf
- 畢業(yè)論文--脈沖信號(hào)參數(shù)測(cè)試儀
- 畢業(yè)論文--脈沖信號(hào)參數(shù)測(cè)試儀
評(píng)論
0/150
提交評(píng)論