资源简介
Matlab写的DDS和FIR滤波器,实测可用
代码片段和文件信息
%x=-1:0.0001:1;
f1=10;%第一个点频信号分量频率
f2=100000;%第二个点频信号分量频率
fs=1000000;%采样率
T=0.5;%时宽
B=20;%带宽
n=round(T*fs);%采样点个数
t=linspace(0Tn);
y0=randn(1n);
y1=sin(2*pi*f1*t); %1kHz正弦值
y11=y1+y0;
y2=sin(2*pi*f2*t); %10kHz正弦值,128k的将式中的10换为128即可
y3=cos(2*pi*f2*t); %10kHz余弦值
y4=y11.*y2; %1K*10K正弦值
y5=y4.*y2;
y6=y4.*y3;
b=fir1(64 B/(fs/2)); %滤波产生指定带宽的噪声信号
%freqz(b);%画滤波器频响
y5_after_fir=filter(b1y5); %信号通过滤波器
y6_after_fir=filter(b1y6); %信号通过滤波器
y7_after_fir=filter(b1y1); %信号通过滤波器
subplot(331) %画1kHz的正弦图像
plot(ty11‘r‘) %用红色画
grid on
subplot(332) %画32kHz的正弦图像
plot(ty2‘g‘) %用绿色画
grid on
subplot(333) %画两者相乘(用点乘)的正弦图像,相加则直接用加号(+)
p
评论
共有 条评论