DSB调制解调matlab 代码
时间: 2023-12-06 11:37:35 浏览: 129
以下是DSB调制解调的Matlab代码示例:
DSB调制:
```matlab
% 设置参数
fc = 1000; % 载波频率
fm = 100; % 调制信号频率
fs = 10000; % 采样频率
t = 0:1/fs:1; % 时间序列
% 生成调制信号
m = cos(2*pi*fm*t);
% 生成载波信号
c = cos(2*pi*fc*t);
% DSB调制
s = m .* c;
% 绘制调制信号和载波信号
subplot(3,1,1);
plot(t,m);
title('调制信号');
xlabel('时间');
ylabel('幅度');
subplot(3,1,2);
plot(t,c);
title('载波信号');
xlabel('时间');
ylabel('幅度');
% 绘制调制后的信号
subplot(3,1,3);
plot(t,s);
title('DSB调制信号');
xlabel('时间');
ylabel('幅度');
```
DSB解调:
```matlab
% 设置参数
fc = 1000; % 载波频率
fm = 100; % 调制信号频率
fs = 10000; % 采样频率
t = 0:1/fs:1; % 时间序列
% 生成调制信号
m = cos(2*pi*fm*t);
% 生成载波信号
c = cos(2*pi*fc*t);
% DSB调制
s = m .* c;
% DSB解调
y = s .* c;
% 低通滤波
[b,a] = butter(6,2*fm/fs);
z = filter(b,a,y);
% 绘制解调后的信号
subplot(3,1,1);
plot(t,s);
title('DSB调制信号');
xlabel('时间');
ylabel('幅度');
subplot(3,1,2);
plot(t,y);
title('DSB解调信号');
xlabel('时间');
ylabel('幅度');
subplot(3,1,3);
plot(t,z);
title('低通滤波后的信号');
xlabel('时间');
ylabel('幅度');
```
阅读全文