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_pskdemod(y , m)
this function demodulate the psk modulated signal, here y is the modulated
-
my_pskmod(x , m)
this is function for generating the phase shift keying modulation, where x
-
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
n-PSK modulation and demodulation
by Santosh Shah
keep all files in a folder and run any of the test my speech file, with any value of n, in power of
|
| my_pskdemod(y , m)
|
function z = my_pskdemod(y , m)
%this function demodulate the psk modulated signal, here y is the modulated
%signal with m-psk, and z is the output. here y can be row or coulmn
%vector, m is the integer power of 2 and , z should be a row vector.
%santosh shah, The LNM IIT Jaipur (India)(santosh.jnt@gmail.com) 24/04/07
%i have to check if M is equal to the power of 2 and x is in between 0 to
%M-1 so..
if log2(m)~= floor(log2(m))
error('Please check the value of m that you have provided for type M-QAM.');
end
%now comparing the data from c's vector after rounding the input data.
% Allocate space for output
z = zeros(size(y));
%now generating the cancellation points
t = (0:m-1);
c = exp(2*pi*t*(m-1)/m*(-i)); % taking the concept of cosx + i*sinx
% 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