php实现modbus CRC校验
一:计算CRC校验函数
function calculateCRC16Modbus($string)
{$crcBytes = [];for ($i = 0; $i < strlen($string); $i += 2) {$crcBytes[] = hexdec(substr($string, $i, 2));}$crc = 0xFFFF;$polynomial = 0xA001; // This is the polynomial x^16 + x^15 + x^2 + 1foreach ($crcBytes as $byte) {$crc ^= $byte;for ($i = 0; $i < 8; $i++) {if ($crc & 0x0001) {$crc = (($crc >> 1) ^ $polynomial) & 0xFFFF;} else {$crc >>= 1;}}}return $crc;
}
二:调用CRC校验
$request = 'XXXXXXXX';
$res = calculateCRC16Modbus($request);
echo str_pad(strtoupper(dechex($res %256)), 2, "0", STR_PAD_LEFT);//低八位
echo str_pad(strtoupper(dechex(floor($res /256))), 2, "0", STR_PAD_LEFT);高八位
相关文章:
php实现modbus CRC校验
一:计算CRC校验函数 function calculateCRC16Modbus($string) {$crcBytes [];for ($i 0; $i < strlen($string); $i 2) {$crcBytes[] hexdec(substr($string, $i, 2));}$crc 0xFFFF;$polynomial 0xA001; // This is the polynomial x^16 x^15 x^2 1fo…...
2025年计算机毕业设计题目参考
今年最新计算机毕业设计题目参考 以下可以参考 springboot洗衣店订单管理系统 springboot美发门店管理系统 springboot课程答疑系统 springboot师生共评的作业管理系统 springboot平台的医疗病历交互系统 springboot购物推荐网站的设计与实现 springboot知识管理系统 springbo…...
ERP、CRM、SRM、PLM、HRM、OA……都是啥意思?
经常会听说一些奇怪的系统或平台名称,例如ERP、CRM、SRM、PLM、HRM、OA等。 这些系统,都是干啥用的? █ ERP(企业资源计划) 英文全称:Enterprise Resource Planning 定义:由美国Gartner Gro…...
Jmeter分布式、测试报告、并发数计算、插件添加方式、常用图表
Jmeter分布式 应用场景 当单个测试机无法模拟用户要求的业务场景时,可以使用多台测试机进行模拟,就是Jmeter的分布 式测试。 Jmeter分布式执行原理 Jmeter分布测试时,选择其中一台作为控制机(Controller),…...
3D三维模型展示上传VR全景创建H5开源版开发
3D三维模型展示上传VR全景创建H5开源版开发 新增三级分类(项目分类、项目、默认场景) 新增热点 前台创建项目、场景 场景跳转、提示信息 新增热点图标选择 新增预览场景是显示关联场景 新增3D模型展示功能 当然可以!以下是一个关于3D三维模…...
js中!emailPattern.test(email) 的test是什么意思
test 是 JavaScript 正则表达式(RegExp)对象的方法之一,用于测试一个字符串是否与正则表达式匹配。正则表达式是一种用于匹配字符串的模式,通常用于验证输入数据、查找和替换文本等。 使用 test 方法 test 方法语法如下…...
半监督医学图像分割:基于对抗一致性学习和动态卷积网络的方法| 文献速递-深度学习结合医疗影像疾病诊断与病灶分割
Title 题目 Semi-Supervised Medical Image Segmentation Using Adversarial Consistency Learning and Dynamic Convolution Network 半监督医学图像分割:基于对抗一致性学习和动态卷积网络的方法 01 文献速递介绍 医学图像分割在计算辅助诊断和治疗研究中扮演…...
Scikit-Learn支持向量机回归
Scikit-Learn支持向量机回归 1、支持向量机回归1.1、最大间隔与SVM的分类1.2、软间隔最大化1.3、支持向量机回归1.4、支持向量机回归的优缺点2、Scikit-Learn支持向量机回归2.1、Scikit-Learn支持向量机回归API2.2、支持向量机回归初体验2.3、支持向量机回归实践(加州房价预测…...
ElasticSearch的桶聚合
桶聚合 在前面几篇博客中介绍的聚合指标是指符合条件的文档字段的聚合,有时还需要根据某些维度进行聚合。例如在搜索酒店时,按照城市、是否满房、标签和创建时间等维度统计酒店的平均价格。这些字段统称为“桶”,在同一维度内有一个或者多个桶。例如城市桶,有“北京”、“天…...
vue引入aos.js实现滚动动画
aos.js官方网站:http://michalsnik.github.io/aos/ aos.js介绍 AOS (Animate on Scroll) 是一个轻量级的JavaScript库,用于实现当页面元素随着用户滚动进入可视区域时触发动画效果。它不需要依赖 jQuery,可以很容易地与各种Web开发框架&#…...
python+selenium之点击元素报错:‘NoneType‘ object has no attribute ‘click‘
今日遇到一个很奇怪的问题 case1:当使用顺序结构直接从登录到点击页面菜单,则可以正常点击菜单 case2:若把登录分离开,采用封装的方法点击菜单则会提示:‘NoneType’ object has no attribute ‘click’ 具体页面如下,…...
Web 品质国际化
Web 品质国际化 随着互联网的普及和全球化的推进,Web品质国际化已成为现代企业发展的必然趋势。Web品质国际化不仅仅是网站的多语言支持,更是一种全面的文化、技术和市场适应性的体现。本文将探讨Web品质国际化的概念、重要性以及实施策略。 一、Web品质国际化的概念 Web品…...
绿色免费离线版JS加密混淆工具 - 支持全景VR加密, 小程序js加密, H5网站加密
自从我们推出在线版的免费JS加密混淆工具以来,受到了广大用户的热烈欢迎。特别是全景开发人员,他们使用该工具加密VR插件的JS代码, 添加域名锁等,都非常有效地保护了插件的代码资源。 最近,我们收到了许多用户的反馈,…...
文心一言 VS 讯飞星火 VS chatgpt (284)-- 算法导论21.2 2题
二、对定理 21.1 的整体证明进行改造,得到使用链表表示和加权合并启发式策略下的 MAKE-SET 和 FIND-SET 的摊还时间上界为 O(1),以及 UNION 的摊还时间上界为 O(lgn)。如果要写代码,请用go语言。 文心一言: 在Go语言中实现使用链…...
计算机组成原理网课笔记2
存储系统基本概念...
C++ | Leetcode C++题解之第143题重排链表
题目: 题解: class Solution { public:void reorderList(ListNode* head) {if (head nullptr) {return;}ListNode* mid middleNode(head);ListNode* l1 head;ListNode* l2 mid->next;mid->next nullptr;l2 reverseList(l2);mergeList(l1, l…...
手写一个JSON可视化工具
前言 JSON 平时大家都会用到,都不陌生,今天就一起来实现一个 JSON 的可视化工具。 大概长成下面的样子: 树展示 相比于现有的一些 JSON 格式化工具,我们今天制作的这个小工具会把 JSON 转为树去表示。其中: 橙色标…...
洁盟超声波清洗机怎么样?2024爆款机型声波清洗机测评、一篇看懂
随着现在近视率的逐年上升,戴眼镜的人群越来越多!当然他们也在面临着一个眼镜清洗的问题!因为长期佩戴眼镜,镜框还有镜片上面都是会积累灰尘、油污、污垢以及细菌,脏脏的不仅令眼镜不美观,同时在长期的佩戴…...
react 自定义鼠标右键点击事件
功能:鼠标右键点击节点时,出现“复制”功能,点击其他部位,隐藏“复制”;鼠标右键事件的文案,始终在鼠标点击位置的右下方;点击复制,提示复制成功 效果图: 代码࿱…...
make V=1 分析
文章目录 make V1 make V1 # 顶层 Makefile 580 -include include/config/auto.conf 584 -include include/config/auto.conf.cmd ...... 593 include/config/%.conf: $(KCONFIG_CONFIG) include/config/auto.conf.cmd 594 $(Q)$(MAKE) -f $(srctree)/Makefile syncconfig 595…...
【Hi3519DV500】SD卡64G正常识别,16G和32G识别失败,报告警 mmc1: error -110 whilst initialising SD card
目录 环境 问题 定位和解决 设备树文件层次关系与覆盖原则 解决方案 方案一:修改环境变量(推荐) 方案二:修改设备树 方案三:修改硬件支持 环境 Hi3519DV500开发板 参考文档:鸿鸥派 HongOU PI V2.…...
4步攻克企业级Web表单开发:Dify工作流可视化实战指南
4步攻克企业级Web表单开发:Dify工作流可视化实战指南 【免费下载链接】Awesome-Dify-Workflow 分享一些好用的 Dify DSL 工作流程,自用、学习两相宜。 Sharing some Dify workflows. 项目地址: https://gitcode.com/GitHub_Trending/aw/Awesome-Dify-W…...
OpenClaw数据可视化:Qwen3.5-4B-Claude分析并绘制图表
OpenClaw数据可视化:Qwen3.5-4B-Claude分析并绘制图表 1. 为什么需要AI辅助的数据可视化 作为一个经常需要处理数据的开发者,我过去常常陷入这样的困境:花几个小时清洗和分析数据后,却在最后一步——可视化呈现上卡壳。该用折线…...
用PyTorch复现掌纹识别顶会论文:从VGG16到ResNet152的模型蒸馏踩坑实录
从VGG16到ResNet152:掌纹识别模型蒸馏实战中的关键挑战与解决方案 掌纹识别作为生物特征识别领域的重要分支,近年来在深度学习技术的推动下取得了显著进展。然而,当我们将论文中的理论模型转化为实际可运行的代码时,往往会遇到一系…...
5大技术维度精通ABC系统:数字电路设计的逻辑综合与形式验证实践指南
5大技术维度精通ABC系统:数字电路设计的逻辑综合与形式验证实践指南 【免费下载链接】abc ABC: System for Sequential Logic Synthesis and Formal Verification 项目地址: https://gitcode.com/gh_mirrors/ab/abc ABC系统(Sequential Logic Syn…...
终极Mermaid在线编辑器指南:3分钟学会专业图表制作
终极Mermaid在线编辑器指南:3分钟学会专业图表制作 【免费下载链接】mermaid-live-editor Edit, preview and share mermaid charts/diagrams. New implementation of the live editor. 项目地址: https://gitcode.com/GitHub_Trending/me/mermaid-live-editor …...
HY-Motion 1.0效果对比:相比MotionDiffuse在动作连贯性上提升35%
HY-Motion 1.0效果对比:相比MotionDiffuse在动作连贯性上提升35% 1. 模型概述 HY-Motion 1.0是基于流匹配技术的3D动作生成大模型,代表了文本到3D动作生成领域的最新突破。这个模型系列采用了Diffusion Transformer(DiT)和流匹配…...
Python:图解 NumPy
NumPy 是 Python 中最受欢迎的第三方库之一。本文将通过图示和更具实践性的方式介绍其使用方法,使你能够通过直观理解来加深记忆。一、导入 NumPyimport numpy as np二、NumPy 数组的创建NumPy 支持从列表、元组、字符串、缓冲区、迭代器等多种数据来源创建数组。1、…...
VS Code远程开发必备:3分钟搞定SSH免密登录(附常见失败排查)
VS Code远程开发极简指南:SSH免密登录全流程与深度排错 每次连接远程服务器都要输入密码?VS Code的Remote-SSH插件虽然强大,但默认配置下的频繁密码验证确实影响开发效率。本文将带你用3分钟完成密钥对配置,彻底告别密码输入&…...
DocSys文件管理系统实战:5分钟搞定Java版Web文件管理平台搭建
DocSys文件管理系统实战:5分钟搞定Java版Web文件管理平台搭建 在数字化转型浪潮中,企业文档管理正面临前所未有的挑战。传统FTP服务器权限粗放,云存储方案又存在数据主权顾虑,而自建系统往往需要投入大量开发资源。DocSys作为一款…...
