From 329034f27d340090c50529607b98c8eb9400a3ca Mon Sep 17 00:00:00 2001 From: whyclj <1525436766@qq.com> Date: 星期二, 21 七月 2020 11:45:33 +0800 Subject: [PATCH] 修改解析数据 --- src/com/dev/base/data/Dynamicload_inf.java | 112 ++++++++++++++++++++++++++++++++----------------------- 1 files changed, 65 insertions(+), 47 deletions(-) diff --git a/src/com/dev/base/data/Dynamicload_inf.java b/src/com/dev/base/data/Dynamicload_inf.java index dfd5243..3fa2af6 100644 --- a/src/com/dev/base/data/Dynamicload_inf.java +++ b/src/com/dev/base/data/Dynamicload_inf.java @@ -17,32 +17,34 @@ public Dynamicload_control control; public Dynamicload_state state; - //解析反馈数据信息 + //解析反馈数据信息[4013-4030] public boolean putReadIBackByteBuffer(ByteBuffer bf) { ByteBuffer tmpbf = bf; - int datacount = ComBase.changeShortToInt(bf.getShort()); - if(datacount < 2) { + int datacount = ComBase.changeByteToInt(bf.get()); + if(datacount < 3) { return false; } - - state.react_overtem = ComBase.changeShortToInt(bf.getShort()); //电抗超温4013 - state.water_overtem = ComBase.changeShortToInt(bf.getShort()); //冷却水超温4014 - state.water_level_low = ComBase.changeShortToInt(bf.getShort()); //冷却水液位低4015 - state.water_pressure_high = ComBase.changeShortToInt(bf.getShort()); //冷却水压高4016 - int backup1 = ComBase.changeShortToInt(bf.getShort()); //备用4017 - int backup2 = ComBase.changeShortToInt(bf.getShort()); //备用4018 - int backup3 = ComBase.changeShortToInt(bf.getShort()); //备用4019 - button.FZ_fw1 = ComBase.changeShortToInt(bf.getShort()); //按钮1反馈4020 - button.FZ_fw2 = ComBase.changeShortToInt(bf.getShort()); //按钮2反馈4021 - button.FZ_fw3 = ComBase.changeShortToInt(bf.getShort()); //按钮3反馈4022 - button.FZ_fw4 = ComBase.changeShortToInt(bf.getShort()); //按钮4反馈4023 - button.FZ_fw5 = ComBase.changeShortToInt(bf.getShort()); //按钮5反馈4024 - button.FZ_fw6 = ComBase.changeShortToInt(bf.getShort()); //按钮6反馈4025 - button.FZ_fw7 = ComBase.changeShortToInt(bf.getShort()); //按钮7反馈4026 - button.FZ_fw8 = ComBase.changeShortToInt(bf.getShort()); //按钮8反馈4027 - button.FZ_fw9 = ComBase.changeShortToInt(bf.getShort()); //按钮9反馈4028 - button.FZ_fw10 = ComBase.changeShortToInt(bf.getShort()); //按钮10反馈4029 - button.FZ_fw11 = ComBase.changeShortToInt(bf.getShort()); //按钮11反馈4030 + int code = ComBase.changeByteToInt(bf.get()); + state.react_overtem = (code & ComBase.my_power_2(0)); //电抗超温4013 + state.water_overtem = (code & ComBase.my_power_2(1)); //冷却水超温4014 + state.water_level_low = (code & ComBase.my_power_2(2)); //冷却水液位低4015 + state.water_pressure_high = (code & ComBase.my_power_2(3)); //冷却水压高4016 + int backup1 = (code & ComBase.my_power_2(4)); //备用4017 + int backup2 = (code & ComBase.my_power_2(5)); //备用4018 + int backup3 = (code & ComBase.my_power_2(6)); //备用4019 + button.FZ_fw1 = (code & ComBase.my_power_2(7)); //按钮1反馈4020 + code = ComBase.changeByteToInt(bf.get()); + button.FZ_fw2 = (code & ComBase.my_power_2(0)); //按钮2反馈4021 + button.FZ_fw3 = (code & ComBase.my_power_2(1)); //按钮3反馈4022 + button.FZ_fw4 = (code & ComBase.my_power_2(2)); //按钮4反馈4023 + button.FZ_fw5 = (code & ComBase.my_power_2(3)); //按钮5反馈4024 + button.FZ_fw6 = (code & ComBase.my_power_2(4)); //按钮6反馈4025 + button.FZ_fw7 = (code & ComBase.my_power_2(5)); //按钮7反馈4026 + button.FZ_fw8 = (code & ComBase.my_power_2(6)); //按钮8反馈4027 + button.FZ_fw9 = (code & ComBase.my_power_2(7)); //按钮9反馈4028 + code = ComBase.changeByteToInt(bf.get()); + button.FZ_fw10 = (code & ComBase.my_power_2(0)); //按钮10反馈4029 + button.FZ_fw11 = (code & ComBase.my_power_2(1)); //按钮11反馈4030 return true; } @@ -103,36 +105,52 @@ //读取M区控制控制节点的状态[0040-0160] public boolean putReadMControlStateByteBuffer(ByteBuffer bf) { ByteBuffer tmpbf = bf; - int datacount = ComBase.changeShortToInt(bf.getShort()); - if(datacount < 242) { + int datacount = ComBase.changeByteToInt(bf.get()); //字节个数 + if(datacount < 16) { //121寄存器 return false; } - state.local_control = ComBase.changeShortToInt(bf.getShort()); //就地控制 0040 - state.back_control = ComBase.changeShortToInt(bf.getShort()); //后台控制 0041 - state.central_control = ComBase.changeShortToInt(bf.getShort()); //中控控制 0042 - - for(int i = 0;i<37;i++) { - int backup = ComBase.changeShortToInt(bf.getShort()); - } - button.FZ_b1 = ComBase.changeShortToInt(bf.getShort()); //FZ按钮1 0080 - button.FZ_b2 = ComBase.changeShortToInt(bf.getShort()); //FZ按钮2 0081 - button.FZ_b3 = ComBase.changeShortToInt(bf.getShort()); //FZ按钮3 0082 - button.FZ_b4 = ComBase.changeShortToInt(bf.getShort()); //FZ按钮4 0083 - button.FZ_b5 = ComBase.changeShortToInt(bf.getShort()); //FZ按钮5 0084 - button.FZ_b6 = ComBase.changeShortToInt(bf.getShort()); //FZ按钮6 0085 - button.FZ_b7 = ComBase.changeShortToInt(bf.getShort()); //FZ按钮7 0086 - button.FZ_b8 = ComBase.changeShortToInt(bf.getShort()); //FZ按钮8 0087 - button.FZ_b9 = ComBase.changeShortToInt(bf.getShort()); //FZ按钮9 0088 - button.FZ_b10 = ComBase.changeShortToInt(bf.getShort()); //FZ按钮10 0089 - button.FZ_b11 = ComBase.changeShortToInt(bf.getShort()); //FZ按钮11 0090 - - for(int i = 0;i<69;i++) { - int backup = ComBase.changeShortToInt(bf.getShort()); - } - state.inter_volume_M200 = ComBase.changeShortToInt(bf.getShort()); //中间量M200 0160 + int code = ComBase.changeShortToInt(bf.get()); + state.local_control = (code & ComBase.my_power_2(0))>0?1:0; //40 + state.back_control = (code & ComBase.my_power_2(1))>0?1:0; //41 + state.central_control = (code & ComBase.my_power_2(2))>0?1:0; //42 + + + code = ComBase.changeShortToInt(bf.get()); //8 48 + + code = ComBase.changeShortToInt(bf.get()); // 56 + + code = ComBase.changeShortToInt(bf.get()); // 64 + + code = ComBase.changeShortToInt(bf.get()); // 72 + + code = ComBase.changeShortToInt(bf.get()); // 80 + button.FZ_b1 = (code & ComBase.my_power_2(0))>0?1:0; //80 //FZ按钮1 0080 + button.FZ_b2 = (code & ComBase.my_power_2(1))>0?1:0; //81 //FZ按钮2 0081 + button.FZ_b3 = (code & ComBase.my_power_2(2))>0?1:0; //FZ按钮3 0082 + button.FZ_b4 = (code & ComBase.my_power_2(3))>0?1:0; //FZ按钮4 0083 + button.FZ_b5 = (code & ComBase.my_power_2(4))>0?1:0; //FZ按钮5 0084 + button.FZ_b6 = (code & ComBase.my_power_2(5))>0?1:0; //FZ按钮6 0085 + button.FZ_b7 = (code & ComBase.my_power_2(6))>0?1:0; //FZ按钮7 0086 + button.FZ_b8 = (code & ComBase.my_power_2(7))>0?1:0; //FZ按钮8 0087 + code = ComBase.changeShortToInt(bf.get()); // 88 + button.FZ_b9 = (code & ComBase.my_power_2(0))>0?1:0; //FZ按钮9 0088 + button.FZ_b10 = (code & ComBase.my_power_2(1))>0?1:0; //FZ按钮10 0089 + button.FZ_b11 = (code & ComBase.my_power_2(2))>0?1:0; //FZ按钮11 0090 + code = ComBase.changeShortToInt(bf.get()); // 96 + code = ComBase.changeShortToInt(bf.get()); // 104 + code = ComBase.changeShortToInt(bf.get()); // 112 + code = ComBase.changeShortToInt(bf.get()); // 120 + code = ComBase.changeShortToInt(bf.get()); // 128 + code = ComBase.changeShortToInt(bf.get()); // 136 + code = ComBase.changeShortToInt(bf.get()); // 144 + code = ComBase.changeShortToInt(bf.get()); // 152 + + code = ComBase.changeShortToInt(bf.get()); + state.inter_volume_M200 = (code & ComBase.my_power_2(0)); //中间量M200 0160 return false; } + //读取V区控制控制节点的状态[0002-0018] public boolean putReadVBackByteBuffer(ByteBuffer bf) { ByteBuffer tmpbf = bf; -- Gitblit v1.9.1