CRC校验-基于matlab的简易生成二进制发送信息

  • 先上代码:
polynomial = [1 1 0 0 1]; % 校验多项式
data = [1 1 0 0 1 1 ]; % 原始信号
glen = length(polynomial);
while polynomial(1) == 0
polynomial = polynomial(2:glen);
glen = length(polynomial);
    end
    
data_back = data;
for m = 1:glen-1
data = [data 0];
    end
    
dlen = length(data);
message = data(1:glen-1);
for p = glen:dlen
message(glen) = data(p);
if message(1)
message = xor(message(2:glen), polynomial(2:glen));  %异或运算,相当于除法
else
message = message(2:glen);
    end
    end
    
data = [ data_back ]
polynomial = [ polynomial ]
message = [data_back message]
  • 效果如图:

CRC-基于matlab

猜你喜欢

转载自blog.csdn.net/GodOuO/article/details/105109840