MATLAB使用rcosine函数设计8倍过采样、alpha=0.5的升余弦滤波器,画出其冲激响应,并完成对随机序列的滤波


%来自《无线通信的MATLAB和FPGA实现》



clear all;close all;clc;


%使用rcosine函数设计8倍过采样、alpha=0.5的升余弦滤波器,并画出其冲激响应。

Fd=1;  %输入信号的采样率
Fs=8;   %输出信号的采样率
Delay=3;  %滤波器的群时延
R=0.5;    %滚降因子
[yf,tf]=rcosine(Fd,Fs,'fir',R,Delay);
plot(yf);
grid;
xlabel('Time');
ylabel('Amplitude');
title('升余弦滤波器冲激响应');
% impz(rrcdilter,1)  %也行

%某个信号通过升余弦滤波器

x=rand(100,1);    %产生随机信号
xt=zeros(1,800);  %对输入信号后面补零
xt(1:8:end)=x;
y=filter(yf,tf,xt);  %经过升余弦滤波器
yt=y((length(yf)+1)/2:8:end); %下采样,去除滤波器的抽头时延

figure;stem(x(1:40),'.');
hold on;stem(yt(1:40),'r');
legend('输入','输出');
title('收发端根号下升余弦的输入和输出');


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM