FM中频信号为10.7MHz,带宽为200K,如何用matlab对其进行AD带通采样
时间: 2024-05-04 14:15:13 浏览: 172
假设已经将FM信号进行了混频,将中频信号输入到AD转换器进行数字化,可以使用matlab中的函数进行AD带通采样。
步骤如下:
1. 生成一个模拟的中频信号。例如:
```
Fs = 44.1e3; % 采样率为44.1kHz
t = 0:1/Fs:0.1; % 时间范围为0.1秒
fm = 1e3; % 调频频率为1kHz
fc = 98.5e6; % 广播电台的中心频率为98.5MHz
Ac = 1; % 广播电台的幅度为1
Am = 0.5; % 信号调制深度为0.5
m = Am*cos(2*pi*fm*t); % 调制信号
c = Ac*cos(2*pi*fc*t); % 广播电台的载波信号
x = m.*c; % 调频信号
```
2. 对中频信号进行AD带通采样。可以使用matlab中的fir1函数生成一个带通滤波器,然后使用filter函数对信号进行滤波。
```
fpass = [10.6e6 10.8e6]; % 通带频率范围
Wn = fpass/(Fs/2); % 归一化通带频率
b = fir1(100, Wn, 'bandpass'); % 生成带通滤波器系数
y = filter(b, 1, x); % 对调频信号进行AD带通采样
```
3. 绘制原始信号和采样后的信号的时域波形和频谱图,观察采样效果。
```
% 绘制时域波形
figure;
subplot(2,1,1);
plot(t, x);
title('原始信号');
xlabel('时间(秒)');
ylabel('幅度');
subplot(2,1,2);
plot(t, y);
title('采样后的信号');
xlabel('时间(秒)');
ylabel('幅度');
% 绘制频谱图
N = length(x);
f = (-N/2:N/2-1)*Fs/N;
X = fftshift(fft(x));
Y = fftshift(fft(y));
figure;
subplot(2,1,1);
plot(f/1e6, abs(X));
title('原始信号的频谱图');
xlabel('频率(MHz)');
ylabel('幅度');
subplot(2,1,2);
plot(f/1e6, abs(Y));
title('采样后的信号的频谱图');
xlabel('频率(MHz)');
ylabel('幅度');
```
可以看到,采样后的信号的频谱图已经被限制在10.6MHz到10.8MHz之间,符合AD带通采样的要求。
阅读全文