Modulation Constellation Diagrams BER vs. SNR MATLAB code for BER vs SNR for M-QAM, M-PSK, QPSk, BPSK, ... MATLAB Script for BER vs. SNR for M-QAM, M-PSK, QPSk, BPSK %Written by Salim Wireless %Visit www.salimwireless.com for study materials on wireless communication %or, if you want to learn how to code in MATLAB clc; clear all; close all; EbN0=-4:1:24; % Signal to Noise Ratio per Bit (in dB) EbN0ratio=10.^(EbN0/10); % Converted into ratio colors={'k-*','r-h','g-o','c-s','m-s','y-*','k-p','b:s','m:d','g:p'}; index=1; %BPSK BPSK_BER = 0.5*erfc(sqrt(EbN0ratio)); plotHandle=plot(EbN0,log10(BPSK_BER),char(colors(index))); set(plotHandle,'LineWidth',1.7); hold on; index=index+1; %M-PSK m=2:1:5; M=2.^m; for i=M, k=log2(i); PSK_BER = 1/k*erfc(sqrt(EbN0ratio*k)*sin(pi/i)); plotHandle=plot