




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、各種信號的時域和頻域波形仿真1基本波形(1)正弦波 時域表達式: 為正弦波頻率,為初始相位頻域表達式: 為正弦波角頻率,且圖1-1-1 正弦波時域頻域波形從圖1-1-1中可以看出,正弦波的頻率為50Hz,峰值為1V,初始相位為。采樣率為5KHz,一個周期100個采樣點。MATLAB程序:close all;clear all;clc;fm=50;%信號的頻率fs=100*fm;%采樣頻率N=2048;%采樣點數phase=pi/2;%信號初始相位t1=0:1/fs:1/fs*(N-1);%采樣時間序列sin_1=sin(2*pi*fm*t1+phase);%產生正弦信號figure;subpl
2、ot(2,1,1);plot(t1,sin_1);xlabel('時間/秒');ylabel('正弦波時域波形');title('正弦波形');fft_sin=fft(sin_1);%求頻譜subplot(2,1,2);plot(0:1:N-1).*(fs/N),20*log10(abs(fft_sin);xlabel('頻率/Hz');ylabel('頻譜/dB');title('正弦波頻譜');Verilog程序module zx( input clk, output DAclk, output
3、 15:0 wave_out );reg clk20M=0;reg we=1;reg14:0 data=1;wire15:0 wave_out1;always(posedge clk)clk20M=clk20M;assign DAclk=clk20M;assign wave_out=wave_out1+32768;dds u1(.clk(clk20M),.we(we),.data(data),.sine(),.cosine(wave_out1);endmodule調用ISE IP Core 中的DDS核,clk為時鐘輸入,data是相位累加數據輸入,we是控制信號,we為高時數據有效。圖1-1
4、-2 Modelsim正弦波仿真圖圖1-1-3 示波器輸出波形(2)鋸齒波鋸齒波和三角波時域表達式:周期鋸齒波的傅立葉級數產生一個周期為T、幅度在-1到+1之間的周期性三角波信號。其中width表示最大幅度出現的位置。圖1-2-1 鋸齒波時域頻域波形從圖1-2-1中可以看出,正弦波的頻率為50Hz,峰值為1V,采樣率為5KHz,一個周期100個采樣點。MATLAB程序:close all;clear all;clc;fm=50; fs=100*fm;t=0:1/fs:0.1;A=1;x1=sawtooth(2*pi*fm*t,A); subplot(2,1,1);plot(t,x1);xlab
5、el('時間/秒');ylabel('鋸齒波');N=220;X1=fft(x1,N);f=-fs/2:fs/N:(fs/2-fs/N);subplot(2,1,2);plot(f,fftshift(abs(X1)/max(abs(X1);axis(-250 250 0 1);ylabel('鋸齒波頻域波形');xlabel('頻率/Hz');Verilog程序module jc( input clk, output DAclk, output 15:0 wave_out );reg clk20M=0; reg15:0 wave_
6、out1=16'b1000000000000001; always(posedge clk) clk20M=clk20M; always(posedge clk) wave_out1=wave_out1+2;assign DAclk=clk20M;assign wave_out=wave_out1+32768;endmodule圖1-2-2 Modelsim鋸齒波仿真圖圖1-2-3 示波器輸出波形(3)三角波前面提過,當width=0.5時為三角波:周期三角波的傅立葉級數圖1-3-1三角波時域頻域圖從圖1-3-1中可以看出,正弦波的頻率為50Hz,峰值為1V,采樣率為5KHz,一個周期
7、100個采樣點MATLAB程序close all;clear all;clc;fm=50; fs=100*fm;t=0:1/fs:0.1;A=0.5;x1=sawtooth(2*pi*fm*t,A); subplot(2,1,1);plot(t,x1);xlabel('時間/秒');ylabel('三角波');N=220;X1=fft(x1,N);f=-fs/2:fs/N:(fs/2-fs/N);subplot(2,1,2);plot(f,fftshift(abs(X1)/max(abs(X1);axis(-250 250 0 1);ylabel('三角
8、波頻域波形');xlabel('頻率/Hz ');Verilog程序module sj( input clk, output DAclk, output 15:0 wave_out );reg15:0 four=16'd4;reg clk20M=0;reg15:0 wave_out1=16'b0000000000000000;always(posedge clk)clk20M=clk20M;always(posedge clk20M)begin if(wave_out1>=16'b1111111111110000) four<=16&
9、#39;b1111111111111100;else if(wave_out1<=16'b0000000000001100) four<=16'd4;else four<=four; wave_out1<=wave_out1+four;endassign DAclk=clk20M;assign wave_out=wave_out1; endmodule圖1-3-2 Modelsim三角波仿真圖圖1-3-3 示波器輸出波形(4)方波時域表達式:頻譜:程序公式表達式中:,以此產生一個頻率為、幅度為±1的周期性方波信號。其中表示占空比,即在信號的一個
10、周期中正值所占的百分比,占空比為50%時,輸出波形為方波圖1-4-1方波時域頻域圖從圖1-4-1中可以看出,正弦波的頻率為50Hz,峰值為1V,采樣率為5KHz,一個周期100個采樣點MATLAB程序close all;clear all;clc;fm=50; Fs=100*fm;t=0:1/Fs:0.1;A=0.5;t=0:1/Fs:0.1;x=square(2*pi*fm*t,50);subplot(2,2,1);plot(t,x);ylabel('方波')xlabel('時間/s');N=2048;X=fft(x,N);f=-Fs/2:Fs/N:(Fs/2
11、-Fs/N);subplot(2,2,2);plot(f,fftshift(abs(X)/max(abs(X);axis(-250 250 0 1);ylabel('方波頻域波形');xlabel('頻率/Hz');Verilog程序:module fb( input clk, output DAclk, output 15:0 wave_out );reg11:0 counter=1;reg clk20M=0;reg15:0 wave_out1=16'b1000000000000001;always(posedge clk)clk20M=clk20M;
12、always(posedge clk20M) counter=counter+1;always(posedge clk20M) if(counter=0) wave_out1=wave_out1+1;assign DAclk=clk20M;assign wave_out=wave_out1+32768;endmodule圖1-4-2 Modelsim方波仿真圖圖1-4-3 示波器輸出波形(5)不對稱方波時域表達式:頻譜當duty不等于50時,為不對稱方波:圖1-5-1不對稱方波時域頻域圖從圖1-5-1中可以看出,正弦波的頻率為50Hz,峰值為1V,采樣率為5KHz,一個周期100個采樣點MAT
13、ALB程序fm=50;Fs=100*fm;t=0:1/Fs:0.1;x=square(2*pi*fm*t,75);subplot(2,1,1);plot(t,x);axis(0 0.1 -2 2);N=220;X=fft(x,N);f=-Fs/2:Fs/N:(Fs/2-Fs/N);subplot(2,1,2);plot(f,fftshift(abs(X)/max(abs(X);axis(-250 250 0 1);ylabel('不對稱方波頻域波形');xlabel('頻率/Hz');Verilog程序:module bucfb( input clk, outp
14、ut DAclk, output 15:0 wave_out );reg14:0 counter=1;reg clk20M=0;reg15:0 wave_out1=16'b1000000000000001;always(posedge clk)clk20M=clk20M;always(posedge clk20M)counter=counter+1;always(posedge clk20M)if(counter=0|counter=6554)wave_out1=wave_out1+1;assign DAclk=clk20M;assign wave_out=wave_out1+3276
15、8; endmodule圖1-5-2 Modelsim不對稱方波仿真圖圖1-5-3 示波器輸出波形(6)偽隨機編碼偽隨機噪聲具有類似于隨機噪聲的一些統計特性,同時便于重復產生和處理,因而得到廣泛應用,目前廣泛應用的偽隨機噪聲主要是由數字電路產生的周期序列,又稱偽隨機序列。通常產生偽隨機序列的電路為一反饋移存器,有線性和非線性兩種,線性反饋移存器產生出的周期最長的二進制數字序列稱為最大長度線性反饋移存器序列,通常簡稱為m序列,這是一種常用的偽隨機序列。m序列碼發生器是一種反饋移位型結構的電路,它由n位移位寄存器加異或反饋網絡組成,其序列長度M2n-1,只有一個多余狀態即全0狀態,所以稱為最大線性
16、序列碼發生器。反饋電路需要滿足一定的條件才能得到最長序列。圖1-6-1偽碼時域頻域圖MATLAB程序close all;clear all;clcm=5;an=zeros(1,m-1),1; y=zeros(1,(2m-1); f1=15000; t=0:1/f1:(2m-2)/f1; for i=1:1:(2m-1) ; y(i) = an(1); b = an(1); an(1:(m-1)=an(2:m); an(m)=xor(an(3),b); end z=2*y-1; y=z;subplot(2,1,1)stairs(t,y); N=1000;%采樣點數fs=10000;sf=fft(
17、y,N);subplot(2,1,2);plot(0:1:N-1).*(fs/N),20*log10(abs(sf);ylabel('頻譜/dB')xlabel('頻率/Hz')title(' M序列頻譜');Verilog程序module wm( input clk, output DAclk, output 15:0 wave_out );reg12:0 counter=0;reg2:0 a=3'b001;reg clk20M=0;reg b;reg15:0 wave_out1;always(posedge clk)clk20M=cl
18、k20M;always(posedge clk20M)if(counter=4680)counter=0;else counter=counter+1;always(posedge clk20M)if(counter=4680)begin b=a0a2; a2=a1; a1=a0; a0=b;wave_out1=(a2=1)?16'b0111111111111111:16'b1000000000000001;end assign DAclk=clk20M;assign wave_out=wave_out1+32768; endmodule圖1-6-2 Modelsim偽碼仿真圖
19、圖1-6-3 示波器輸出波形2調幅(1)雙邊帶條幅(AM)如圖,是線性調制器的一般模型,若m(t)中有直流,且h(t)是理想帶通濾波器的沖激響應,則輸出的已調信號就是調幅信號。時域表示如下頻域表示:用Matlab產生一個頻率為200kHz的余弦信號,設A為控制其調制度的參量,且A大于1,載波,采樣率為圖2-1-1AM時域頻域圖MATLAB程序close all;clear all;clcA=1.5;fc=3*106;fm=200*103;fs=30*106;t=0:1/fs:2/fm;mt=A+cos(2*pi*fm*t);%sin信號sAM=mt.*cos(2*pi*fc*t);subplo
20、t(2,1,1)plot(t,sAM);hold on;plot(t,mt,'r-');ylabel('AM調制信號')xlabel('t');N=215;sf=fft(sAM,N);f=-fs/2:fs/N:(fs/2-fs/N);subplot(2,1,2)plot(f,fftshift(abs(sf)/max(abs(sf);grid on;axis(-5*106 5*106 0 1);ylabel('AM頻域調制波形')xlabel('頻率/Hz')Verilog程序module AM( input clk
21、, output DAclk, output 15:0 wave_out );reg31:0 tzxh;reg31:0 zbxh;reg we=1;reg14:0 data_low=1;reg14:0 data_high=32;wire15:0 zxsc;wire15:0 gpsc;reg clk20M=0;reg15:0 wave_out1; /16位內部移位信號reg31:0 wave_out2; /32位內部調幅信號always(posedge clk)clk20M=clk20M;always(posedge clk20M) begin tzxh=18zxsc15,zxsc14:1; z
22、bxh=17gpsc15,gpsc14:0; wave_out2=(32'b111111111111111+tzxh)*zbxh; wave_out1=wave_out231:16;endassign DAclk=clk20M;assign wave_out=wave_out1+32768; dds u1(.clk(clk20M),.we(we),.data(data_low),.cosine(zxsc),.sine();dds u2(.clk(clk20M),.we(we),.data(data_high),.cosine(gpsc),.sine();Endmodule圖2-1-2
23、ModelsimAM仿真圖圖2-1-3 示波器輸出波形(2) 抑制載波雙邊帶調幅若是AM調制中,調制信號不疊加直流信號,則為DSB調制。時域表示:頻域表示:MATLAB仿真程序也類似,只需將A=0,仿真結果如下:圖2-2-1 DSB時域頻域圖Verilog程序module DSB( input clk, output DAclk, output 15:0 wave_out);reg30:0 tzxh;reg30:0 zbxh;reg we=1;reg14:0 data_low=1;reg14:0 data_high=32;wire15:0 zxsc;wire15:0 gpsc;reg clk2
24、0M=0;reg15:0 wave_out1; /16位內部移位信號reg30:0 wave_out2; /31位內部調幅信號always(posedge clk)clk20M=clk20M;always(posedge clk20M) begin tzxh=16zxsc15,zxsc14:0; zbxh=16gpsc15,gpsc14:0; wave_out2=tzxh*zbxh; wave_out1=wave_out230:15;endassign DAclk=clk20M;assign wave_out=wave_out1+32768; dds u1(.clk(clk20M),.we(w
25、e),.data(data_low),.cosine(zxsc),.sine();dds u2(.clk(clk20M),.we(we),.data(data_high),.cosine(gpsc),.sine();endmodule圖2-2-2 Modelsim DSB仿真圖圖2-2-3 示波器輸出波形(3)單邊帶調幅將雙邊帶調制信號通過上/下邊帶帶通濾波器,就可得到單邊帶信號。單邊帶信號的頻譜:上/下邊帶帶通濾波器的傳輸特性:下邊帶信號的頻譜:下邊帶信號的時域表示:其中是的希爾伯特變換。用Matlab產生一個頻率為200kHz的余弦信號,載波頻率,采樣頻率為。圖2-3-1 SSB時域頻域圖
26、MATLAB程序close all;clear all;clcfm=200*103;%調制信號頻率fc=3*106;%載波信號頻率fs=30*106;%采樣頻率t=0:1/fs:5/fm;mt=cos(2*pi*fm*t);y=modulate(mt,fc,fs,'amssb');subplot(2,1,1)plot(t,y)hold on;plot(t,mt,'r-');ylabel('SSB調制信號')xlabel('時間/s');N=215;sf=fft(y,N);f=-fs/2:fs/N:(fs/2-fs/N);subpl
27、ot(2,1,2)plot(f,fftshift(abs(sf)/max(abs(sf);grid on;axis(-5*106 5*106 0 1);ylabel('SSB調制信號頻域波形')xlabel('頻率/Hz')Verilog程序:odule SSB( input clk, output DAclk, output 15:0 wave_out /下邊帶輸出 ); reg30:0 tzxhc;reg30:0 tzxhs;reg30:0 zbxhc;reg30:0 zbxhs;reg we=1;reg14:0 data_low=1;reg14:0 dat
28、a_high=32;wire15:0 zxscc;wire15:0 zxscs;wire15:0 gpscc;wire15:0 gpscs;reg clk20M=0;reg15:0 wave_out1; /16位內部移位信號reg30:0 wave_out2; /32位內部調幅信號always(posedge clk)clk20M=clk20M;always(posedge clk20M) begin tzxhc=16zxscc15,zxscc14:0; tzxhs=16zxscs15,zxscs14:0; zbxhc=16gpscc15,gpscc14:0; zbxhs=16gpscs15,
29、gpscs14:0; wave_out2=tzxhc*zbxhc+tzxhs*zbxhs; wave_out1=wave_out230:15;end assign DAclk=clk20M; assign wave_out=wave_out1+32768;dds u1(.clk(clk20M),.we(we),.data(data_low),.cosine(zxscc),.sine(zxscs);dds u2(.clk(clk20M),.we(we),.data(data_high),.cosine(gpscc),.sine(gpscs);endmodule圖2-3-2 Modelsi SSB
30、仿真圖圖2-3-3 示波器輸出波形(4)振幅鍵控(ASK)振幅鍵控是正弦載波的幅度隨數字基帶信號而變化的數字調制。當數字基帶信號為二進制時,則為二進制振幅鍵控。其中用Matlab產生一個獨立等概率的二進制信源,這里采用之前出生的方波序列為例,用頻率為200kHz的余弦信號,采樣頻率為。圖2-4-1ASK時域頻域圖MATLAB程序close all;clear all;clc;fc=3*106;fm=200*103;Fs=30*106;Ts=1/Fs;t=0:Ts:0.00002;y=square(2*pi*fm*t,50);y=(y+1)/2;sASK=y.*cos(2*pi*fc*t);su
31、bplot(2,1,1)plot(t,sASK);hold on;plot(t,y,'r-');ylabel('ASK調制信號');N=215;sf=fft(sASK,N);f=-Fs/2:Fs/N:(Fs/2-Fs/N);subplot(2,1,2)plot(f,fftshift(abs(sf)/max(abs(sf);grid on;ylabel('ASK調制信號頻域波形')xlabel('頻率/Hz')Verilog程序module ASK( input clk, output DAclk, output 15:0 wave
32、_out );reg11:0 counter=1;reg a=1; /方波reg we=1;reg14:0 data=32;wire15:0 gpsc;reg clk20M=0;reg15:0 wave_out1;always(posedge clk)clk20M=clk20M;always(posedge clk20M)counter=counter+1;always(posedge clk20M) /產生0,1方波if(counter=0)a=a;always(posedge clk20M) wave_out1=gpsc*a;assign DAclk=clk20M;assign wave_
33、out=wave_out1+32768;dds u1(.clk(clk20M),.we(we),.data(data),.cosine(gpsc),.sine();Endmodule圖2-4-2 Modelsim ASK仿真圖圖2-4-3 示波器輸出波形3調頻通過改變載波的頻率來達到,即載波的幅度保持不變,而載波的頻率隨基帶信號的變化而變化。因為載波頻率的變化都可看作是載波角度的變化,所以這種頻率調制(FM)又稱角度調制(1)單音頻調頻單音信號為則有其中為第一類n階貝塞爾函數。頻域表達式:用Matlab產生一個頻率為200kHz的余弦調制信號,采樣頻率為。為不同值時的波形圖3-1-1單音頻調頻
34、時域頻域圖MATLAB程序:fs=30*106;dt=1/fs; fc=3*106;fm=200*103; T=3/fm; kf=1200*103;t=0:dt:T;mt=cos(2*pi*fm*t);%sin信號sFM=cos(2*pi*fc*t+2*pi*kf*cumtrapz(t,mt);%sFM=cos(2*pi*fc*t+kf/(2*pi*fm)*sin(2*pi*fm*t)subplot(2,1,1)plot(t,sFM);hold on;plot(t,mt,'r-');ylabel('單音調頻信號');xlabel('時間');N=
35、215;sf=fft(sFM,N);f=-fs/2:fs/N:(fs/2-fs/N);subplot(2,1,2)plot(f,fftshift(abs(sf)/max(abs(sf);grid on;axis(-10*106 10*106 0 1);ylabel('單音調頻信號頻域波形')xlabel('頻率/Hz')Verilog程序:module dyp_FM( input clk, output DAclk, output15:0 wave_out );reg clk20M=0;reg14:0 data_low=1;reg14:0 data_high;r
36、eg we=1;wire15:0 cos_out; wire15:0 wave_out1; always(posedge clk)clk20M=clk20M;always(posedge clk20M)data_high=10cos_out15,cos_out14:10+15'b000000000100000;assign DAclk=clk20M;assign wave_out = wave_out1 + 32768;dds u1(.clk(clk20M),.we(we),.data(data_low),.cosine(cos_out),.sine();dds u2(.clk(clk
37、20M),.we(we), .data(data_high),.cosine(wave_out1),.sine();endmodule圖3-1-2 Modelsim 單音頻調頻仿真圖圖3-1-1 示波器輸出波形(2)鋸齒波調頻設為鋸齒波,則用Matlab產生一個頻率為200kHz的鋸齒波調制信號,采樣頻率為。為不同值時的波形:圖3-2-1鋸齒波調頻時域頻域圖MATLAB程序close all;clear all;clc;fs=30*106;dt=1/fs; fc=3*106;fm=200*103; T=3/fm; kf=1200*103;t=0:dt:T;mt=sawtooth(2*pi*fm
38、*t,1);%鋸齒波sFM=cos(2*pi*fc*t+2*pi*kf*cumtrapz(t,mt);subplot(2,1,1)plot(t,sFM);hold on;plot(t,mt,'r-');ylabel('鋸齒波調頻信號');xlabel('時間');N=215;sf=fft(sFM,N);f=-fs/2:fs/N:(fs/2-fs/N);subplot(2,1,2)plot(f,fftshift(abs(sf)/max(abs(sf);grid on;axis(-10*106 10*106 0 1);ylabel('鋸齒波調
39、頻信號頻域波形')xlabel('頻率/Hz')Verilog程序module jc_FM( input clk, output DAclk, output 15:0 wave_out );reg14:0 data;reg we=1;wire15:0 jcsc;reg clk20M=0;wire15:0 wave_out1; /調制輸出wire15:0 jcsc1; /波形調整,sjsc是無符號數下的三角波,這里要先轉化為有符號數always(posedge clk)clk20M=clk20M;assign jcsc1=jcsc-32768;always(posedge
40、 clk20M)data=10jcsc115,jcsc114:10+32;assign DAclk=clk20M;assign wave_out = wave_out1 + 32768;dds u1(.clk(clk20M),.we(we),.data(data),.cosine(wave_out1),.sine();jc z1(.clk(clk20M),.wave_out(jcsc),.DAclk();endmodule圖3-2-2 Modelsim鋸齒波調頻仿真圖圖3-2-3 示波器輸出波形(3)三角波調頻為三角波,用Matlab產生一個頻率為200kHz的三角波調制信號,采樣頻率為。圖3
41、-3-1三角波調頻時域頻域圖MATLAB程序close all;clear all;clc;fs=30*106;dt=1/fs; fc=3*106;fm=200*103; T=3/fm; kf=1200*103;t=0:dt:T;mt=sawtooth(2*pi*fm*t,0.5);%三角波信號sFM=cos(2*pi*fc*t+kf/(2*pi*fm)*sin(2*pi*fm*t);subplot(2,1,1)plot(t,sFM);hold on;plot(t,mt,'r-');ylabel('三角波調頻信號');xlabel('時間');N
42、=215;sf=fft(sFM,N);f=-fs/2:fs/N:(fs/2-fs/N);subplot(2,1,2)plot(f,fftshift(abs(sf)/max(abs(sf);grid on;axis(-10*106 10*106 0 1);ylabel('三角波調頻信號頻域波形')xlabel('頻率/Hz')Verilog程序module sj_FM( input clk, output DAclk, output 15:0 wave_out );reg14:0 data;reg we=1;wire15:0 sjsc;reg clk20M=0;w
43、ire15:0 wave_out1; /調制輸出wire15:0 sjsc1; always(posedge clk)clk20M=clk20M;assign sjsc1=sjsc-32768;always(posedge clk20M)data=10sjsc115,sjsc114:10+32;assign DAclk=clk20M;assign wave_out=wave_out1+32768;sj z1(.clk(clk20M),.wave_out(sjsc),.DAclk();dds u1(.clk(clk20M),.we(we),.data(data),.cosine(wave_out
44、1),.sine();endmodule圖3-3-2 Modelsim三角波調頻仿真圖圖3-3-3 示波器輸出波形(4)頻移鍵控(FSK)將二進制碼元“0”對應載波,“1”對應載波,則形成的2FSK信號表達式:其中,初始相位為0,功率譜密度(A=1)。圖3-4-1 FSK時域頻域圖MATLAB程序fs=30*106;Ts=1/fs; fc=3*106;fm=200*103;fxc=7*105;f1=fc+fxc;f2=fc-fxc;x=square(2*pi*fm*t,75);y=(x+1)/2;s_FSK=cos(2*pi*f1*t).*y+cos(2*pi*f2*t).*(-y+1);su
45、bplot(2,1,1);plot(t,s_FSK);hold on;plot(t,y,'r');%axis(0 2500 -1.5 1.5);ylabel('FSK調制信號');xlabel('時間');N=215;sf=fft(s_FSK,N);f=-fs/2:fs/N:(fs/2-fs/N);subplot(2,1,2);plot(f,fftshift(abs(sf)/max(abs(sf);grid on;axis(-5*106 5*106 0 1);ylabel('FSK調制信號頻域波形')xlabel('頻率/
46、Hz')Verilog程序module FSK( input clk, output DAclk, output 15:0 wave_out );reg14:0 data;reg we=1;wire15:0 fbsc;wire15:0 fbsc1;reg clk20M=0;wire15:0 wave_out1; always(posedge clk)clk20M=clk20M;assign fbsc1=fbsc-32768;always(posedge clk20M)data=(fbsc115=1)?32:64;assign DAclk=clk20M;assign wave_out=w
47、ave_out1+32768;fb z1(.clk(clk20M),.wave_out(fbsc),.DAclk();dds u1(.clk(clk20M),.we(we),.data(data),.cosine(wave_out1),.sine();Endmodule圖3-4-2 Modelsim FSK仿真圖圖3-4-3 示波器輸出波形4 調相通過改變載波的相位來達到,即載波的幅度保持不變,而載波的相位隨基帶信號的變化而變化。因為載波相位的變化都可看作是載波角度的變化,所以這種相位調制(PM)又稱角度調制。(1)方波調相時域波形:,其中為方波。是相移常數。圖4-1-1方波調相時域頻域圖MA
48、TLAB程序close all;clear all;clcfs=30*106;dt=1/fs; fc=3*106;fm=200*103; T=3/fm; kp=2;t=0:dt:T;%mt=cos(2*pi*fm*t);%mt=sawtooth(2*pi*fm*t,0.5);%三角波信號mt=square(2*pi*fm*t,50);%方波信號sPM=cos(2*pi*fc*t+2*pi*kp*mt);subplot(2,1,1)plot(t,sPM);hold on;plot(t,mt,'r-');ylabel('方波調相信號');xlabel('時間
49、');N=215;sf=fft(sPM,N);f=-fs/2:fs/N:(fs/2-fs/N);subplot(2,1,2)plot(f,fftshift(abs(sf)/max(abs(sf);grid on;axis(-10*106 10*106 0 1);ylabel('方波調相信號頻域波形')xlabel('頻率/Hz')Verilog程序module fb_PM( input clk, output DAclk, output 15:0 wave_out );reg14:0 data;reg we=1;wire15:0 fbsc;reg15:0
50、 fbsc1=16'b1; reg clk20M=0;wire15:0 wave_out1;always(posedge clk)clk20M=clk20M;always(posedge clk20M) begin if(fbsc=fbsc1) data=32; else data=16416; fbsc1=fbsc; endassign DAclk=clk20M;assign wave_out = wave_out1 + 32768;fb z1(.clk(clk20M),.wave_out(fbsc),.DAclk();dds u1(.clk(clk20M),.we(we),.dat
51、a(data),.sine(),.cosine(wave_out1);Endmodule圖4-1-2 Modelsim方波調相仿真圖圖4-1-3 示波器輸出波形(2)偽碼調相 時域波形: 其中為m序列,是相移常數。取不同的值時對應的時域波形和頻譜圖如下:圖4-2-1偽碼調相時域頻域圖MATLAB程序close all;clear all;clcfs=30*106;dt=1/fs; fc=3*106;fm=200*103; kp=1/2*pi; m=5;an=zeros(1,m-1),1; y=zeros(1,(2m-1); for i=1:1:(2m-1) ; y(i) = an(1); b = an(1); an(1:(m-1)=an(2:m); an(m)=xor(an(3),b); end y1=2*y-1; len=length(y1);N=10; len1=N*len; z=zeros(1,len1); for i=1:len z(i-1)*N+1:(i-1)*N+N)=y1(i); end t=0:1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫生綜合練習試題及答案
- 未來執業藥師的職業角色轉變試題及答案
- 見解深刻無人機駕駛員考試試題及答案
- 高級會計考試方法策略試題及答案
- 夫妻忠誠協議書見證及婚姻關系維護責任合同
- 培訓不止是讀
- 探索未知宇宙:課件中的星辰大海
- 高級審計師職業路徑規劃試題及答案
- 高級審計師備考中的有效方法試題及答案
- 2025年多功能抑塵車項目發展計劃
- 《養老護理員》-課件:自然災害的應對處理知識
- 新思想引領新征程新青年建功新時代 (修改版)
- 跨部門協調與部門間合作
- 鋼結構工程施工組織設計完整版
- 飼料添加劑(全)課件
- 《田間藥效試驗》課件
- 勞務外包服務方案(技術方案)
- 電鍍有限公司雙體系資料之風險分級管控體系實施手冊
- 材料力學第4版單輝祖習題答案
- 【醫院管理案例學習】-床單位終末消毒標準的執行
- EMS概要設計說明書計費模塊
評論
0/150
提交評論