用matlab画出“ASK基带输入”、“ASK调制输出”和“ASK解调输出”的波形源代码
时间: 2023-09-01 07:10:28 浏览: 132
matlab_根据随机给出的二进制信号进行统2ASK调制,画出各个阶段的波形
下面是MATLAB代码:
```
% 定义基带信号的时间轴
t = 0:0.01:1;
% 定义基带信号
m = [zeros(1,length(t)/2) ones(1,length(t)/2)];
% 绘制ASK基带输入波形
subplot(3,1,1);
plot(t,m);
title('ASK基带输入');
xlabel('时间');
ylabel('幅度');
% 定义载波信号频率和振幅
fc = 5;
Ac = 2;
% ASK调制
s = (Ac+m).*cos(2*pi*fc*t);
% 绘制ASK调制输出波形
subplot(3,1,2);
plot(t,s);
title('ASK调制输出');
xlabel('时间');
ylabel('幅度');
% ASK解调
dem = s.*cos(2*pi*fc*t);
% 低通滤波
[b,a] = butter(6, 2*fc*0.01);
dem = filter(b,a,dem);
% 绘制ASK解调输出波形
subplot(3,1,3);
plot(t,dem);
title('ASK解调输出');
xlabel('时间');
ylabel('幅度');
```
其中,基带信号为矩形波,载波信号为正弦波,调制方式为幅度调制(ASK)。在代码中通过cos函数实现了ASK调制和解调。在解调过程中,使用了一个6阶Butterworth低通滤波器对解调信号进行滤波,去除高频成分。
阅读全文