《2013年全國大學(xué)生電子設(shè)計大賽E題論文.doc》由會員分享,可在線閱讀,更多相關(guān)《2013年全國大學(xué)生電子設(shè)計大賽E題論文.doc(24頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
2013年全國大學(xué)生電子設(shè)計競賽
簡易頻率特性測試儀(E題)
【本科組】
2013年9月7日
摘 要
本系統(tǒng)以STC12C5A60S2為主控制器,該單片機(jī)是高速,低功耗,超強(qiáng)抗干擾的新一代8051單片機(jī),速度快8-12倍。以自制DDS電路板AD9854為信號發(fā)生器,產(chǎn)生兩路正交信號,觀察輸出波形,分析并改正信號輸出模塊的性能。然后將信號接入被測網(wǎng)絡(luò)RLC串聯(lián)諧振電路,經(jīng)AD835構(gòu)成的乘法器后,再經(jīng)過低通濾波器,得到直流信號,返回單片機(jī)后經(jīng)處理計算,從而得到被測網(wǎng)絡(luò)的幅頻和相頻特性。
關(guān)鍵詞:STC12C5A60S2 AD9854 AD835
Abstract
This system to STC12C5A60S2 as the main controller, the single chip microcomputer is a high-speed, low power consumption, strong anti-interference of a new generation of 8051 single chip microcomputer, 8-12 times faster. Signal generator using self-made DDS circuit board AD9854, resulting in two orthogonal signal, the output waveform is observed, analyzed and performance correction signal output module. The signal is then access the tested network RLC series resonant circuit, the AD835 multiplier, and low pass filter, get the DC signal, to the microprocessor after processing, which can be obtained by measuring the network the amplitude frequency and phase frequency characteristic.
Keywords: STC12C5A60S2 AD9854 AD835
目 錄
1、系統(tǒng)方案 1
1.1 MCU控制模塊的論證與選擇 1
1.2 DDS信號源的論證與選擇 1
1.3 乘法器的論證與選擇 2
1.4 鍵盤模塊的論證與選擇 2
2、系統(tǒng)理論分析與計算 2
2.1 系統(tǒng)原理 2
2.2 低通濾波器的設(shè)計 2
2.3 ADC的設(shè)計 3
2.4被測網(wǎng)絡(luò)的計算 4
3、電路與程序設(shè)計 5
3.1電路的設(shè)計 5
3.1.1系統(tǒng)總體框圖 5
3.1.2 MCU控制子系統(tǒng)框圖與電路原理圖 5
3.1.3電源 6
3.2程序的設(shè)計 6
3.2.1程序功能描述與設(shè)計思路 6
3.2.2程序流程圖 7
4、測試方案與測試結(jié)果 7
4.1測試方案 7
4.2 測試條件與儀器 9
4.3 測試結(jié)果及分析 9
4.3.1測試結(jié)果(數(shù)據(jù)) 9
4.3.2測試分析與結(jié)論 9
參考文獻(xiàn): 9
附錄1:電路原理圖 11
附錄2:源程序 13
1、系統(tǒng)方案
本系統(tǒng)主要由信號源模塊、被測網(wǎng)絡(luò)模塊、乘法器模塊、低通模塊、ADC模塊、測量顯示模塊、電源模塊組成,下面分別論證這幾個模塊的選擇。
1.1 MCU控制模塊的論證與選擇
方案一:采用51單片機(jī)控制。STC12C5A60S2系列單片機(jī)是高速,低功耗,超強(qiáng)抗干擾的新一代8051單片機(jī),指令代碼完全兼容傳統(tǒng)8051,但速度快8-12倍。內(nèi)部集成MAX810專用復(fù)位電路,2路PWM,8路高速10位A/D轉(zhuǎn)換,針對電機(jī)控制,強(qiáng)干擾場合。
方案二:采用FPGA控制。FPGA即現(xiàn)場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。FPGA一般來說比ASIC(專用集成芯片)的速度要慢,無法完成復(fù)雜的設(shè)計,但是功耗較低。但是他們也有很多的優(yōu)點(diǎn)比如可以快速成品,可以被修改來改正程序中的錯誤和更便宜的造價。
綜合以上兩種方案與實(shí)際情況,選擇方案一。
1.2 DDS信號源的論證與選擇
方案一:采用分立元件和中小規(guī)模集成電路構(gòu)成波形發(fā)生器采用RC串并聯(lián)振蕩器生成正弦信號。該方案的優(yōu)點(diǎn):技術(shù)成熟,可供參考的資料較多。缺點(diǎn):外圍元器件多,調(diào)試工作量較大,頻率穩(wěn)定度和準(zhǔn)確度差,很難滿足頻率變化的范圍要求,更難準(zhǔn)確地實(shí)現(xiàn)頻率步進(jìn)的要求。
方案二:利用專用直接數(shù)字合成DDS芯片AD9851實(shí)現(xiàn)波形發(fā)生器。AD9851可以產(chǎn)生一個穩(wěn)定的頻率和相位且可數(shù)字化編程的模擬正弦波輸出。但是該芯片理論上可達(dá)到70MHz,其實(shí)在實(shí)際應(yīng)用中,當(dāng)頻率達(dá)到30MHz時,波形就失真了,而且外圍電路較為復(fù)雜,需耗費(fèi)大量時間。
方案三:采用AD9854芯片構(gòu)成信號源。AD9854芯片整合了兩路高速、高性能正交D/A轉(zhuǎn)換器通過數(shù)字化編程可以輸出I、Q兩路合成信號,而且可產(chǎn)生一高穩(wěn)定的頻率、相位、幅度可編程的正弦和余弦信號,允許輸出的信號頻率高達(dá)150MHz,而數(shù)字調(diào)制輸出頻率可達(dá)100MHz。
綜合以上三種方案,選擇方案三。
1.3乘法器的論證與選擇
方案一:選用集成模擬乘法器MC1496。模擬乘法器MC1496電路模塊MC1496是根據(jù)雙差分對模擬相乘器基本原理制成的乘法器芯片,用來實(shí)現(xiàn)調(diào)幅電路具有電路簡單,調(diào)試方便的優(yōu)點(diǎn),但是MC1496器件內(nèi)部元件參數(shù)不可能完全相同,致使輸出波形出現(xiàn)載波漏信號,實(shí)際電路的波形并不完全對稱。
方案二:選擇模擬乘法器AD835。AD835是個完備的4象限電壓輸出模擬乘法器,適用于各種信號處理應(yīng)用,只需極少的外部器件,易于使用,性價比高,適合要求使用混合或板級解決方案的應(yīng)用。
綜合以上兩種方案,選擇方案二。
1.4 鍵盤模塊的論證與選擇
方案一:獨(dú)立鍵盤??刂坪唵?,但是占用單片機(jī)IO口資源太多。
方案二:矩陣鍵盤。控制較為復(fù)雜,但是占用單片機(jī)IO口資源少。
綜合以上兩種方案,選擇方案二。
20
2、系統(tǒng)理論分析與計算
2.1 系統(tǒng)原理
根據(jù)數(shù)據(jù)手冊制作了核為AD9854的DDS集成板。通過STC12C5A60S2的控制,使AD9854輸出兩路正交信號,將被測網(wǎng)絡(luò)接入電路,通過乘法器之前,考慮到乘法器芯片 AD835對小信號精度較高,所以利用放大器AD8009將AD9854輸出信號適當(dāng)放大,再送入乘法器。這兩路波分別與輸入信號在各自的環(huán)路中進(jìn)行混頻,經(jīng)低通濾波后分別得到兩路直流信號,返回單片機(jī)處理即可得到被測網(wǎng)絡(luò)的幅頻特性及相頻特性。
2.2 低通濾波器的設(shè)計
所謂的低通濾波器就是允許低頻信號通過,而將高頻信號衰減(如圖2.2.1所示)的電路。
RC低通濾波器電路:
圖2.2.1 一階RC低通濾波器 圖2.2.2 信號幅值變化過程
已知一階RC低通濾波器的微分方程為:,經(jīng)拉氏變換后得傳遞函數(shù) :,截止頻率:。
分析:
(1)時,A(f)=1,此時信號幾乎不受衰減的通過;
(2)時,A(f)=0.707,此式表明RC值決定著截止頻率,因此適當(dāng)改變RC數(shù)值,就可以改變 濾波器的截止頻率;
(3)時,輸出與輸入的積分成正比,,信號發(fā)生衰 減,衰減率為-20dB/10倍頻,當(dāng)需進(jìn)行n階RC低通濾波器并聯(lián)時。
本次設(shè)計選用MAX4187,根據(jù)題目截止頻率要求濾波器電路圖具體電路圖如圖2.2.3
圖2.2.3 反相比例放大器
其中,R為500歐姆, Rf為可調(diào)電阻,0-5k歐姆,放大倍數(shù)A=-Rf/R (2-2-5)
所以A可取0到10,可以滿足題目要求。
2.3 ADC的設(shè)計
數(shù)據(jù)采集電路是用A/D轉(zhuǎn)換器型號AD7822來實(shí)現(xiàn)。轉(zhuǎn)換后的數(shù)字量送給后級電路進(jìn)行進(jìn)一步的處理。采用實(shí)時采樣方式和等效采樣方式對輸入信號進(jìn)行采集。采用實(shí)時采樣方式時示波器對每個采集周期的采樣點(diǎn)按時間順序進(jìn)行簡單的排列就形成了輸入信號的波形。首先經(jīng)過調(diào)整的信號被輸入到A/D轉(zhuǎn)換器為了減少干擾在這之前要經(jīng)過濾波其次CPLD控制A/D轉(zhuǎn)換電路和雙口RAM的工作時序保證快速正確的采集。最后雙口RAM可以直接被A/D轉(zhuǎn)換電路、輸出掃描電路訪問CPLD控制時序?qū)⒉杉降拇鎯υ赗AM里的數(shù)據(jù)輸出給掃描電路輸出波形。
2.4被測網(wǎng)絡(luò)的計算
RLC串聯(lián)諧振仿真電路圖如圖1所示
圖1 RLC仿真電路圖
仿真后輸出的波特圖如圖2所示
圖2 波特圖
根據(jù)相量法,電路的輸入阻抗可表示為:
其品質(zhì)因數(shù)為:
其角頻率為:
諧振頻率為:
將條件代入上述公式,可求得RLC串聯(lián)諧振電路中:,,,。
3、電路與程序設(shè)計
3.1電路的設(shè)計
以STC12C5A60S2為主控制器,以自制DDS電路板AD9854為信號發(fā)生器,產(chǎn)生兩路正交信號,接入被測網(wǎng)絡(luò)RLC串聯(lián)諧振電路,經(jīng)AD853構(gòu)成的乘法器后,再經(jīng)過低通濾波器,得到直流信號,返回單片機(jī)后經(jīng)處理計算,從而得到被測網(wǎng)絡(luò)的幅頻和相頻特性。
3.1.1系統(tǒng)總體框圖
系統(tǒng)總體框圖如圖3-1-1所示
圖3-1-1 系統(tǒng)總體框圖
3.1.2 MCU控制子系統(tǒng)框圖與電路原理圖
1、 正交掃頻信號源子系統(tǒng)框圖
圖3-1-2 正交掃頻信號源子系統(tǒng)框圖
2、 正交掃頻信號源子系統(tǒng)電路原理圖
圖3-1-3 正交掃頻信號源子系統(tǒng)電路原理圖
3.1.3電源
電源由變壓部分、濾波部分、穩(wěn)壓部分組成。為整個系統(tǒng)提供5V或者12V電壓,確保電路的正常穩(wěn)定工作。這部分電路比較簡單,都采用三端穩(wěn)壓管實(shí)現(xiàn),故不作詳述。
3.2程序的設(shè)計
3.2.1程序功能描述與設(shè)計思路
1、程序功能描述
根據(jù)題目要求軟件部分主要實(shí)現(xiàn)鍵盤的設(shè)置和顯示。
1)正交掃頻信號:要求輸出1MHZ―40MHZ的正弦信號。
2)AD轉(zhuǎn)換:把輸出的模擬信號轉(zhuǎn)換為數(shù)字信號。
3)按鍵:設(shè)置頻率增減和掃頻設(shè)置。
4)顯示部分:顯示電壓值、頻段、步進(jìn)值、信號類型、頻率。
2、程序設(shè)計思路
1)①復(fù)位DDS,即Master保持10個以上系統(tǒng)時鐘周期的正脈沖;
②寫控制寄存器。設(shè)置工作模式、數(shù)據(jù)更新方式、鎖相環(huán)倍數(shù)、開啟和屏蔽的功能。
③寫數(shù)據(jù)寄存器。寫入掃頻的起始頻率和終止頻率,設(shè)置掃頻步進(jìn)和掃頻斜率。
④數(shù)據(jù)設(shè)置完成以后,在數(shù)據(jù)更新管腳產(chǎn)生正脈沖,芯片開始掃頻,并不斷以終頻-初頻-終頻的方式循環(huán)。
2)采用8路A/D轉(zhuǎn)換
3)設(shè)置一個按鍵用來控制增加和減少輸出信號的頻率,一個按鍵用來控制掃頻設(shè)置。
4)采用STC12C5A60S2單片機(jī)來控制LCD顯示電壓值、頻段。
3.2.2程序流程圖
主控制芯片以單片機(jī)STC12C5A60S2,采用C語言進(jìn)行編程。
主程序流程圖
信號源流程
A/D轉(zhuǎn)換流程
顯示序流程圖
4、測試方案與測試結(jié)果
4.1測試方案
1、 硬件測試
使用DS1022C數(shù)字示波器觀察并測量。
在硬件測試過程中沒有雨器件的大量投資,焊工的精致,在第一次測試 時,還算比較理想,基本部分的要求幾乎都達(dá)到了,只有正交信號電壓的峰值大于等于1V時,示波器顯示的輸出電壓最大為460mV,達(dá)不到題目的要求,經(jīng)隊(duì)員討論,決定加一有AD8009芯片構(gòu)成的放大器電路,可是在一次又一次的調(diào)試中,只有第一次測試時正交信號電壓得到放大,而后幾次調(diào)試,輸出電壓一直處于衰減狀態(tài),后經(jīng)指導(dǎo)老師指點(diǎn),原來是示波器的衰減度被設(shè)置過了,經(jīng)重新設(shè)置后,正弦信號電壓的峰峰值處于3到5V之間,基本完全實(shí)現(xiàn)試題的基本要求。
2、 軟件仿真測試
仿真結(jié)果:
4.2 測試條件與儀器
測試條件:檢查多次,仿真電路和硬件電路與系統(tǒng)原理圖幾乎相同,并且硬件電路無虛焊。
測試儀器:高精度的數(shù)字毫伏表,模擬示波器,數(shù)字示波器,數(shù)字萬用表,指針式萬用表。
4.3 測試結(jié)果及分析
4.3.1測試結(jié)果(數(shù)據(jù))
2V檔信號測試結(jié)果好下表所示: (單位/V)
信號值
0.2050
0.2100
0.2045
0.4026
1.007
1.542
1.669
1.999
顯示
0.2051
0.2100
0.2044
0.4026
1.006
1.542
1.669
1.999
4.3.2測試分析與結(jié)論
根據(jù)上述測試數(shù)據(jù),本次設(shè)計出的簡易頻率特性測試儀,由此可以得出以下結(jié)論
1、 利用AD9854制作的正交掃頻信號源,可以輸出兩列正弦波,頻率范圍為1MHz~40MHz。
2、 在基本要求部分,幾乎都實(shí)現(xiàn)了題目的要求,輸出的信號電壓值為3到5V,滿足題目要求。
3、在發(fā)揮部分,根據(jù)題目要求,我們制作了一個RLC串聯(lián)諧振電路作為被測網(wǎng)絡(luò),也都幾乎達(dá)到題目所需的要求。
綜上所述,本設(shè)計達(dá)到設(shè)計要求。
參考文獻(xiàn):
[1] 童詩白 華成英.模擬電子線路基礎(chǔ)[M].北京:高等教育出版社,2006年
[2] 張毅剛.單片機(jī)原理及應(yīng)用[M].北京:高等教育出版社,2003年
[3] 金孟嘗.數(shù)字電子技術(shù)基礎(chǔ)[M].北京:高等教育出版社,2006年
[4] 黃智偉.全國大學(xué)生電子設(shè)計競賽(電路設(shè)計)[M].北京:北京航天航空大 學(xué)出版社,2011年。
附錄1:電路原理圖
圖1 正交掃頻信號源子系統(tǒng)電路原理圖
圖2 AD835構(gòu)成的乘法器電路圖
圖3 AD8009管腳圖
附錄2:源程序
#include
//STC單片機(jī)頭文件
#include
#define uint unsigned int
#define uchar unsigned char
#define ulong unsigned long
#define KeyPort P1
uchar FreqWord[6]; //6個字節(jié)頻率控制字
ulong fre;
//***************修改硬件時要修改的部分********************************
#define AD9854_DataBus P0
#define AD9854_AdrBus P2
sbit AD9854_RST = P3^7; //AD9854復(fù)位端口
sbit AD9854_UDCLK = P3^6; //AD9854更新時鐘
sbit AD9854_WR = P3^5; //AD9854寫使能,低有效
sbit AD9854_RD = P3^4; //AD9854讀使能,低有效
sbit AD9854_FDATA = P3^3; //AD9854 FSK,PSK控制
sbit AD9854_OSK = P3^2; //AD9854 OSK控制端
//**************以下部分為函數(shù)定義********************************
static void AD9854_WR_Byte(uchar addr,uchar dat);
extern void AD9854_Init(void);
static void Freq_convert(long Freq);
extern void AD9854_SetSine(ulong Freq,uint Shape);
static void Freq_double_convert(double Freq);
extern void AD9854_SetSine_double(double Freq,uint Shape);
extern void AD9854_InitFSK(void);
extern void AD9854_SetFSK(ulong Freq1,ulong Freq2);
extern void AD9854_InitBPSK(void);
extern void AD9854_SetBPSK(uint Phase1,uint Phase2);
extern void AD9854_InitOSK(void);
extern void AD9854_SetOSK(uchar RateShape);
extern void AD9854_InitAM(void);
extern void AD9854_SetAM(uint Shape);
extern void AD9854_InitRFSK(void);
extern void AD9854_SetRFSK(ulong Freq_Low,ulong Freq_High,ulong Freq_Up_Down,ulong FreRate);
static void delay (uint us);
void AD9854_WR_Byte(uchar addr,uchar dat)
{ AD9854_AdrBus = (addr&0x3f) | (P2&0xc0);
AD9854_DataBus = dat;
AD9854_WR = 0;
AD9854_WR = 1; }
void AD9854_Init(void)
{ AD9854_WR=1;//將讀、寫控制端口設(shè)為無效
AD9854_RD=1; AD9854_UDCLK=0;
AD9854_RST=1; AD9854_RST=0; //復(fù)位AD9854
AD9854_WR_Byte(0x1d,0x10); //關(guān)閉比較器
AD9854_WR_Byte(0x1e,CLK_Set); //設(shè)置系統(tǒng)時鐘倍頻
AD9854_WR_Byte(0x1f,0x00); //設(shè)置系統(tǒng)為模式0,由外部更新
AD9854_WR_Byte(0x20,0x60); //設(shè)置為可調(diào)節(jié)幅度,取消插值補(bǔ)償
AD9854_UDCLK=1; AD9854_UDCLK=0; //更新AD9854輸出
}
void Freq_convert(long Freq)
{ ulong FreqBuf; ulong Temp=Freq_mult_ulong;
uchar Array_Freq[4]; //將輸入頻率因子分為四個字節(jié)
Array_Freq[0]=(uchar)Freq; Array_Freq[1]=(uchar)(Freq>>8);
Array_Freq[2]=(uchar)(Freq>>16); Array_Freq[3]=(uchar)(Freq>>24);
FreqBuf=Temp*Array_Freq[0]; FreqWord[0]=FreqBuf; FreqBuf>>=8;
FreqBuf+=(Temp*Array_Freq[1]); FreqWord[1]=FreqBuf; FreqBuf>>=8;
FreqBuf+=(Temp*Array_Freq[2]); FreqWord[2]=FreqBuf; FreqBuf>>=8;
FreqBuf+=(Temp*Array_Freq[3]); FreqWord[3]=FreqBuf; FreqBuf>>=8;
FreqWord[4]=FreqBuf; FreqWord[5]=FreqBuf>>8;
}
void AD9854_SetSine(ulong Freq,uint Shape)
{ uchar count; uchar Adress;
Adress = 0x04; //選擇頻率控制字地址的初值
Freq_convert(Freq); //頻率轉(zhuǎn)換
for(count=6;count>0;) //寫入6字節(jié)的頻率控制字
{ AD9854_WR_Byte(Adress++,FreqWord[--count]); }
AD9854_WR_Byte(0x21,Shape>>8); //設(shè)置I通道幅度
AD9854_WR_Byte(0x22,(uchar)(Shape&0xff));
AD9854_WR_Byte(0x23,Shape>>8); //設(shè)置Q通道幅度
AD9854_WR_Byte(0x24,(uchar)(Shape&0xff));
AD9854_UDCLK=1; AD9854_UDCLK=0; //更新AD9854輸出
}
void Freq_double_convert(double Freq)
{ ulong Low32; uint High16;
double Temp=Freq_mult_doulle; //23ca99為2的48次方除以120M
Freq*=(double)(Temp);
High16 = (int)(Freq/4294967295); //2^32 = 4294967295
Freq -= (double)High16*4294967295;
Low32 = (ulong)Freq;
FreqWord[0]=Low32; FreqWord[1]=Low32>>8; FreqWord[2]=Low32>>16;
FreqWord[3]=Low32>>24; FreqWord[4]=High16; FreqWord[5]=High16>>8;
}
void AD9854_SetSine_double(double Freq,uint Shape)
{ ucar count=0;uchar Adress;Adress=0x04; //選擇頻率控制字1地址的初值
Freq_double_convert(Freq); //頻率轉(zhuǎn)換
for(count=6;count>0;) //寫入6字節(jié)的頻率控制字
{AD9854_WR_Byte(Adress++,FreqWord[--count]); }
AD9854_WR_Byte(0x21,Shape>>8); //設(shè)置I通道幅度
AD9854_WR_Byte(0x22,(uchar)(Shape&0xff));
AD9854_WR_Byte(0x23,Shape>>8); //設(shè)置Q通道幅度
AD9854_WR_Byte(0x24,(uchar)(Shape&0xff));
AD9854_UDCLK=1; AD9854_UDCLK=0; //更新AD9854輸出
}
void AD9854_InitFSK(void)
{ AD9854_WR=1; AD9854_RD=1; //將讀、寫控制端口設(shè)為無效
AD9854_UDCLK=0; AD9854_RST=1; //復(fù)位AD9854
AD9854_RST=0;
AD9854_WR_Byte(0x1d,0x10); //關(guān)閉比較器
AD9854_WR_Byte(0x1e,CLK_Set); //設(shè)置系統(tǒng)時鐘倍頻
AD9854_WR_Byte(0x1f,0x02); //設(shè)置系統(tǒng)為模式1,由外部更新
AD9854_WR_Byte(0x20,0x60); //設(shè)置為可調(diào)節(jié)幅度,取消插值補(bǔ)償
AD9854_UDCLK=1; //更新AD9854輸出
AD9854_UDCLK=0;
}
void AD9854_SetFSK(ulong Freq1,ulong Freq2)
{ uchar count=6;uchar Adress1,Adress2;
const uint Shape=4000; //幅度設(shè)置. 為12 Bit,取值范圍為(0~4095)
Adress1=0x04; Adress2=0x0a; //選擇頻率控制字1/2地址的初值
Freq_convert(Freq1); //頻率轉(zhuǎn)換1
for(count=6;count>0;) //寫入6字節(jié)的頻率控制字
{AD9854_WR_Byte(Adress1++,FreqWord[--count]); }
Freq_convert(Freq2); //頻率轉(zhuǎn)換2
for(count=6;count>0;) //寫入6字節(jié)的頻率控制字
{ AD9854_WR_Byte(Adress2++,FreqWord[--count]); }
AD9854_WR_Byte(0x21,Shape>>8); //設(shè)置I通道幅度
AD9854_WR_Byte(0x22,(uchar)(Shape&0xff));
AD9854_WR_Byte(0x23,Shape>>8); //設(shè)置Q通道幅度
AD9854_WR_Byte(0x24,(uchar)(Shape&0xff));
AD9854_UDCLK=1; AD9854_UDCLK=0; //更新AD9854輸出
}
void AD9854_InitBPSK(void)
{ AD9854_WR=1; AD9854_RD=1; //將讀、寫控制端口設(shè)為無效
AD9854_UDCLK=0; AD9854_RST=1; AD9854_RST=0; //復(fù)位AD9854
AD9854_WR_Byte(0x1d,0x10); //關(guān)閉比較器
AD9854_WR_Byte(0x1e,CLK_Set); //設(shè)置系統(tǒng)時鐘倍頻
AD9854_WR_Byte(0x1f,0x08); //設(shè)置系統(tǒng)為模式4,由外部更新
AD9854_WR_Byte(0x20,0x60); //設(shè)置為可調(diào)節(jié)幅度,取消插值補(bǔ)償
AD9854_UDCLK=1; //更新AD9854輸出
AD9854_UDCLK=0;
}
void AD9854_SetBPSK(uint Phase1,uint Phase2)
{ uchar count; const ulong Freq=1200000; const uint Shape=4000;
uchar Adress; Adress=0x04; //選擇頻率控制字1地址的初值
AD9854_WR_Byte(0x00,Phase1>>8); //設(shè)置相位1
AD9854_WR_Byte(0x01,(uchar)(Phase1&0xff));
AD9854_WR_Byte(0x02,Phase2>>8); //設(shè)置相位2
AD9854_WR_Byte(0x03,(uchar)(Phase2&0xff));
Freq_convert(Freq); //頻率轉(zhuǎn)換
for(count=6;count>0;) //寫入6字節(jié)的頻率控制字
{AD9854_WR_Byte(Adress++,FreqWord[--count]);}
AD9854_WR_Byte(0x21,Shape>>8); //設(shè)置I通道幅度
AD9854_WR_Byte(0x22,(uchar)(Shape&0xff));
AD9854_WR_Byte(0x23,Shape>>8); //設(shè)置Q通道幅度
AD9854_WR_Byte(0x24,(uchar)(Shape&0xff));
AD9854_UDCLK=1; //更新AD9854輸出
AD9854_UDCLK=0;
}
void AD9854_InitOSK(void)
{ AD9854_WR=1; AD9854_RD=1; //將讀、寫控制端口設(shè)為無效
AD9854_UDCLK=0; AD9854_RST=1; AD9854_RST=0; //復(fù)位AD9854
AD9854_WR_Byte(0x1d,0x10); //關(guān)閉比較器
AD9854_WR_Byte(0x1e,CLK_Set); //設(shè)置系統(tǒng)時鐘倍頻
AD9854_WR_Byte(0x1f,0x00); //設(shè)置系統(tǒng)為模式0,由外部更新
AD9854_WR_Byte(0x20,0x70); //設(shè)可調(diào)節(jié)幅度,取消插值補(bǔ)償,通斷整形內(nèi)部控制
AD9854_UDCLK=1; AD9854_UDCLK=0; //更新AD9854輸出
}
void AD9854_SetOSK(uchar RateShape)
{ uchar count; const ulong Freq=60000; const uint Shape=4000;
//設(shè)置載頻 幅度設(shè)置. 為12 Bit,取值范圍為(0~4095)
uchar Adress; Adress=0x04; //選擇頻率控制字地址的初值
Freq_convert(Freq); //頻率轉(zhuǎn)換
for(count=6;count>0;) //寫入6字節(jié)的頻率控制字
{ AD9854_WR_Byte(Adress++,FreqWord[--count]);}
AD9854_WR_Byte(0x21,Shape>>8); //設(shè)置I通道幅度
AD9854_WR_Byte(0x22,(uchar)(Shape&0xff));
AD9854_WR_Byte(0x23,Shape>>8); //設(shè)置Q通道幅度
AD9854_WR_Byte(0x24,(uchar)(Shape&0xff));
AD9854_WR_Byte(0x25,RateShape); //設(shè)置OSK斜率
AD9854_UDCLK=1; AD9854_UDCLK=0; //更新AD9854輸出
}
void AD9854_InitAM(void)
{ uchar count; const ulong Freq=60000; //設(shè)置載頻
uchar Adress; Adress=0x04; //選擇頻率控制字地址的初值
AD9854_WR=1; AD9854_RD=1; //將讀、寫控制端口設(shè)為無效
AD9854_UDCLK=0; AD9854_RST=1; AD9854_RST=0; //復(fù)位AD9854
AD9854_WR_Byte(0x1d,0x10); //關(guān)閉比較器
AD9854_WR_Byte(0x1e,CLK_Set); //設(shè)置系統(tǒng)時鐘倍頻
AD9854_WR_Byte(0x1f,0x00); //設(shè)置系統(tǒng)為模式0,由外部更新
AD9854_WR_Byte(0x20,0x60); //設(shè)置為可調(diào)節(jié)幅度,取消插值補(bǔ)償
Freq_convert(Freq); //頻率轉(zhuǎn)換
for(count=6;count>0;) //寫入6字節(jié)的頻率控制字
{AD9854_WR_Byte(Adress++,FreqWord[--count]); }
AD9854_UDCLK=1; AD9854_UDCLK=0; //更新AD9854輸出
}
void AD9854_SetAM(uint Shape)
{ AD9854_WR_Byte(0x21,Shape>>8); //設(shè)置I通道幅度
AD9854_WR_Byte(0x22,(uchar)(Shape&0xff));
AD9854_WR_Byte(0x23,Shape>>8); //設(shè)置Q通道幅度
AD9854_WR_Byte(0x24,(uchar)(Shape&0xff));
AD9854_UDCLK=1;AD9854_UDCLK=0; //更新AD9854輸出
}
void AD9854_InitRFSK(void)
{ AD9854_WR=1; AD9854_RD=1; //將讀、寫控制端口設(shè)為無效
AD9854_UDCLK=0; AD9854_RST=1; AD9854_RST=0; //復(fù)位AD9854
AD9854_WR_Byte(0x1d,0x10); //關(guān)閉比較器
AD9854_WR_Byte(0x1e,CLK_Set); //設(shè)置系統(tǒng)時鐘倍頻
AD9854_WR_Byte(0x1f,0x24); //設(shè)系統(tǒng)模式2,由外部更新,使能波掃頻
AD9854_WR_Byte(0x20,0x60); //設(shè)置為可調(diào)節(jié)幅度,取消插值補(bǔ)償 AD9854_UDCLK=1; AD9854_UDCLK=0; //更新AD9854輸出
}
void AD9854_SetRFSK(ulong Freq_Low,ulong Freq_High,ulong Freq_Up_Down,ulong FreRate)
{ uchar count=6; uchar Adress1,Adress2,Adress3; const uint Shape=4000; //幅度設(shè)置. 為12 Bit,取值范圍為(0~4095)
Adress1=0x04; Adress2=0x0a; Adress3=0x10; //選擇頻率控制字地址的初值
Freq_convert(Freq_Low); //頻率1轉(zhuǎn)換
for(count=6;count>0;) //寫入6字節(jié)的頻率控制字
{AD9854_WR_Byte(Adress1++,FreqWord[--count]); }
Freq_convert(Freq_High); //頻率2轉(zhuǎn)換
for(count=6;count>0;) //寫入6字節(jié)的頻率控制字
{AD9854_WR_Byte(Adress2++,FreqWord[--count]); }
Freq_convert(Freq_Up_Down); //步進(jìn)頻率轉(zhuǎn)換
for(count=6;count>0;) //寫入6字節(jié)的頻率控制字
{ AD9854_WR_Byte(Adress3++,FreqWord[--count]); }
AD9854_WR_Byte(0x1a,(uchar)((FreRate>>16)&0x0f)); //設(shè)置斜升速率
AD9854_WR_Byte(0x1b,(uchar)(FreRate>>8));
AD9854_WR_Byte(0x1c,(uchar)FreRate);
AD9854_WR_Byte(0x21,Shape>>8); //設(shè)置I通道幅度
AD9854_WR_Byte(0x22,(uchar)(Shape&0xff));
AD9854_WR_Byte(0x23,Shape>>8); //設(shè)置Q通道幅度
AD9854_WR_Byte(0x24,(uchar)(Shape&0xff));
AD9854_UDCLK=1; AD9854_UDCLK=0; //更新AD9854輸出
}
void delay (uint us)
{ uint i; for(i=0;i
下載提示(請認(rèn)真閱讀)
- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
文檔包含非法信息?點(diǎn)此舉報后獲取現(xiàn)金獎勵!
下載文檔到電腦,查找使用更方便
9.9
積分
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
-
2013
全國大學(xué)生
電子設(shè)計
大賽
論文
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
裝配圖網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學(xué)習(xí)交流,未經(jīng)上傳用戶書面授權(quán),請勿作他用。
鏈接地址:http://m.appdesigncorp.com/p-8711459.html