How to quantise a sin wave with amplitude between -1 to 1?
1 view (last 30 days)
Show older comments
Sarah Ghosh
on 7 Feb 2014
Commented: Azzi Abdelmalek
on 9 Feb 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?
0 Comments
Accepted Answer
Azzi Abdelmalek
on 7 Feb 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 Comments
Azzi Abdelmalek
on 9 Feb 2014
Sarah, if you have another question, post a new one and make it as clear as possible
More Answers (1)
Walter Roberson
on 7 Feb 2014
Edited: Walter Roberson
on 7 Feb 2014
dec2bin(typecast(int16(floor(sin(t) * 32767)), 'uint16'), 16) - '0'
0 Comments
See Also
Categories
Find more on Fourier Analysis and Filtering in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!