/*** crc16 X16+x15+x2+1* 16进制报文是 02 03 00 00 00 40 CRC16* 传输的str:“020300000040”* 结果:4409* @param str* @return*/public static String getCRC(String str) {byte[] bytes = ByteUtil.hexStr2bytes(str);int CRC = 0x0000ffff;int POLYNOMIAL = 0x0000a001;int i, j;for (i = 0; i < bytes.length; i++) {CRC ^= ((int) bytes[i] & 0x000000ff);for (j = 0; j < 8; j++) {if ((CRC & 0x00000001) != 0) {CRC >>= 1;CRC ^= POLYNOMIAL;} else {CRC >>= 1;}}}String crc = Integer.toHexString(CRC);if (crc.length() == 2) {crc = "00" + crc;} else if (crc.length() == 3) {crc = "0" + crc;}crc = crc.substring(2, 4) + crc.substring(0, 2);return crc.toUpperCase();}

CRC校验 java modbus相关推荐

  1. java crc 校验码_java实现CRC校验码

    这两天项目中要使用到CRC校验功能,网上大量的例子是针对c.delphi的例子,前期没有做过,理论上也欠缺很多知识,在这里对java如何实现我们想要的crc校验功能做一下自己的总结,以下内容有本分转自 ...

  2. 编写一个字节数的rtu C语言校验程序,Modbus通信协议中CRC校验的快速C语言算法

    Modbus通信协议中CRC校验的快速C语言算法 2004年第11期 福 建 电 脑 63 Modbus通信协议中CRC校验的快速C语言算法 孟开元 (西安石油大学计算机学院陕西西安710065) [ ...

  3. Java多word文件生成后进行压缩并导出下载后,压缩文件损坏并提示“不可预料的压缩文件末端”和“CRC校验失败”

    Java多word文件生成后进行压缩并导出下载后,压缩文件损坏并提示"不可预料的压缩文件末端"和"CRC校验失败" WinRAR 打开情况: 提示不可预料的压缩 ...

  4. Java中的CRC校验

    前言 最近客户有CRC校验的需求,即希望Android端对字符串进行校验,并将生成的2个字节的CRC校验码追加到字符串中,然后一起写入文件.当系统联网后,会通过写入的字符串去向服务器请求设备序列号,服 ...

  5. modbus c语言校验算法,Modbus CRC校验算法

    终于找到了 Modbus CRC 校验算法 算法一: unsigned int calccrc(uchar crcbuf,uint crc) { uchar i; crc=crc ^ crcbuf; ...

  6. FPGA实现串口收发的八字节数据报文Modbus Crc校验

    一.项目工程背景 串口之间的数据交互,是一个在实际工作当中应用非常广泛的场景,所以笔者在这篇博客里为大家详细介绍"串口八字节报文modbus crc收发校验"的工程案例,相信耐心地 ...

  7. 一文详解循环冗余校验校验算法(CRC校验)及C语言代码的实现 ---- 以CRC-16/MODBUS为例讲解

    一.概述 现在的产品开发过程中,无论是数据的储存还是传输,都需要确保数据的准确性,所以就需要在数据帧后面附加一串校验码,方便接收方使用校验码校验接收到的数据是否是正确的. 常用的校验方式有奇偶校验.异 ...

  8. 三菱FX3G/FX3S+485bd扩展,采用modbus rtu协议,crc校验,通讯控制四台E700变频器,可以实现正反转

    三菱FX3G/FX3S 485协议通讯四台三菱E700变频器程序资料 三菱FX3G/FX3S+485bd扩展,采用modbus rtu协议,crc校验,通讯控制四台E700变频器,可以实现正反转,停止 ...

  9. PLC中用scl语言编写算法求解modbus crc校验码

    PLC中用scl语言编写算法求解modbus crc校验码 因为不是严格的modbus协议,是用的自由口通讯,传输数据里面得加上CRC校验,所以得搞个算法根据发送不同的数据生成相应的CRC校验码. 现 ...

最新文章

  1. 马虎的算式 - 蓝桥杯
  2. c#中通过截获windows消息禁止改变窗体大小
  3. QuickSkin简单学习--控制结构
  4. 使用webpack打包ES6代码
  5. 如何“干净地”终止 Win32 中的应用程序
  6. 装完金蝶电脑无限重启_金蝶财务软件快捷键大全,提高工作效率!
  7. 计算机主机系统总线,全国2009年10月高等教育自学考试计算机应用基础试题及答案...
  8. 相机标定-opencv
  9. 炮灰模型——女生选择追求者模型
  10. java自学网视频教程,系列教学
  11. 聊聊我的2021,总结与展望
  12. android后台进程隐藏手段
  13. 计算机网络子网掩码计算题,计算机网络复习题(计算题)
  14. 剖析常见的患上胆囊息肉的症状
  15. c# 正则表达式 Group
  16. 面向服务的体系架构(SOA)—架构篇
  17. 将逻辑分区的空间分给主分区C盘,使用diskgenius,提示需要在dos进行
  18. Pycharm安装与入门
  19. 为什么说冯诺依曼结构是现代计算机的基础,为什么现代计算机被称为冯·诺依曼结构计算机?...
  20. Android-Dex分包最全总结:含Facebook解决方案,移动app开发

热门文章

  1. Matlab自适应均线_李洋:卡夫曼自适应移动平均线MATLAB代码
  2. 思杰桌面虚拟化---------- 为什么我们仍然坚持MCS
  3. 百度离线地图示例之四:热力图
  4. 字符编码的故事(ASCII ISO GBK GB2312 UTF-8)
  5. 小学数学测试软件报告,2017年小学数学期末考试质量分析报告
  6. 【聆思CSK6 视觉AI开发套件试用】AI Demo试用
  7. 截止2010年3月25日的流量统计
  8. Unity Android 之 应用打开手机的指定网页浏览器(external browser)的两种方法(封装aar和不用封装aar方法)
  9. python爬虫 爬取JD商城快消品的保质期
  10. 推断速度达seq2seq模型的100倍,谷歌开源文本生成新方法LaserTagger