matlab模拟调制过程,用Matlab模拟SSB调制波形及解调过程
时间: 2023-11-15 08:04:13 浏览: 138
下面是一个基于MATLAB的SSB调制和解调过程的示例代码:
```
fc = 1000; % 载波频率
fs = 10000; % 采样频率
t = 0:1/fs:1; % 时间序列
Ac = 1; % 载波幅度
fm = 100; % 基带频率
Am = 1; % 基带幅度
x = Am*cos(2*pi*fm*t); % 基带信号
c = Ac*cos(2*pi*fc*t); % 载波信号
% SSB调制
ssb = hilbert(x).*exp(1i*2*pi*(fc*t-fm*t)); % SSB信号
% SSB解调
r = ssb.*exp(-1i*2*pi*(fc*t-fm*t)); % 解调信号
f = fir1(100, 2*fm/fs); % 低通滤波器
y = filter(f, 1, r); % 滤波后的信号
% 绘制调制前后的信号波形
subplot(4,1,1);
plot(t,x);
title('Baseband Signal');
xlabel('Time (s)');
ylabel('Amplitude');
subplot(4,1,2);
plot(t,c);
title('Carrier Signal');
xlabel('Time (s)');
ylabel('Amplitude');
subplot(4,1,3);
plot(t,real(ssb));
title('SSB Signal');
xlabel('Time (s)');
ylabel('Amplitude');
subplot(4,1,4);
plot(t,y);
title('Demodulated Signal');
xlabel('Time (s)');
ylabel('Amplitude');
```
这段代码首先生成了基带信号和载波信号,然后通过希尔伯特变换将基带信号进行调制成SSB信号。接着,使用相同的解调公式将SSB信号解调为基带信号,并通过低通滤波器去除高频成分。最后,绘制了调制前后的信号波形,包括基带信号、载波信号、SSB信号和解调后的信号。
阅读全文