From e407fcf19e50ed0972e7262d99da4b3a83d08706 Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期五, 11 十月 2024 17:08:23 +0800 Subject: [PATCH] 1、修改协议驱动RTU上行数据解析出错时,RTU上下行数据日志中的RTU地址不正确的bug; 2、83功能码上行数据测试main方法实现。 --- pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5C_Up.java | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5C_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5C_Up.java index ddbb100..71111b7 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5C_Up.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5C_Up.java @@ -3,7 +3,6 @@ import com.dy.common.mw.protocol.*; import com.dy.common.mw.protocol.p206V202404.*; -import com.dy.common.mw.protocol.p206V202404.parse.global.GlParse; import com.dy.common.mw.protocol.p206V202404.upVos.DataCd5CVo; import com.dy.common.util.ByteUtil; import org.apache.logging.log4j.LogManager; @@ -70,11 +69,12 @@ if(hasRecord == 1){ //鏈夎褰� List<DataCd5CVo> list = new ArrayList<>() ; - DataCd5CVo vo = this.doParseData(bs, index, bsLen, controllerType, projectNo) ; + index++ ; + DataCd5CVo vo = this.doParseData(bs, index, bsLen, dataCode, controllerType, projectNo) ; while(vo != null){ index += 16 ; list.add(vo) ; - vo = this.doParseData(bs, index, bsLen, controllerType, projectNo) ; + vo = this.doParseData(bs, index, bsLen, dataCode, controllerType, projectNo) ; } dV1.subData = list ; }else{ @@ -82,10 +82,10 @@ } } - private DataCd5CVo doParseData(byte[] bs, int index, int bsLen, String controllerType,Integer projectNo) throws Exception{ - //姣忔潯鏁版嵁鍗�39瀛楄妭 + private DataCd5CVo doParseData(byte[] bs, int index, int bsLen, String dataCode, String controllerType,Integer projectNo) throws Exception{ + //姣忔潯鏁版嵁鍗�16瀛楄妭 if(bsLen - index > 16){ - DataCd5CVo cdData = new DataCd5CVo() ; + DataCd5CVo cdData = new DataCd5CVo(CodeV202404.getCodeName(dataCode)) ; cdData.controllerType = controllerType ; cdData.projectNo = projectNo ; -- Gitblit v1.8.0