No BSD License
-
my_bi2de(b, msbflag)
now i need to convert bit vector into decimal numbers. so my_bi2de is the
-
my_de2bi(d, msbflag, n)
This is the function to convert decimal to binary. here b is the binary
-
my_qamdemod(y, m)
this is the function for demodulation of QAM, y is the M-QAM Modulated
-
my_qammod(x, m)
here y is the QAM modulated output in vector form like x+jy, x is the
-
my_rrc(fd, fs, beta, delay)
MY_RRC Produces the impulse response of a root raised cosine filter
-
my_rrcosflt(x, fd, fs, beta, ...
MY_RRCOSFLT Filter the input signal using a root raised cosine filter.
-
my_speech(M, type_of_mod, fc,...
here i am going to test my speech through various QAM, and PSK mod-demod
-
scatter_plot(m, type_of_mod, ...
this program is to test the QAM and PSK modulation and demodulation
-
tfplot(s, fs, name, plottitle)
TFPLOT Time and frequency plot
-
View all files
from
M-QAM modulation and demodulation
by Santosh Shah
this is the QAM modulation and demodulation tech. with speech example
|
| my_qamdemod(y, m)
|
function z = my_qamdemod(y, m)
%this is the function for demodulation of QAM, y is the M-QAM Modulated
%signam, m is playing the same role. z is the demodulated output. input y
%is a row or coulmn vector and, z should be the row vector.
%santosh shah, The LNM IIT Jaipur (India)(santosh.jnt@gmail.com) 23/04/07
% again i need to check the value of M, so by the same process.
if log2(sqrt(m))~= floor(log2(sqrt(m)))
error('Please check the value of m that you have provided for type M-QAM.');
end
%taking the reverse process
k = sqrt(m);
r = 2*(0:k-1) - k + 1;
[xi, yi] = meshgrid(r);
c = xi + j*flipud(yi);
c = c(:);
%now comparing the data from c's vector after rounding the input data.
% Allocate space for output
z = zeros(size(y));
% Slicer: Find closest constellation symbol, symbol-by-symbol.
for k = 1:length(y)
[nil ind] = min(abs(y(k) - c));
z(k) = ind - 1;
end
|
|
Contact us at files@mathworks.com