首页 > 其他分享 >modbus crc16校验

modbus crc16校验

时间:2024-02-05 13:57:39浏览次数:22  
标签:crc16 int 校验 modbus crc 低字节

//计算crc16位校验 ,如计算结果是0x5566,则高字节是55,低字节是66,需要根据情况交换高低字节
quint16 checkCrc16(quint8 *ptr, int len)
{
    unsigned int i;
    quint16 crc = 0xFFFF;

    while(len--)
    {
        crc ^= *ptr++;
        for (i = 0; i < 8; ++i)
        {
            if (crc & 1)
                crc = (crc >> 1) ^ 0xA001;
            else
                crc = (crc >> 1);
        }
    }

    //crc = (crc & 0x00ff) << 8 | (crc & 0xff00) >> 8;
    return crc;
}

modbus 串口计算校验码。这里计算的校验码没有高低字节变换。在传输时,modbus校验时低字节在前,高字节在后,需要高低字节变换。

标签:crc16,int,校验,modbus,crc,低字节
From: https://www.cnblogs.com/warmlight/p/18007812

相关文章

  • Modbus communication types
    AnIntroductiontotheModbusCommunicationProtocolhttps://www.solisplc.com/tutorials/modbusTheModbusOrganizationhttps://modbus.org/IntroductiontothemodbusprotocolOriginalequipmentmanufacturers(OEMs)allhaveproprietarycommunicationprot......
  • Java将密码加盐加密存储和校验
    注册和登陆的时候,需要加密和校验,以下为加密和解密代码packageorg.ongoal.common.config;importorg.springframework.util.DigestUtils;importorg.springframework.util.StringUtils;importjava.util.UUID;publicclassPasswordUtil{/***加盐算法->格......
  • JWT的生成和校验
    JWT(JSONWebToken)是一种开放标准(RFC7519),用于在网络上安全传输信息的简洁、自包含的方式。它通常被用于身份验证和授权机制。JWT由三部分组成:头部(Header)、载荷(Payload)和签名(Signature)。1、头部(Header):包含了关于生成该JWT的信息以及所使用的算法类型。2、载荷(payload): ......
  • 校验ChatGPT 4真实性的三个经典问题:提供免费测试网站快速区分 GPT3.5 与 GPT4
    现在已经有很多ChatGPT的套壳网站,以下分享验明GPT-4真身的三个经典问题,帮助你快速区分套壳网站背后到底用的是GPT-3.5还是GPT-4。大家可以在这个网站测试:https://ai.hxkj.vip,免登录可以问三条,登录之后无限制。咱们使用免登录的额度测试就已经够用了测试问题1:Whatist......
  • css中的resize设置、高度没有对齐、表单在校验、边框发生重叠
    小知识点汇总css❓:css中的resize设置......
  • el-form的对象数组数组校验
    el-form绑定的是一个对象,但在有些时候提交的表单中会有数组数据,校验有点不符合常理例如这样的一个表单,付款方是个数组,这种怎么校验呢。上代码用的循环el-form,:model绑定循环的item,也就是数组中的单个对象,然后prop绑定参数,rules正常写,然后提交的时候,因为el-form是循环的,所......
  • 正则校验:不能输入中文
    需求表单项校验要求:满足某条件时,必填;不能输入中文。代码data(){varvalidateRelateTable=(rule,value,callback)=>{if(this.form.type!==0&&!value){callback(newError(`请选择`));}else{callback();}};......
  • 项目实践 采集Profinet IO从站设备数据转modbus方案
    1 功能需求在很多项目应用中,需要把ProfinetIO设备的数据发送到modbus协议的scada系统中。因为在系统主要是modbus协议,ProfinetIO设备不能直接接入到系统。ProfinetIOA协议内容非常复杂,所以modbus设备不直接支持ProfinetIO协议。使用一个协议转换的网关设备可以很好的实现两个......
  • 物联网浏览器(IoTBrowser)-Modbus协议集成和测试
    Modbus协议在应用中一般用来与PLC或者其他硬件设备通讯,Modbus集成到IoTBrowser使用串口插件模式开发,不同的是采用命令函数,具体可以参考前面几篇文章。目前示例实现了Modbus-Rtu和Modbus-Tcp两种,通过js可以与Modbus进行通讯控制。   一、开发插件添加引用添加NModbus4,......
  • SpringBoot自定义注解+反射实现 excel 导入的数据组装及字段校验
    本次给大家带来的SpringBoot中通过自定义注解+反射实现excel导入数据组装及字段校验的实现方式。这种实现方式其实是很普通、常规的方法,但很多同学在开发过程中,可能却不太容易想到他。当然我也是众多同学中的一员。1背景在前段时间的开发工作中,接手了一个很简单,很普通的开发任务。......