s7-300 modbus rtu crc校验程序如何编写
郑志武
发布于2012-11-22 09:18
3
0
标签:
cp340ascii通讯modbusrtucrc校验程序
佳答案
参考:https://wenku.baidu.com/view/d087590d7cd184254b353596.htm
var_input
db_no:int;
dbb_start:int;
dbb_counts:int;
end_var
var_output
crc_h:byte;
crc_l:byte;
end_var
var_temp
crc_reg:word;
db_no_temp:int;
byteschecked:int;
bitschecked:int;
end_var
begin
network
title=
lw#16#ffff;
t#crc_reg;//预置crc寄存器
l#db_no;
t#db_no_temp;
opndb[#db_no_temp];
l#dbb_start;//读入校验起始字节
sld3;
lar1;
l#dbb_counts;//读入校验字节数量
_a:t#byteschecked;//字节处理循环
ldbb[ar1,p#0.0];
llb1;
xow;
tlb1;
l8;
_b:t#bitschecked;//位处理循环
l#crc_reg;
srw1;
t#crc_reg;
jz_c;//检验移出位是否为1
l#crc_reg;
lw#16#a001;
xow;
t#crc_reg;
_c:l#bitschecked;//校验下个位
loop_b;
+ar1p#1.0;//校验下个字节
l#byteschecked;
loop_a;
llb1;//输出校验码
t#crc_h;
llb0;
t#crc_l;
end_function