西安邮电学院通信原理实验结果5

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

function [m]=F2T(M,fs)

%-------------------------输入参数

%M:信号的频谱

%fs:系统采样频率

%--------------------输出(返回)参数

%m:傅里叶逆变换后的信号,注意其长度为2的整数次幂,利用其画波形时,要注意选取m的一部分,选取长度和所给时间序列t的长度要一致,plot(t,m(1:length(t))),否则会出错。

m = real(ifft(M))*fs;

function p=power_x(x)

%x:输入信号

%p:返回信号的x功率

p=(norm(x).^2)./length(x);

function [M,m,df]=fftseq(m,ts,df)

%各参数含义与子函数T2F中的完全相同,完成

fs = 1/ts;

if nargin ==2

n1 =0;

else

n1 = fs/df;

end

n2 = length(m);

n = 2^(max(nextpow2(n1),nextpow2(n2)));

M = fft(m,n);

m = [m,zeros(1,n-n2)];

df = fs/n;

function [M,m,df]=fftseq(m,ts,df)

%各参数含义与子函数T2F中的完全相同,完成

fs = 1/ts;

if nargin ==2

n1 =0;

else

n1 = fs/df;

end

n2 = length(m);

n = 2^(max(nextpow2(n1),nextpow2(n2)));

M = fft(m,n);

m = [m,zeros(1,n-n2)];

df = fs/n;

function [M,m,df1,f]=T2F(m,ts,df,fs)

%------------------------输入参数

%m:信号

%ts:系统时域采样间隔

%df:所需的频率分辨率

%fs:系统采样频率

%---------------------输出(返回)参数

%M:傅里叶变换后的频谱序列

%m: 输入信号参与过傅里叶变换后对应的序列,需要注意的是,该序列与输入信号m的区别,其长度是不一样的,输入的m长度不一定是2的整数次幂,而傅里叶变换要求输入信号长度为2的整数次幂,故傅里叶变换前需对输入的m信号进行补零,其长度有所增加,故输出参数中的m为补零后的输入信号,其长度与输入参数m不一样,但与M,f长度是一样的,并且,其与时间序列t所对应的序列

m(1:length(t))与输入参数中的m是一致的。

%df1:返回的频率分辨率

%f:与M相对应的频率序列

[M,m,df1]=fftseq(m,ts,df);

f = [0:df1:df1*(length(m)-1)] -fs/2; %频率向量

M=M/fs;

function[H,f]=bp_f(n,f_start,f_cutoff,df1,fs,p)

%带通滤波器函数输入设计的滤波器参数,产生带通滤波器频率特性函数H和频率向量f

%------------------------输入参数

%n 带通滤波器的输入信号长度

%f_start 通带起始频率

%f_cutoff 带通滤波器的截止频率

%df1 频率分辨率

%fs 抽样频率

%p 滤波器幅度

%----------------------输出(返回)参数

%H 带通滤波器频率响应

%f 频率向量

%设计滤波器

n_cutoff = floor(f_cutoff/df1);

n_start = floor(f_start/df1);

f = [0:df1:df1*(n-1)] -fs/2; %频率向量

H = zeros(size(f));

H(n_start+1:n_cutoff) = p*ones(1,n_cutoff-n_start);

H(length(f) - n_cutoff+1:length(f)-n_start) = p*ones(1,n_cutoff-n_start);

function [H,f]=lp_f(n,f_cutoff,df1,fs,p)

%低通滤波器函数输入设计的滤波器参数,产生低通滤波器频率特性函数H和频率向量f

%------------------------输入参数

%n 低通滤波器的输入信号长度

%f_cutoff 低通滤波器的截止频率

%df1 频率分辨率

%fs 抽样频率

%p 滤波器幅度a

%---------------------输出(返回)参数

%H 低通滤波器频率响应

%f 频率向量

n_cutoff = floor(f_cutoff/df1); %设计滤波器

f = [0:df1:df1*(n-1)] -fs/2; %频率向量

H = zeros(size(f));

H(1:n_cutoff) = p*ones(1,n_cutoff);

H(length(f) - n_cutoff+1:length(f)) = p*ones(1,n_cutoff);

function [Bw_eq]=signalband(sf,df,T)

相关文档
最新文档