Effacer les filtres
Effacer les filtres

How to quantise a sin wave with amplitude between -1 to 1?

1 vue (au cours des 30 derniers jours)
Sarah Ghosh
Sarah Ghosh le 7 Fév 2014
Commenté : Azzi Abdelmalek le 9 Fév 2014
I have to quantise a continuous sin wave into a 16 bit signal and obtain the vector of the quantised signals in the binary form? How to get the binary of a decimal number which might be negative. Can anyone provide me with the code snippet for that?

Réponse acceptée

Azzi Abdelmalek
Azzi Abdelmalek le 7 Fév 2014
ts=0.01 % sample time
t=0:ts:10; % time vector
y=sin(t); % your signal
pas=(1-(-1))/(2^15-1) % quantization interval
ye=round(y/pas)
s=sign(ye')
s(s<=0)=0
yq=[num2str(s) dec2bin(abs(ye))] % use the first bit to define positive and negative numbers
  2 commentaires
Sarah Ghosh
Sarah Ghosh le 9 Fév 2014
Thanks a lot for the answer. Now, I need each of those 15 bits as the output. How do I do that?
Azzi Abdelmalek
Azzi Abdelmalek le 9 Fév 2014
Sarah, if you have another question, post a new one and make it as clear as possible

Connectez-vous pour commenter.

Plus de réponses (1)

Walter Roberson
Walter Roberson le 7 Fév 2014
Modifié(e) : Walter Roberson le 7 Fév 2014
dec2bin(typecast(int16(floor(sin(t) * 32767)), 'uint16'), 16) - '0'

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by