clc;
clear;
close all;

bit_stream = [0 1 1 0 0 0 0 1 0 1 1 1];
no_bits = length(bit_stream);

bit_rate = 2000;             % 2 kbps
samples_per_bit = 500;
samples_half = samples_per_bit/2;

Tb = 1/bit_rate;
fs = samples_per_bit/Tb;

no_samples = no_bits*samples_per_bit;
t = (0:no_samples-1)/fs;

dig_sig = zeros(1,no_samples);

for i = 1:no_bits

    start = (i-1)*samples_per_bit + 1;
    mid = start + samples_half - 1;
    finish = i*samples_per_bit;

    if bit_stream(i)==0
        dig_sig(start:mid) = 5;
        dig_sig(mid+1:finish) = -5;
    else
        dig_sig(start:mid) = -5;
        dig_sig(mid+1:finish) = 5;
    end

end

figure;
plot(t,dig_sig,'LineWidth',1.5);
grid on;

xlabel('Time (seconds)');
ylabel('Voltage (V)');
title('Manchester Line Coding (2 kbps)');

ylim([-6 6]);
xlim([0 no_bits/bit_rate]);


Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: