10.7MHz的FM中频广播信号用ADC进行带通采样的matlab代码
时间: 2024-06-11 15:08:35 浏览: 165
以下是一个简单的MATLAB代码示例,用于使用ADC对10.7MHz的FM中频广播信号进行带通采样。
```
% 定义采样频率和带宽
Fs = 50e6; % 采样频率
f1 = 10.6e6; % 带通下限
f2 = 10.8e6; % 带通上限
BW = f2 - f1; % 带宽
% 生成采样时间序列
t = 0:1/Fs:1e-3; % 采样时间为1ms
% 生成信号
fm_signal = sin(2*pi*10.7e6*t); % FM中频广播信号
% 带通滤波
b = fir1(100, [f1, f2]/(Fs/2)); % 生成50阶FIR滤波器
filtered_signal = filter(b, 1, fm_signal);
% ADC采样
adc_signal = filtered_signal(1:100:end); % 降采样到500kHz
% 绘制结果
figure;
subplot(3,1,1);
plot(t*1e3, fm_signal);
xlabel('Time (ms)');
ylabel('Amplitude');
title('FM Intermediary Broadcast Signal');
subplot(3,1,2);
plot(t*1e3, filtered_signal);
xlabel('Time (ms)');
ylabel('Amplitude');
title('Bandpass Filtered Signal');
subplot(3,1,3);
plot(t(1:100:end)*1e3, adc_signal);
xlabel('Time (ms)');
ylabel('Amplitude');
title('ADC Sampled Signal');
```
这个代码示例假定输入信号是10.7MHz的FM中频广播信号,并且使用一个带通滤波器来选择10.6MHz到10.8MHz之间的频率分量。然后,采用FIR滤波器对信号进行滤波,最后对滤波后的信号进行降采样,以模拟ADC的采样过程。绘制了原始信号、滤波后的信号和采样后的信号的波形图,以便进行比较和分析。
阅读全文