| | |
| | | String upCode = null ; |
| | | try{ |
| | | CommonV1 cp = new CommonV1() ; |
| | | cp.checkHead(upBuffer) ; |
| | | Boolean p206TrueUgFalse = cp.protocolType_p206TrueUgFalse(upBuffer) ; |
| | | //到此处了,p206TrueUgFalse不可能为空了 |
| | | cp.checkTail(upBuffer) ; |
| | | String crcStr = cp.checkCrc_str(upBuffer) ; |
| | | String crcStr = cp.checkCrc_str(upBuffer, p206TrueUgFalse) ; |
| | | if(crcStr != null){ |
| | | return new MidResult[]{(new MidResultError(ProtocolConstantV206V1.protocolName, rtuAddr, "严重错误,上行数据CRC检查失败," + crcStr, null))} ; |
| | | } |
| | | rtuAddr = cp.parseRtuAddr(upBuffer) ; |
| | | upCode = cp.parseCode(upBuffer) ; |
| | | upCode = cp.parseCode(upBuffer, p206TrueUgFalse) ; |
| | | if(upCode == null){ |
| | | return new MidResult[]{(new MidResultError(ProtocolConstantV206V1.protocolName, rtuAddr, "严重错误,未能从上行数据中解析出功能码!", null))} ; |
| | | } |
| | | //Integer dataLen = cp.parseFrameLen(upBuffer) ; |
| | | Data upData = new Data() ; |
| | | upData.setRtuAddr(rtuAddr) ; |
| | | upData.setProtocol(ProtocolConstantV206V1.protocolName); |
| | |
| | | upData.setSubData(dV1) ; |
| | | |
| | | this.upCpParams.setValue(ProtocolConstantV206V1.protocolName, |
| | | ProtocolConstantV206V1.protocolVer, |
| | | rtuAddr, |
| | | upCode, |
| | | upHex, |
| | |
| | | public void callback(Boolean flag) { |
| | | reportOrResponse_trueOrFalse = flag ; |
| | | rtuAddrInData = dV1.getRtuAddr() ; |
| | | } |
| | | @Override |
| | | public void notify(NotifyInfo ...infos) { |
| | | } |
| | | }); |
| | | } |
| | |
| | | this.downCpParams.setValue( |
| | | RtuResultSendWebUrl, |
| | | ProtocolConstantV206V1.protocolName, |
| | | command.protocolVersion==null?ProtocolConstantV206V1.protocolVer:command.protocolVersion, |
| | | rtuAddr, |
| | | command.getId(), |
| | | commandCode, |