用matlab画出ASK基带输入的波形的代码
时间: 2024-02-05 18:12:50 浏览: 64
以下是用 MATLAB 画出 ASK 基带输入波形的代码:
```matlab
% 设置基本参数
Fs = 1000; % 采样率
T = 1/Fs; % 采样时间
fc = 100; % 载波频率
Ac = 1; % 载波幅度
Am = 0.5; % 调制信号幅度
fm = 10; % 调制信号频率
N = 1000; % 采样点数
% 生成基带信号
t = 0:T:(N-1)*T; % 时间序列
m = Am*sin(2*pi*fm*t); % 调制信号
% 生成ASK调制信号
s = (m > 0).*Ac.*sin(2*pi*fc*t); % ASK调制信号
% 绘制波形图
figure;
subplot(3,1,1);
plot(t,m);
title('调制信号');
xlabel('时间 (s)');
ylabel('幅度');
ylim([-1.5*Am 1.5*Am]);
subplot(3,1,2);
plot(t,s);
title('ASK调制信号');
xlabel('时间 (s)');
ylabel('幅度');
ylim([-1.5*Ac 1.5*Ac]);
subplot(3,1,3);
plot(t,s.*(m > 0));
title('ASK调制后信号');
xlabel('时间 (s)');
ylabel('幅度');
ylim([-1.5*Ac 1.5*Ac]);
```
运行以上代码,可以得到一个包含三个子图的图形,分别是调制信号、ASK调制信号和ASK调制后信号的波形图。
相关问题
用matlab画出ASK基带输入的波形所需要的代码
以下是用MATLAB绘制ASK基带输入波形的示例代码:
```matlab
% 设置参数
f0 = 2; % 基带信号频率
A = 1; % 基带信号幅值
fc = 10; % 载波频率
Tb = 1/f0; % 基带信号周期
Ts = 1/(10*fc); % 采样周期
t = 0:Ts:Tb-Ts; % 采样时间序列
% 生成基带信号
baseband = A*cos(2*pi*f0*t);
% 定义调制信号
message = [1 0 1 1 0];
% 生成ASK调制信号
carrier = zeros(1, length(t));
for i = 1:length(message)
if message(i) == 1
carrier((i-1)*length(t)/length(message)+1:i*length(t)/length(message)) = A*cos(2*pi*fc*t((i-1)*length(t)/length(message)+1:i*length(t)/length(message)));
end
end
% 绘制波形
subplot(2,1,1)
plot(t, baseband)
title('Baseband Signal')
xlabel('Time')
ylabel('Amplitude')
subplot(2,1,2)
plot(t, carrier)
title('ASK Modulated Signal')
xlabel('Time')
ylabel('Amplitude')
```
在这个示例中,我们首先定义了基带信号的频率、幅值和载波频率。然后生成了一个基带信号,并定义了一个二进制的调制信号。接下来,我们生成了ASK调制信号,并使用subplot函数将基带信号和ASK调制信号绘制在同一张图上。
运行此代码将绘制出ASK基带输入波形的图像。
用matlab画出“ASK基带输入”、“ASK调制输出”和“ASK解调输出”的波形源代码
下面是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低通滤波器对解调信号进行滤波,去除高频成分。
阅读全文