我在MATLAB中有CRC代码的代码,msg
是数据,poly
是生成器函数。
msg=[1 0 1 1 0 0 1 0 1 ];
poly=[1 0 1 1];
[M, N]=size(poly);
mseg=[msg zeros(1,N-1)];
[q, r]=deconv(mseg,poly);
r=abs(r);
for i=1:length(r)
a=r(i);
if ( mod(a,2)== 0 )
r(i)=0;
else
r(i)=1;
end end
crc=r(length(msg)+1:end) frame = bitor(mseg,r)
它运作良好,但我希望以大小为7的随机msg
进行此操作。
我用过这个,但它有错误。
msg = randi([0, 1], 7,1);
错误是:
使用horzcat时出错连接的矩阵的维度不是 是一致的。
请帮我解决这个问题。
答案 0 :(得分:2)
您是否尝试过:msg = randi([0, 1], 1, 7);
?
请注意将7, 1
切换为1, 7
。请查看这是否解决了您的问题。