关于十六进制数据的CRC16校验码自写软件安装包

  • 十六进制数据的CRC16校验码(0XA001)自写软件
  • 链接与图片
  • 全部代码

十六进制数据的CRC16校验码(0XA001)自写软件

这里分享一个自己写的简单软件,是使用VS-2019,C#编程,最后打包成安装包,安装即可使用。

链接与图片

链接: WJX.

图片: 链接:https://pan.baidu.com/s/1KVjvZhjb3vjFFkWIsCYnJA
提取码:1234
复制这段内容后打开百度网盘手机App,操作更方便哦

居中的图片: !
软件界面如上

全部代码

代码片.

using ComponentFactory.Krypton.Toolkit;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using HslCommunication.Serial;//添加它的方法:右击工具--NuGet包管理--管理解决方案的NuGet程序包,搜索安装到本项目即可namespace Crc16Check
{public partial class Form1 : ComponentFactory.Krypton.Toolkit.KryptonForm{public Form1(){InitializeComponent();}public byte[] strToHexByte(string hexString0){string hexString = hexString0.Replace(" ", "");if ((hexString.Length % 2) != 0){hexString = hexString.Insert(0, 0.ToString()); //如果长度为奇,在开头补零}byte[] returnBytes = new byte[hexString.Length / 2];//byte[]数组for (int i = 0; i < returnBytes.Length; i++){returnBytes[i] = Convert.ToByte(hexString.Substring(i * 2, 2), 16);//每两个字符转byte,放入数组元素中。}return returnBytes;}public static byte[] CRC16b(byte[] data){byte[] returnVal = new byte[2];byte CRC16Lo, CRC16Hi, CL, CH, SaveHi, SaveLo;int i, Flag;CRC16Lo = 0xFF;CRC16Hi = 0xFF;CL = 0x01;CH = 0xA0;for (i = 0; i < data.Length; i++){CRC16Lo = (byte)(CRC16Lo ^ data[i]); //每一个数据与CRC寄存器进行异或for (Flag = 0; Flag <= 7; Flag++){SaveHi = CRC16Hi;SaveLo = CRC16Lo;CRC16Hi = (byte)(CRC16Hi >> 1); //高位右移一位CRC16Lo = (byte)(CRC16Lo >> 1); //低位右移一位if ((SaveHi & 0x01) == 0x01) //如果高位字节最后一位为{CRC16Lo = (byte)(CRC16Lo | 0x80); //则低位字节右移后前面补 否则自动补0}if ((SaveLo & 0x01) == 0x01) //如果LSB为1,则与多项式码进行异或{CRC16Hi = (byte)(CRC16Hi ^ CH);CRC16Lo = (byte)(CRC16Lo ^ CL);}}}returnVal[0] = CRC16Hi; //CRC高位returnVal[1] = CRC16Lo; //CRC低位return returnVal;}private void kryptonButton1_Click(object sender, EventArgs e){try{string s = txtdata.Text.Trim();byte[] b0 = strToHexByte(s);byte[] result = CRC16b(b0);string strcrs = HslCommunication.BasicFramework.SoftBasic.ByteToHexString(result);txtCRC16.Text = strcrs;}catch {MessageBox.Show("输入十六进制数字!","提示",MessageBoxButtons.YesNo,MessageBoxIcon.Warning);}}}}

十六进制数据的CRC16校验码自写软件相关推荐

  1. python crc-16 crc-16校验码 crc-16校验算法 ppp(MAC)帧检验序列FCS

    python crc-16 crc-16校验码 crc-16校验算法 ppp(MAC)帧检验序列FCS 想弄明白这里要看多几遍,配合下面的例子能更快理解. 第一.CRC-16校验码计算方法: 常用查表 ...

  2. PHP CRC16 校验码的算法怎么使用

    PHP CRC16 校验码的算法如何使用 最近用到CRC16, 我现在就是要把 010301180001 算出CRC16的校验码,通过其他工具,可以得到 校验码是 05F1 最后完整的代码就是 010 ...

  3. 【计算机网络】数据链路层 : 差错控制 ( 纠错编码 | 海明码 | “海明码“ 原理 | “海明码“ 工作流程 | 确定校验啊位数 | 确定校验码和数据位置 | 求校验码值 | 检错纠错 )★

    文章目录 一. "海明码" 工作原理 二. "海明码" 工作流程 三. 确定校验码位数 四. 确定校验码和数据位置 0. 确定校验码位置 1. 引入二进制位 2 ...

  4. php crc16校验算法,PHP串口通信中计算crc16校验码

    最近使用PHP开发串口通信业务,在发送485Modbus命令时,基本都要计算CRC16校验码.网上搜索了很多文章,很多都计算的不对.本文记录搜索到的正确的计算方法. 代码如下:/** * crc16计 ...

  5. java计算CRC16校验码

    java计算校验码的一个公式,亲测可行有效 /*** 计算CRC16校验码** @param data 需要校验的字符串* @return 校验码*/public static String getC ...

  6. CRC校验工具 校验码自动生成软件支持十几种CRC计算方式

    CRC校验工具 校验码自动生成软件支持十几种CRC计算方式,包括MODBUS协议的CRC-16校验,CRC4.CRC5.CRC6.CRC7.CRC8.CRC16等21种算法,见图示.id=620738 ...

  7. 得到CRC16校验码的常见几个标准的算法及C语言实现

    CRC16常见的标准有以下几种,被用在各个规范中,其算法原理基本一致,就是在数据的输入和输出有所差异,下边把这些标准的差异列出,并给出C语言的算法实现. CRC16_CCITT:多项式x16+x12+ ...

  8. CRC16校验码生成原理

    CRC16-Modbus 生成多项式为CRC-16 : X16 + X15 + X2 + 1  对应 0x8005 移位寄存器初始化值为0xFFFF 算法说明: 1) 设置CRC寄存器初始值0xFFF ...

  9. CRC-16/X25、CRC-16/CCITT_FALSE、CRC-16/XMODEM校验码

    这几天做北斗定位设备的协议解析,需要进行CRC-16的校验,设备使用的参数模型是CRC-16/X25,本人使用的是Java语言,网上没找到关于CRC-16/X25 的Java版本,都是C语言的多.转换 ...

最新文章

  1. Opencv cv2.KalmanFilter 鼠标跟踪
  2. Python天气预报数据获取脚本
  3. Tomcat中配置多个端口
  4. 用SQL语句添加删除修改字段、一些表与字段的基本操作、数据库备份等
  5. adb.exe可能被其他程序关闭_木工中央除尘设备系统正式运行的操作程序
  6. C++11:右值引用和转移赋值
  7. 使用android开发移动学习平台_移动学习平台有几种开发方法,你造吗?
  8. “鬼才”论文致谢刷屏!感谢我导“似导非导”的指导……
  9. python excel填充颜色_python实现xlwt xlrd 指定条件给excel行添加颜色
  10. 去中心化产品从趋势上的“确定性”到产品设计思路
  11. ZKP+图片授权——PhotoProof:proofs of permissible photo edits
  12. 如何提升程序员的非技术才能
  13. 【LabVIEW小技巧】LabVIEW自定义系统按钮时图片项设置说明
  14. 植树问题(python)
  15. 基于MSP430F5529的后驱四轮小车
  16. 域控制器故障恢复手记
  17. Mozilla准备推付费版Firefox浏览器
  18. winform响应时间最长是多少分钟_漫威电影女性角色出场统计:谁出场时间最长?谁出场次数最多?...
  19. 安全扫描:敏感数据加密传输和保存(国密)
  20. redis主从、哨兵、集群概念

热门文章

  1. Laravel OAuth2 (二) ---配置与数据库设计
  2. logback日志使用记录
  3. gcc 编译时中-L -l -Wall的含义
  4. SpringBoot实现Java高并发秒杀系统之Service层开发(二)
  5. VS 编译出现,LNK2005 连接错误解决办法
  6. Comparison method violates its general contract 出现原因和解决方法
  7. Xilinx的FPGA手册中关于如何Booting RFSoCsZynq
  8. Facebook将对视频进行人物识别及身份标注
  9. linux centos如何开启远程桌面,CentOS配置远程桌面
  10. Word文档粘贴的表格中文字有淡灰色背景的去除方法