www.gusucode.com > matlab通信工程仿真源码(张德丰等编著)程序书籍 > matlab_code/matlab通信工程仿真源码(张德丰等编著)/第8章/drz.m
function y=drz(x) % 输入x为二进码,输入y为编好的码 grid =300; 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/2*(2*i-2)+j)=-1; %定义前半时间为-1 y(grid/2*(2*i-1)+j)=0; %定义后半时间为0 end end end y=[y,x(i)]; %为了画图,注意要将y序列加上最后一位 M=max(y); m=min(y) subplot(2,1,1);plot(t,y); axis([0,i,m-0.1,M+0.1]); % 采用了title函数来实现标记出各码元对应的二元信息 title('1 0 0 1 1 0 0 0 0 1 0 1');