对于MATLAB中的模拟通信系统设计,首先我需要做这两个设计:
设计一个低通滤波器[slow]=lowpassfilter(s,fcut,fs)
,以赫兹为截止频率s
和采样频率fcut
过滤输入信号fs
。
设计一个带通滤波器[sband]=bandpassfilter(s,fcutlow,fcuthigh,fs)
,以赫兹为截止频率s
和fcutlow
以及采样频率fcuthigh
滤波输入信号fs
你能帮我吗?
答案 0 :(得分:2)
Matlab有fdatool
用于过滤器设计目的。 Here是文档。您可以使用fdatool
和信号处理工具箱执行所有这些任务。
答案 1 :(得分:2)
我发现这个问题有很多观点,但仍然没有好的答案。
以下代码将满足您的需求。由于没有指定过滤器类型,我使用了一个butterworth过滤器来演示它。 s
是输入信号,x
是滤波后的信号。 fs
是以Hz为单位的采样率。
% Design and apply the lowpass filter
order = 4;
fcut = 8000;
[b,a] = butter(order,fcut/(fs/2),'low');
x = filter(b,a,s);
% Design and apply the bandpass filter
order = 10;
fcutlow = 1000;
fcuthigh = 2000;
[b,a] = butter(order,[fcutlow,fcuthigh]/(fs/2), 'bandpass');
x = filter(b,a,s);