MATLAB AWGN信道 M-ary PSK 误码性能

AWGN 信道 QPSK 调制误码性能分析的 MATLAB 仿真基本流程。

M 进制 PSK 调制解调
% M 进制 PSK 调制参数设置
M = 4;                           % PSK 进制数
N = 200000;                      % 仿真点数
A = M - 1;                       % PSK 调制数据的最大幅值
data = randi([0, A], N, 1);      %产生随机信号

% M 进制 PSK 调制
modData = pskmod(data, M);

% M 进制 PSK 解调
rxData = pskdemod(rxSig, M);
AWGN 信道
% 信噪比为 SNR 的 AWGN信道,'measured'代表加入噪声前测量信号能量
rxSig = awgn(modData, SNR, 'measured');
误码率
% 统计误码比特数以及误码率
[err_bit, err_rate] = biterr(data, rxData);
完整代码
clear;
close all;
% M 进制 PSK 调制参数设置
M = 4;                             % PSK 进制数
N = 200000;                        % 仿真点数
A = M - 1;                         % PSK 调制数据的最大幅值
data = randi([0, A], N, 1);        %产生随机信号

% 信噪比变化范围
SNR = 0:1:10;

% M 进制 PSK 调制
modData = pskmod(data, M);

% 在不同信噪比下进行仿真
for i = 1:length(SNR)
    % AWGN信道,'measured'代表加入噪声前测量信号能量
    rxSig = awgn(modData, SNR(i), 'measured');
    % M 进制 PSK 解调
    rxData = pskdemod(rxSig, M);
    % 统计误码比特数以及误码率
    [err_bit(i), err_rate(i)] = biterr(data, rxData);
end

% 绘制误比特率与信噪比曲线,纵轴为对数尺度
semilogy(SNR./log2(M) ,err_rate,'r*-');
title('QPSK 在 AWGN 信道下误比特率分析');
xlabel('Eb/N0(dB)');ylabel('BER');
axis([0 6 1e-4 1]);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值