基于matlab的psk调制与解调仿真代码
时间: 2023-12-19 18:02:37 浏览: 393
基于MATLAB的psk调制与解调仿真
4星 · 用户满意度95%
基于matlab的psk调制与解调仿真代码如下:
调制部分:
``` matlab
clear all;
close all;
% 信号参数设置
fc = 10e3; % 载波频率
fs = 100e3; % 采样率
T = 1/fs; % 采样间隔
t = 0:T:1-T; % 时间序列
% 调制信号生成
A = 1; % 信号幅度
message = randi([0,1],1,length(t)); % 随机生成0、1序列
M_psk = 2; % PSK调制阶数
psk_signal = A.*sqrt(2/T).*cos(2*pi*fc*t + pi*(2*message-1));
% 画出调制信号时域图像
figure(1)
subplot(2,1,1);
plot(t,psk_signal);
xlabel('Time(s)');
ylabel('Amplitude');
title('PSK Modulated Signal');
% 画出调制信号频域图像
f = -fs/2:fs/length(t):fs/2-fs/length(t);
psk_signal_fft = fftshift(fft(psk_signal)/length(t));
subplot(2,1,2);
plot(f,abs(psk_signal_fft));
xlabel('Frequency(Hz)');
ylabel('Amplitude');
title('Frequency Domain of PSK Modulated Signal');
% 解调部分
carrier = sqrt(2/T).*cos(2*pi*fc*t); % 与调制时使用的载波一致
received_signal = psk_signal.*carrier; % 接收信号
demod = sum(received_signal); % 解调信号
% 解调信号显示
figure(2)
stem(message);
xlabel('Time(s)');
ylabel('Amplitude');
title('Demodulated PSK Signal');
```
以上是基于matlab的psk调制与解调仿真代码。其中,首先设置信号参数和生成调制信号,然后画出调制信号的时域图像和频域图像。接着进行解调操作,并画出解调信号的图像。通过这段代码,可以对psk调制与解调进行仿真分析。
阅读全文