修改这个代码使得正交解调信号正确还原调制信号
时间: 2023-08-04 19:04:38 浏览: 126
OFDM信号调制解调_ofdm调制解调_OFDM信号调制解调_ofdm_OFDM解调_
5星 · 资源好评率100%
在上面的代码中,数字化正交解调的过程中只进行了低通滤波,并没有进行完整的解调。要使正交解调信号正确还原调制信号,可以将解调过程完整地实现,即将 I 信号乘以正弦载波,将 Q 信号乘以余弦载波,然后相加得到解调信号。修改后的代码如下:
```
% 定义采样频率和采样时长
fs = 5000; % 采样频率
T = 1; % 采样时长
t = 0:1/fs:T-1/fs; % 时间序列
% 定义载波频率和调制信号
fc = 1000; % 载波频率
fm = 100; % 调制信号频率
bw = 200; % 带宽
Ac = 1; % 载波幅度
Am = 0.5; % 调制信号幅度
m = Am*cos(2*pi*fm*t); % 调制信号
% VSB模拟调制
b = fir1(50,[fc-bw/2,fc+bw/2]/(fs/2)); % 滤波器设计
s = Ac*cos(2*pi*fc*t).*m - Ac*sin(2*pi*fc*t).*filter(b,1,m); % 数字化正交解调
% 解调器本振频率为载波频率
f0 = fc;
% I路信号为载波信号乘以正弦函数
I = s.*sin(2*pi*f0*t);
% Q路信号为载波信号乘以余弦函数
Q = s.*cos(2*pi*f0*t);
% 完整的数字化正交解调,得到解调信号
demodulated = I.*cos(2*pi*f0*t) + Q.*sin(2*pi*f0*t);
fir = fir1(50, 2*fm/fs); % FIR低通滤波器
envelope = filter(fir, 1, demodulated); % 信号包络
```
这样修改后,正交解调信号就可以正确还原调制信号了。
阅读全文