From fbd4cf5aeb4274938c12030e5d235c65c20c19c3 Mon Sep 17 00:00:00 2001 From: wuzeyu <1223318623@qq.com> Date: 星期三, 15 五月 2024 16:36:25 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlCreate.java | 54 +++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 47 insertions(+), 7 deletions(-) diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlCreate.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlCreate.java index f428bde..9a0db38 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlCreate.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlCreate.java @@ -32,7 +32,7 @@ index++ ; GlCreate.createRtuAddr(rtuAddr, bsHead, index); - index += 7 ; + index += 8 ; ByteUtil.hex2Bytes(commandCode, bsHead, index) ; return bsHead ; @@ -95,12 +95,12 @@ } public static void createDt(byte[] bs, int index) throws Exception { - bs[index] = Byte.parseByte(DateTime.ss()) ; - bs[index + 1] = Byte.parseByte(DateTime.mm()) ; - bs[index + 2] = Byte.parseByte(DateTime.HH()) ; - bs[index + 3] = Byte.parseByte(DateTime.dd()) ; - bs[index + 4] = Byte.parseByte(DateTime.MM()) ; - bs[index + 5] = Byte.parseByte(DateTime.yy()) ; + ByteUtil.string2BCD_BE(bs, DateTime.ss(), index) ; ; + ByteUtil.string2BCD_BE(bs, DateTime.mm(), index + 1) ; + ByteUtil.string2BCD_BE(bs, DateTime.HH(), index + 2) ; + ByteUtil.string2BCD_BE(bs, DateTime.dd(), index + 3) ; + ByteUtil.string2BCD_BE(bs, DateTime.MM(), index + 4) ; + ByteUtil.string2BCD_BE(bs, DateTime.yy(), index + 5) ; } @@ -110,19 +110,52 @@ } public static void createTp(byte[] bs, int index) throws Exception { + ByteUtil.string2BCD_BE(bs, DateTime.ss(), index) ; ; + ByteUtil.string2BCD_BE(bs, DateTime.mm(), index + 1) ; + ByteUtil.string2BCD_BE(bs, DateTime.HH(), index + 2) ; + ByteUtil.string2BCD_BE(bs, DateTime.dd(), index + 3) ; + byte month = Byte.parseByte(DateTime.MM()) ; + byte week = (byte)(DateTime.week_Int().byteValue() << 1) ; + String month1 = "0" ; + String month2 = "0" ; + if(month < 10){ + month1 = "" + month ; + }else{ + if(month == 10){ + month1 = "0" ; + }else if(month == 11){ + month1 = "1" ; + }else if(month == 12){ + month1 = "2" ; + } + week = (byte)(week | 0x01) ; + } + month2 = "" + week ; + + ByteUtil.string2BCD_BE(bs, month2 + month1, index + 4) ; + ByteUtil.string2BCD_BE(bs, DateTime.yy(), index + 5) ; + + /* bs[index] = Byte.parseByte(DateTime.ss()) ; bs[index + 1] = Byte.parseByte(DateTime.mm()) ; bs[index + 2] = Byte.parseByte(DateTime.HH()) ; bs[index + 3] = Byte.parseByte(DateTime.dd()) ; bs[index + 4] = (byte)(DateTime.week_Int().byteValue() << 5 | Byte.parseByte(DateTime.MM())) ; bs[index + 5] = Byte.parseByte(DateTime.yy()) ; + */ } public static void createS2D(byte[] bs, int index) throws Exception { + ByteUtil.string2BCD_BE(bs, DateTime.ss(), index) ; ; + ByteUtil.string2BCD_BE(bs, DateTime.mm(), index + 1) ; + ByteUtil.string2BCD_BE(bs, DateTime.HH(), index + 2) ; + ByteUtil.string2BCD_BE(bs, DateTime.dd(), index + 3) ; + /* bs[index] = Byte.parseByte(DateTime.ss()) ; bs[index + 1] = Byte.parseByte(DateTime.mm()) ; bs[index + 2] = Byte.parseByte(DateTime.HH()) ; bs[index + 3] = Byte.parseByte(DateTime.dd()) ; + */ } public static void createLen(byte[] bsNoTail) throws Exception { @@ -137,4 +170,11 @@ bytes[1] = ProtocolConstantV206V1_0_0.P_Tail_Byte ; return bytes ; } + + public static void main(String[] args)throws Exception{ + byte[] bs = new byte[6] ; + createTp(bs, 0) ; + String hex = ByteUtil.bytes2Hex(bs,true, 0, 6) ; + System.out.println(hex); + } } -- Gitblit v1.8.0