Matlab对465KHz的AM信号进行采样和正交解调代码
时间: 2024-05-25 13:17:58 浏览: 78
基于MATLAB的AM调制解调,MATLAB代码
5星 · 资源好评率100%
假设采样频率为Fs,则采样周期为Ts=1/Fs。正交解调可以使用复信号表示,即将原始信号分别乘以正弦和余弦信号,得到I路和Q路信号,再进行低通滤波,得到基带信号。
下面是代码示例:
% 设置采样参数
Fs = 2*465e3; % 采样频率
Ts = 1/Fs; % 采样周期
t = 0:Ts:1e-3; % 采样时间段
% 生成原始信号
fc = 465e3; % 载波频率
fm = 10e3; % 调制频率
Ac = 1; % 载波幅度
Am = 0.5; % 调制幅度
m = Am/Ac; % 调制指数
x = Ac*cos(2*pi*fc*t + m*sin(2*pi*fm*t)); % AM信号
% 进行采样
xn = x.*cos(2*pi*fc*t); % 乘以余弦信号,得到I路信号
xq = x.*sin(2*pi*fc*t); % 乘以正弦信号,得到Q路信号
% 进行低通滤波,得到基带信号
fcutoff = fm*2; % 滤波器截止频率
[b,a] = butter(4, fcutoff/(Fs/2)); % 4阶巴特沃斯滤波器
y = filter(b, a, xn + 1i*xq); % I路和Q路信号相加,得到复信号,进行滤波
% 绘制结果
figure;
subplot(2,2,1); plot(t, x); title('原始信号');
subplot(2,2,2); plot(t, xn); title('I路信号');
subplot(2,2,3); plot(t, xq); title('Q路信号');
subplot(2,2,4); plot(t, real(y)); title('基带信号');
注意:由于AM信号的频谱是对称的,因此在进行正交解调时,可以选择相乘的正弦和余弦信号的频率为原始信号的载波频率的两倍,这样可以将负频率和正频率对称地解调出来。
阅读全文