1 Star 0 Fork 19

samble/SuperDebuger

forked from 比智科技/SuperDebuger 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
frmCheck.cs 3.34 KB
一键复制 编辑 原始数据 按行查看 历史
比智科技 提交于 2014-06-19 22:38 . 提交代码
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
/*---------------作者:Maximus Ye----------------------*/
/*---------------时间:2013年8月16日---------------*/
/*---------------邮箱:[email protected]*/
/*---------------QQ:275623749---------*/
/*本软件也耗费了我不少的时间和精力,希望各位同行们尊重个人劳动成果,
* 如果在此版本的基础上修改发布新的版本,请包含原作者信息(包括代码和UI界面相关信息),为中国的
* 开源事业做出一点贡献。*/
namespace LeafSoft
{
public partial class frmCheck : Form
{
public frmCheck()
{
InitializeComponent();
}
#region 校验码计算
/// <summary>
/// 校验和
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void MS_CheckSum_Click(object sender, EventArgs e)
{
Model.CMD cmd = txtContent.GetCMD();
if (cmd != null)
{
byte check = Lib.BytesCheck.GetXOR(cmd.Bytes);
txtContent.AppendText(Convert.ToString(check, 16).PadLeft(2, '0'));
}
}
/// <summary>
/// Modbus
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void MS_CRC16_Click(object sender, EventArgs e)
{
Model.CMD cmd = txtContent.GetCMD();
if (cmd != null)
{
AppendToContent(Lib.BytesCheck.GetCRC16(cmd.Bytes, false));
}
}
/// <summary>
/// 多项式CRC16 高位在前
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void MS_CRCPolyH_Click(object sender, EventArgs e)
{
Model.CMD cmd = txtContent.GetCMD();
if (cmd != null)
{
frmPoly fpoly = new frmPoly();
if (fpoly.ShowDialog() == DialogResult.OK)
{
AppendToContent(Lib.BytesCheck.GetCRC16ByPoly(cmd.Bytes, fpoly.Poly, true));
}
}
}
/// <summary>
/// 多项式CRC16 低位在前
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void MS_CRCPolyL_Click(object sender, EventArgs e)
{
Model.CMD cmd = txtContent.GetCMD();
if (cmd != null)
{
frmPoly fpoly = new frmPoly();
if (fpoly.ShowDialog() == DialogResult.OK)
{
AppendToContent(Lib.BytesCheck.GetCRC16ByPoly(cmd.Bytes, fpoly.Poly, false));
}
}
}
private void AppendToContent(byte[] check)
{
foreach (byte b in check)
{
txtContent.AppendText(string.Format("{0:X2}", b));
}
}
#endregion
private void CM_Clear_Click(object sender, EventArgs e)
{
txtContent.Clear();
}
private void MS_Copy_Click(object sender, EventArgs e)
{
Clipboard.SetDataObject(txtContent.Text);
}
}
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C#
1
https://gitee.com/Samlbe123/SuperDebuger.git
[email protected]:Samlbe123/SuperDebuger.git
Samlbe123
SuperDebuger
SuperDebuger
master

搜索帮助