how to convert analog signal to bit stream

19 views (last 30 days)
I generate a analog signal cos(2pi*f*t), fs is sampling frequency and I denotes quantization levels. How to convert the analog signal to bit stream

Answers (1)

Walter Roberson
Walter Roberson on 3 Aug 2021
That is not an analog signal. An analog signal is created by outputing to a hardware device. What you have is a digital signal.
Your description said I denotes quantization levels. If so then
I = linspace(-1,1,32);
t = linspace(0,1,75);
f = 17;
x = cos(2*pi*f*t);
plot(t, x)
binnumber = discretize(x, I) - 1;
binnumber(1:10)
ans = 1×10
30 17 0 9 29 24 4 3 23 29
num_bits = ceil(log2(length(I)))
num_bits = 5
as_char_binary = dec2bin(binnumber, num_bits);
as_char_binary(1:5,:)
ans = 5×5 char array
'11110' '10001' '00000' '01001' '11101'
binary_stream = reshape((as_char_binary - '0').',1,[]);
stairs(binary_stream); ylim([-.1 1.1]); xlim([0 50])

Categories

Find more on Code Generation 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!