交互协议格式: FrmHID ID SD Flen Cmd AllFlag ListLen List Data ChkSum
[ FrmHID ID SD Flen Cmd AllFlag ListLen List Data ChkSum ]
各数据说明如下:
FrmHID (1Byte): 帧头标志,固定为 0x81。
ID (1Byte): 目标地址,固定为 0x40。
SD (1Byte): 上位机地址,为任意值。 (设备回复命令必须与请求命令
是同一个值) 。
Flen (1Byte): 全帧的字节总数。
Cmd (1Byte): 命令值。参见“命令内容说明”
AllFlag (1Byte): 保留位,固定为 0xFF(为协议兼容性考虑,保留此位)
ListLen (1Byte): 保留位,固定为 0x01
List (1Byte): 请求命令标志。请求命令为 0x01。回复命令为 0x00。
Data (不确定): 命令数据区,由各命令分别定义。
ChkSum (1Byte): 为从 ID 开始到 ChkSum 前一字节的校验码, 采用与 CLT
规约相同的“异或”校验方式。
交互命令内容:
/// <summary>
/// 雕刻返回的命令类型
/// </summary>
public enum SealBackCMD
{
/// <summary>
/// 错误信息
/// </summary>
Error = 0x00,
/// <summary>
/// 返回 初始化激光器
/// </summary>
InitLaserBack = 0x11,
/// <summary>
/// 返回 发送封印号码
/// </summary>
SendCodeBack = 0x12,
/// <summary>
/// 返回 开始雕刻
/// </summary>
BeginCodeingBack = 0x13,
/// <summary>
/// 返回 取消雕刻(清除已发送的封印号)
/// </summary>
CancelCodeBack = 0x14,
/// <summary>
/// 返回 雕刻软件最大化
/// </summary>
WinMaxBack = 0x15,
/// <summary>
/// 返回 切换模版
/// </summary>
ChangeTemplateBack = 0x16,
/// <summary>
/// 返回 显示错误信息
/// </summary>
ShowErrorBack = 0x1f,
/// <summary>
/// 返回 显示红光边框
/// </summary>
DisplyRedBorder = 0x17
}
/// <summary>
/// 发送到雕刻机的命令类型
/// </summary>
public enum SealCMD
{
/// <summary>
/// 空状态
/// </summary>
No = 0x10,
/// <summary>
/// 错误信息
/// </summary>
Error = 0x00,
/// <summary>
/// 初始化激光器
/// </summary>
InitLaser = 0x01,
/// <summary>
/// 发送封印号码
/// </summary>
SendCode = 0x02,
/// <summary>
/// 开始雕刻
/// </summary>
BeginCodeing = 0x03,
/// <summary>
/// 取消雕刻(清除已发送的封印号)
/// </summary>
CancelCode = 0x04,
/// <summary>
/// 雕刻软件最大化
/// </summary>
WinMax = 0x05,
/// <summary>
/// 切换模版
/// </summary>
ChangeTemplate = 0x06,
/// <summary>
/// 显示错误信息
/// </summary>
ShowError = 0x0f,
/// <summary>
/// 显示红光边框
/// </summary>
DisplyRedBorder = 0x07
}
第一步: 切换模板(模板不切换可以包略这条命令)
软件发送命令: 81 40 21 0B 06 00 00 01 43 43 6D
[ FrmHID ID SD Flen Cmd AllFlag ListLen List Data ChkSum ]
81 40 21 0B 06 00 00 01 43 43 6D
命令解晰:
81 40 21 固定表头
0B 字节长度 11
06 切换模板命令
00 00 固定格式
01 请求命令 01
43 43 模板数据
6D 验证码
雕刻机回复命令: 81 40 21 0B 16 00 00 01 43 43 6D
[ FrmHID ID SD Flen Cmd AllFlag ListLen List Data ChkSum ]
81 40 21 0B 06 00 00 01 43 43 6D
命令解晰:
81 40 21 固定表头
0B 字节长度 11
16 切换模板命令成功
00 00 固定格式
01 回复命令 00
43 43 模板数据
6D 验证码
第二步: 设备初始化
软件发送命令: 81 40 21 0A 01 00 00 01 00 6B
[ FrmHID ID SD Flen Cmd AllFlag ListLen List Data ChkSum ]
81 40 21 0A 01 00 00 01 00 6B
命令解晰:
81 40 21 固定表头
0A 字节长度 10
01 设备初始化
00 00 固定格式
01 请求命令 01
00 数据
6B 验证码
雕刻机回复命令: 81 40 21 0B 11 00 00 00 01 6B
[ FrmHID ID SD Flen Cmd AllFlag ListLen List Data ChkSum ]
81 40 21 0A 11 00 00 00 01 6B
命令解晰:
81 40 21 固定表头
0A 字节长度 10
11 设备初始化成功
00 00 固定格式
00 回复命令 00
01 回复数据
6B 验证码
第三步: 发送雕刻数据内容
软件发送命令: 81 40 21 10 02 00 00 01 31 32 33 2C 34 35 36 59
[ FrmHID ID SD Flen Cmd AllFlag ListLen List Data ChkSum ]
81 40 21 10 02 00 00 01 31 32 33 2C 34 35 36 59
命令解晰:
81 40 21 固定表头
10 字节长度 16
02 设备初始化
00 00 固定格式
01 请求命令 01
31 32 33 2C 34 35 36 数据
59 验证码
雕刻机回复命令: 81 40 21 10 12 00 00 00 31 32 33 2C 34 35 36 59
[ FrmHID ID SD Flen Cmd AllFlag ListLen List Data ChkSum ]
81 40 21 10 12 00 00 00 31 32 33 2C 34 35 36 59
命令解晰:
81 40 21 固定表头
10 字节长度 16
11 设备初始化成功
00 00 固定格式
00 回复命令 00
31 32 33 2C 34 35 36 回复数据
59 验证码
第四步: 发送雕刻命令
软件发送命令: 81 40 21 0A 03 00 00 01 00 69
[ FrmHID ID SD Flen Cmd AllFlag ListLen List Data ChkSum ]
81 40 21 0A 03 00 00 01 00 69
命令解晰:
81 40 21 固定表头
0A 字节长度 10
02 打标命令
00 00 固定格式
01 请求命令 01
00 数据
69 验证码
雕刻机回复命令: 81 40 21 0A 13 00 00 00 01 69
[ FrmHID ID SD Flen Cmd AllFlag ListLen List Data ChkSum ]
81 40 21 0A 13 00 00 00 01 69
命令解晰:
81 40 21 固定表头
0A 字节长度 10
13 设备初始化成功
00 00 固定格式
00 回复命令 00
01 回复数据
69 验证码