package com.dy.pipirrComCreator.p206V1; import com.dy.common.mw.protocol.p206V1.parse.global.GlCreate; import com.dy.common.util.ByteUtil; /** * @Author: liurunyu * @Date: 2025/5/7 8:42 * @Description */ public class P206V1Cd02 extends P206V1Cd { public static final String ComCode = "02" ; public String checkParams(String ...params){ return null ; } public String helpInfo() { return ComCode + "[Enter](心跳命令应答(链路维持报应答))" ; } /** * 构造命令数据(十六进制) * @return 字符串 * @throws Exception 异常 */ public String hex(String rtuAddr, String ...params) throws Exception { byte[] bytes = bs(rtuAddr, params) ; return ByteUtil.bytes2Hex(bytes, false) ; } /** * 构造命令数据(字节数组) * @return 字节数组 * @throws Exception 异常 */ public byte[] bs(String rtuAddr, String ...params) throws Exception { byte[] bytes = createHead(rtuAddr, ComCode, P206V1Cd.CTRL); byte[] bs = new byte[1] ; bs[0] = (byte)0xF2 ;//数据域: 1 个字节,F0 登录, F1 退出登录,F2 在线保持。 bytes = ByteUtil.bytesMerge(bytes, bs) ; GlCreate.createLen(bytes);//长度放字节数组中 byte[] bsTail = GlCreate.createCrcTail4P206(bytes) ;//CRC和尾叠加字节数组中 bytes = ByteUtil.bytesMerge(bytes, bsTail) ; return bytes ; } }