gusucode.com > matlab通信工程仿真源码(张德丰等编著)程序书籍 > matlab_code/matlab通信工程仿真源码(张德丰等编著)/第8章/srz.m

    function y=srz(x)
% 输入x为二进码,输入y为编好的码
grid =200;
t=0:1/grid:length(x);  %给出相应的时间序列
for i=1:length(x);     %计算码元的值
    if (x(i)==1),      %如果信息为1
        for j=1:grid/2,  
        y(grid/2*(2*i-2)+j)=1;     %定义前半时间值为1
        y(grid/2*(2*i-1)+j)=0;     %定义后半时间值为0
        end
    else
        for j=1:grid/2,    %反之,信息为0
            y(grid*(i-1)+j)=0; %定义所有时间值为0
        end
    end
end
y=[y,x(i)];   %为了画图,注意要将y序列加上最后一位
M=max(y); 
axis([0 12 0 1.2])
subplot(2,1,1);plot(t,y);
% 采用了title函数来实现标记出各码元对应的二元信息
title('1       0        0       1         1        0     0       0        0        1        0        1');