利用matlab仿真PM调制解调,不使用matlab自带的函数
时间: 2024-03-07 19:43:55 浏览: 76
matlab仿真dft和fft算法(不使用matlab自带的函数)
在Matlab中进行PM调制解调可以使用自定义的函数来实现,而不使用Matlab自带的函数。下面是一个示例代码:
```matlab
% PM调制
amplitude = 2; % 幅度
frequency = 1; % 频率
sampling_period = 0.002; % 采样周期
t = 0:sampling_period:1; % 时间序列
carrier = cos(2*pi*frequency*t); % 载波信号
modulated_signal = carrier .* (1 + amplitude*sin(2*pi*frequency*t)); % 调制信号
% PM解调
demodulated_signal = diff(modulated_signal) ./ diff(t); % 求导数
% 绘制波形图
subplot(3,1,1);
plot(t, carrier);
title('Carrier Signal');
xlabel('Time');
ylabel('Amplitude');
subplot(3,1,2);
plot(t, modulated_signal);
title('Modulated Signal');
xlabel('Time');
ylabel('Amplitude');
subplot(3,1,3);
plot(t(2:end), demodulated_signal);
title('Demodulated Signal');
xlabel('Time');
ylabel('Amplitude');
```
这段代码首先定义了调制所需的参数,然后生成了时间序列和载波信号。接下来,通过将调制信号与载波信号相乘来进行PM调制。最后,通过对调制信号求导数来进行PM解调。最后,使用subplot函数将三个波形图绘制在一张图上。
阅读全文