%來自《無線通信的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('收發端根號下升余弦的輸入和輸出');
