惠州西门子DP电缆一级代理商
惠州西门子DP电缆一级代理商惠州西门子DP电缆一级代理商惠州西门子DP电缆一级代理商
湖北西门子PLC代理商,荆门西门子触摸屏代理商,上海西门子变频器代理商,北京西门子交换机供应商,江苏CPU模块代理商,浙江西门子S7-200,S7-300,S7-1500,S7-1200系列代理商,广州西门子电机代理商,湖北西门子电缆代理商,武汉西门子通讯电缆代理商,上海西门子模块代理商。西门子授权一级代理商,深圳西门子授权总代理商,浔之漫智控技术(上海)有限公司,西门子CN模块授权代理商,
通讯与设备交互,CRC效验程序如何编写
在工作现场,经常会用到通讯与其它设备交互信息,而通讯必然会需要效验。而初学者学习MODBUS RTU的时候往往会纠结这个CRC效验程序如何编写?
CRC效验程序相对来说比较繁琐,但是大家可以收藏好这个程序(使用200SMART PLC),加以理解,需要的时候调用此程序即可。
那首先我们来看CRC效验的步骤,严格按照步骤来写程序即可:
1、 设置CRC存储器为16#FFFF。
2、 把第一个参与校验的8位数与CRC的低八位进行异或运算结果仍存与CRC。
3、 把CRC右移一位,*高位补0,检查*低位b0位。
4、 若b0=0,CRC不变,若b0=1, CRC与16#A001进行异或运算,结果仍存与CRC。
5、 重复3、4两步,直到右移8次,这样第一个八位数就进行处理了结果仍然存于CRC。
6、 重复2-5步,处理第二个八位数。
【程序结构描述】
1、西门子S7-200SMART系列PLC的程序结构分为主程序、子程序、中断程序。此程序用“MAIN”程序调用“CRC效验程序”子程序
定义子程序变量表:如图1-0
子程序变量表定义图1-0
案例源程序下载,请看文末
(1)“CRC效验程序”子程序,初始化存储器,并把16#FFFF装载到CRC寄存器中(定义AC0为CRC寄存器)。并利用FOR语句循环,循环的次数由LW4决定。程序如图1-1所示
图1-1初始化存储器
(2)取第一个地址与CRC寄存器做异或运算。并利用FOR语句循环,循环的次数为8,因为一个字节的数据是8个位。程序如图1-2所示
图1-2异或运算
案例源程序下载,请看文末
(3)执行移位操作,并判断移出为的状态,若移出位为1,则在与16#A001做异或运算。程序如图1-3所示
图1-3执行移位操作
(4)利用指针,指针加1,指向下一个地址,取出下一个地址之后再进行重复以上步骤效验,直到数据都效验完,程序退出FOR循环。程序如图1-4所示
图1-4指针加1
(5)对计算结果进行高低字节交换,把结果输出。程序如图1-5所示
图1-5高低字节交换
(6)在“MAIN”程序中通过按钮的触发调用“CRC效验程序”子程序。
案例源程序下载,请看文末
验证一:写入数据到VB0至VB5中,CRC效验值存储在VW100中
CRC效验计算小助手(与程序中计算相符):
验证二:写入数据到VB0至VB5中,CRC效验值存储在VW100中
CRC效验计算小助手计算(与程序中计算相符):
标准型CPU | 6ES7312-1AE14-0AB0 |
6ES7312-5BF04-0AB0 | |
6ES7313-5BG04-0AB0 | |
6ES7313-5BG04-4AB1 | |
6ES7313-5BG04-4AB2 | |
6ES7313-6BG04-0AB0 | |
6ES7313-6CG04-0AB0 | |
6ES7313-6CG04-4AB1 | |
6ES7313-6CG04-4AB2 | |
6ES7314-1AG14-0AB0 | |
6ES7314-6BH04-0AB0 | |
6ES7314-6CH04-0AB0 | |
6ES7314-6CH04-4AB1 | |
6ES7314-6CH04-4AB2 | |
6ES7314-6EH04-0AB0 | |
6ES7314-6EH04-4AB1 | |
6ES7314-6EH04-4AB2 | |
6ES7315-2AH14-0AB0 | |
6ES7315-2EH14-0AB0 | |
6ES7317-2AK14-0AB0 | |
6ES7317-2EK14-0AB0 | |
6ES7318-3EL01-0AB0 |
惠州西门子DP电缆一级代理商惠州西门子DP电缆一级代理商惠州西门子DP电缆一级代理商惠州西门子DP电缆一级代理商惠州西门子DP电缆一级代理商惠州西门子DP电缆一级代理商惠州西门子DP电缆一级代理商惠州西门子DP电缆一级代理商
- 西门子S7-400模块控制器CPU 2023-11-04
- 河池西门子S7-1200代理商 2023-11-04
- 贺州西门子S7-1200代理商 2023-11-04
- 西门子S7-400可编程控制器CPU模块 2023-11-04
- 肇庆西门子CPU一级代理商 2023-11-04
- 西门子CPU224CN主机模块 2023-11-04
- 西门子S7-400中央处理单元CPU416-3PN/DP 2023-11-04
- 茂名西门子触摸屏一级代理商 2023-11-04
- 西门子CPU224CN模块 AC/DC/RLY 2023-11-04
- 百色西门子S7-1200代理商 2023-11-04
- 西门子CPU供应224CN继电器模块 2023-11-04
- 西门子PLC主机模块CPU416-3 2023-11-04
- 南宁西门子S7-1200代理商 2023-11-04
- 西门子CPU416-3主机模块 2023-11-04
- 西门子PLC模块供应|CPU224CNDC/DC/DC 2023-11-04
联系方式
- 地址:上海 上海市松江区石湖荡镇塔汇路755弄29号1幢一层A区213室
- 邮编:201600
- 电话:15021292620
- 销售:颜娟
- 手机:15021292620
- 传真:021-33556143
- 微信:X15021292620
- QQ:2799536152
- Email:2799536152@qq.com