2psk相干解调matlab代码
时间: 2023-09-26 16:11:11 浏览: 108
MATLAB编程实现2FSK信号的调制与解调(非相干解调)
以下是2PSK相干解调的Matlab代码示例:
```matlab
% 生成2PSK调制信号
fc = 10e3; % 载波频率
fs = 100e3; % 采样率
T = 1/fs; % 采样时间间隔
t = 0:T:1-T; % 时间序列
A = 1; % 振幅
f0 = 0; % 初始相位
phi = pi/2; % 位移角
s = A*cos(2*pi*fc*t + phi); % 2PSK调制信号
% 加入高斯白噪声
SNR = 10; % 信噪比
Psignal = sum(s.^2)/length(s); % 信号功率
Pnoise = Psignal/(10^(SNR/10)); % 噪声功率
noise = sqrt(Pnoise/2)*(randn(size(s))+1j*randn(size(s))); % 高斯白噪声
r = s + noise; % 接收信号
% 相干解调
f = fc; % 假设接收器已经知道了载波频率
y = r.*exp(-1j*2*pi*f*t); % 相乘
b = real(y); % 取实部得到解调信号
% 绘制图形
subplot(3,1,1);
plot(t,s);
xlabel('时间(秒)');
ylabel('幅度');
title('2PSK调制信号');
subplot(3,1,2);
plot(t,real(noise));
xlabel('时间(秒)');
ylabel('幅度');
title('高斯白噪声');
subplot(3,1,3);
plot(t,b);
xlabel('时间(秒)');
ylabel('幅度');
title('2PSK解调信号');
```
解调结果将显示在第三个子图中。
阅读全文