www.pudn.com > PSK.zip > my_speech.m


function my_speech(M, type_of_mod, fc, fs)

> here i am going to test my speech through various QAM, and PSK mod-demod
> techniques

>santosh shah, The LNM IIT Jaipur (India)(santosh.jnt@gmail.com) 25/04/07

if nargin < 4
fs = 128e3 ; > default value of sampling frequency 100kHz
end
if nargin < 3
fc = 20e3; > default value of carrier frequency
end

Down_samp = 2;
test_data = 'E:\MATLAB\SDR_course\November7\my_speech.wav';
siz = wavread(test_data, 'size');
[data, fcar] = wavread(test_data);
x = [data]' ; > coulnm to row vector conversion
sound(x, fcar);
tfplot(x, fs,' Voice', 'speech signal');
s_data = round((M-1)/2*(x + 1)) ;

>converting this decimal data into binary data
>b= my_de2bi(s_data1, 'right_msb',4);
>s_data= my_bi2de(b,'right_msb');

>============================MODULATION===============================
if (type_of_mod == 'qam')
y1 = my_qammod(s_data, M) ;
elseif (type_of_mod == 'psk')
y1 = my_pskmod(s_data, M) ;
end

>tfplot(y, fs,' Voice', 'modulated signal');

>==================CHANNEL==========================================

y = awgn(y1,20);


>==================DEMODULATION===================================
if (type_of_mod == 'qam')
z = my_qamdemod(y, M);
elseif (type_of_mod == 'psk')
z = my_pskdemod(y, M);
end
z1 = (z - (M-1)/2) / M ;
>filtering................
orig_sp = my_rrcosflt(z1, fcar, fs, .22, 3, 'fs');
sound(orig_sp, fcar);

>==================SCATTER PLOT===================================
scale = modnorm(y,'peakpow',1);
y = scale*y; > Scale the constellation.
scatterplot(y); > Plot the scaled constellation.
grid on;

tfplot(orig_sp, fs,' Voice', 'de-modulated signal');